====== Composio ====== **Composio** is a developer-first tool integration platform that connects AI agents to over 250 pre-built integrations across 900+ SaaS applications. It handles the hardest parts of agent-tool interaction — managed authentication (OAuth, API keys), action execution, error handling, and observability — so developers can focus on agent logic. Compatible with OpenAI, LangChain, CrewAI, AutoGen, and LlamaIndex, Composio provides a unified API and MCP gateway for production-grade agent tooling. ===== Architecture ===== Composio's architecture is built on three pillars: * **Tool Catalog** — A repository of 10,000+ pre-built, agent-optimized actions across 250+ toolkits (GitHub, Slack, Gmail, Salesforce, Jira, etc.). Actions are curated for LLM consumption with clear descriptions and parameter schemas. * **Unified API / MCP Gateway** — A standardized interface that exposes tools via REST API or Model Context Protocol (MCP). Agents fetch available tools by toolkit name and execute actions through a single endpoint. * **AgentAuth** — Managed authentication service that handles per-user OAuth flows, token refresh, and credential storage. Entity IDs link executions to specific user credentials, enabling secure multi-tenant deployments. ===== Key Features ===== == Managed Authentication == Composio's **AgentAuth** eliminates the need to build OAuth flows. Connect apps through the Composio dashboard or API, and the platform manages: * OAuth 2.0 authorization code flows * Token refresh and rotation * Per-user credential isolation via entity IDs * Support for API keys, bearer tokens, and custom auth schemes == Action Execution == Execute any tool action with a single API call: * ''client.actions.execute()'' for direct programmatic access * Framework-specific tool providers for seamless agent integration * Built-in error handling, retries, and rate limiting * Execution logging and observability dashboard == Framework Compatibility == Composio integrates with all major agent frameworks: ^ Framework ^ Integration Method ^ | OpenAI | ''hostedMcpTool()'' with Composio MCP endpoint | | LangChain | Single-line tool injection from Composio client | | CrewAI | ''ComposioToolSet'' provider for crew agents | | AutoGen | Per-agent tool distribution with separate auth | | LlamaIndex | Direct tool injection for query engines | == Entity Management == Entities (via ''entity_id'') tie tools and credentials to specific users: * Each user gets isolated OAuth connections * Multi-agent systems can operate on behalf of different users * Audit trails track which entity performed each action == Triggers == Event-driven triggers listen for changes in connected apps: * New GitHub issue, Slack message, or email arrival * Trigger agent workflows automatically * Webhook-based real-time notifications ===== Code Example ===== from composio_openai import ComposioToolSet, Action from openai import OpenAI # Initialize clients openai_client = OpenAI() composio_toolset = ComposioToolSet() # Get GitHub tools for the agent tools = composio_toolset.get_tools( actions=[Action.GITHUB_CREATE_ISSUE, Action.GITHUB_LIST_REPOS] ) # Create an assistant with Composio tools assistant = openai_client.beta.assistants.create( name="DevOps Agent", instructions="You help manage GitHub repositories and issues.", model="gpt-4o", tools=tools, ) # Create a thread and run thread = openai_client.beta.threads.create() message = openai_client.beta.threads.messages.create( thread_id=thread.id, role="user", content="Create a GitHub issue in 'my-org/my-repo' titled 'Fix login bug' with a description of the authentication timeout problem." ) run = openai_client.beta.threads.runs.create( thread_id=thread.id, assistant_id=assistant.id, ) # Composio handles the tool execution and GitHub API auth result = composio_toolset.wait_and_handle_assistant_tool_calls( client=openai_client, run=run, thread=thread, ) print(result) ===== Architecture Diagram ===== graph TD A["OpenAI Agent"] --> D B["LangChain Agent"] --> D C["CrewAI Agent"] --> D D["Composio Unified API / MCP Gateway"] --> E["AgentAuth (OAuth)"] D --> F["Action Executor"] D --> G["Triggers Engine"] E --> H["250+ Integrations"] F --> H G --> H H --- I["GitHub"] H --- J["Slack"] H --- K["Gmail"] ===== References ===== * [[https://github.com/ComposioHQ/composio|Composio GitHub Repository]] * [[https://docs.composio.dev/|Composio Documentation]] * [[https://composio.dev/|Composio Website]] * [[https://composio.dev/content/ai-agent-integration-platforms|AI Agent Integration Platforms Comparison]] ===== See Also ===== * [[browser_use|Browser-Use]] — AI browser automation for agents * [[firecrawl|Firecrawl]] — Web scraping API for LLM-ready data * [[e2b|E2B]] — Sandboxed code execution environments * [[autogen_studio|AutoGen Studio]] — Visual multi-agent workflow builder