====== 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