composio is a free, open source frameworks & platforms project written in TypeScript and released under MIT. It has 30,291 GitHub stars, 4,816 forks and 88 open issues, and was last pushed 5 hours ago. On this registry it ranks #19 of 66 tracked projects in Frameworks & Platforms, with 5 head-to-head comparisons available.

What is composio?

Composio is an MIT-licensed agent toolkit platform, distributed as TypeScript and Python SDKs, that gives AI agents more than 1,000 pre-authenticated toolkits, per-user sessions, authentication, triggers, and a sandbox for turning intent into action across real applications.

What it is

The Composio SDK monorepo contains the TypeScript SDK @composio/core, the Python SDK composio, the composio CLI, and provider adapters for OpenAI Agents, Claude Agent SDK, Vercel AI SDK, and LangChain. Its central abstraction is the session: composio.create("user_123") returns a session scoped to one of your users, session.tools() hands that session's tools to an agent framework, and the session ID can be stored and reused with composio.use() across turns. The project lives in the agentic AI and LLMOps ecosystem, with documentation hosted at docs.composio.dev.

Building an agent that acts in the world normally means writing authentication for every app it touches and loading hundreds of tool definitions into the model's context. Composio addresses both: toolkits arrive pre-authenticated, and each session is given meta tools that discover, authenticate, and execute app tools at runtime, so the full catalogue does not need to sit in context. It replaces the per-app integration, OAuth wiring, and hand-maintained tool schemas that a team would otherwise build once for every provider it supports.

Key capabilities

  • More than 1,000 pre-authenticated toolkits, reached through per-user sessions created with composio.create("user_123").
  • Meta tools in every session that discover, authenticate, and execute app tools at runtime instead of loading hundreds of tool definitions into context.
  • Session continuity across turns: store session.session_id and resume it with composio.use().
  • A hosted MCP endpoint per session — pass mcp: true to composio.create() and point any MCP client at session.mcp.url.
  • Provider adapters that translate tools into native formats for OpenAI, OpenAI Agents, and Anthropic, in both TypeScript and Python.
  • Authentication, triggers, and a sandboxed workbench, with sessions configurable to restrict toolkits, auth configs, and connected accounts.

Who uses it and how

  • Teams already building on OpenAI Agents, Claude Agent SDK, Vercel AI SDK, or LangChain add the matching adapter and pass session.tools() into their existing agent.
  • Users of MCP clients such as Claude or Cursor connect to a session's hosted MCP URL, which suits environments where the client rather than the application drives tool use.
  • Developers and coding agents such as Claude Code use the composio CLI from the shell to search for tools, execute them, link accounts, and script workflows.
  • Products serving many end users create one session per user ID, keeping connected accounts scoped to that individual and restricting which toolkits a session may reach.
  • TypeScript and Python teams are both supported, through parallel package sets and the same session model.

Getting started

Install the TypeScript packages with npm install @composio/core @composio/openai-agents @openai/agents, or their Python equivalents with pip install composio composio-openai-agents openai-agents, and obtain a COMPOSIO_API_KEY from the dashboard at dashboard.composio.dev. For shell use, curl -fsSL https://composio.dev/install | sh installs the CLI, after which composio login connects the account.

How it compares

Composio sits alongside the agent frameworks it supports rather than replacing them: OpenAI Agents, Claude Agent SDK, Vercel AI SDK, and LangChain remain the orchestration layer, while adapters such as @composio/openai-agents and @composio/anthropic convert Composio tools into those frameworks' native tool formats. For MCP clients such as Claude and Cursor, the integration point is instead the hosted MCP endpoint that a session can expose.

When to use it — and when not to

The SDKs and CLI are MIT-licensed and open source, but the workflow described here depends on the hosted Composio dashboard for API keys and can depend on a hosted MCP endpoint, so a team that must keep its whole control plane self-hosted will find this path unsuitable; the README does not describe running the backend or the infrastructure that would require. @composio/core deliberately packages its TypeScript source and SDK docs so the install is inspectable to coding agents, which makes it larger than some teams want, with @composio/slim offered as a smaller alternative with the same API. A team needing only one or two integrations is better served by direct API calls than by a session with more than 1,000 toolkits behind it.

project readme (upstream, from github) — read inline

Composio logo

composio.devDocumentationQuickstartChangelog

GitHub stars npm PyPI Discord HVTrust

Composio

Composio gives your AI agents 1000+ pre-authenticated toolkits, per-user sessions, authentication, triggers, and a sandbox, so you can ship agents that turn intent into action.

This is the Composio SDK monorepo. It contains:

  • @composio/core: TypeScript SDK
  • composio: Python SDK
  • composio CLI: search, execute, and script tools from your shell
  • Provider adapters for OpenAI Agents, Claude Agent SDK, Vercel AI SDK, LangChain, and more

Quickstart

Create a session for a user, hand its tools to your agent, and let the agent take action across 1000+ apps. Grab a COMPOSIO_API_KEY from the dashboard first.

TypeScript

npm install @composio/core @composio/openai-agents @openai/agents

@composio/core intentionally packages its TypeScript source and SDK docs so the installed package is inspectable to coding agents. If you want a smaller install with the same API, use @composio/slim.

import { Composio } from "@composio/core";
import { OpenAIAgentsProvider } from "@composio/openai-agents";
import { Agent, run } from "@openai/agents";

const composio = new Composio({ provider: new OpenAIAgentsProvider() });

// Each session is scoped to one of your users
const session = await composio.create("user_123");
const tools = await session.tools();

const agent = new Agent({
  name: "Personal Assistant",
  instructions: "You are a helpful assistant. Use Composio tools to take action.",
  tools,
});

const result = await run(agent, "Summarize my emails from today");
console.log(result.finalOutput);

Python

pip install composio composio-openai-agents openai-agents
from composio import Composio
from composio_openai_agents import OpenAIAgentsProvider
from agents import Agent, Runner

composio = Composio(provider=OpenAIAgentsProvider())

# Each session is scoped to one of your users
session = composio.create(user_id="user_123")
tools = session.tools()

agent = Agent(
    name="Personal Assistant",
    instructions="You are a helpful assistant. Use Composio tools to take action.",
    tools=tools,
)

result = Runner.run_sync(starting_agent=agent, input="Summarize my emails from today")
print(result.final_output)

By default a session gets meta tools that discover, authenticate, and execute app tools at runtime, so you don't load hundreds of tool definitions into context. Store session.session_id and reuse it with composio.use() across turns. See what a session is and configuring sessions for restricting toolkits, auth configs, and connected accounts.

Prefer MCP? Every session also exposes a hosted MCP endpoint. Pass mcp: true to composio.create() and point Claude, Cursor, or any MCP client at session.mcp.url. See sessions via MCP.

CLI

The composio CLI runs Composio from your shell and gives coding agents like Claude Code a local tool surface.

curl -fsSL https://composio.dev/install | sh

The installer puts composio on your PATH for future terminals. Open a new terminal, then run composio login. See INSTALL.md for shell setup overrides, including COMPOSIO_INSTALL_SHELL=none for install-only runs.

Use composio search to find tools, composio execute to run them, composio link to connect accounts, and composio run to script workflows in TypeScript. See the CLI docs.

Providers

A provider adapts Composio tools to your agent framework's native tool format:

* The Pi provider is experimental and ships from @composio/experimental.

Don't see your framework? Build a custom provider, or skip providers entirely and connect over MCP.

All packages

Everything published from this repo:

Package Description
@composio/core TypeScript SDK
@composio/slim @composio/core without packaged source or docs; same API, smaller install
composio CLI Standalone CLI binary: curl -fsSL https://composio.dev/install | sh
@composio/experimental Experimental integrations, including the Pi provider
@composio/json-schema-to-zod JSON Schema to Zod conversion
@composio/* provider adapters OpenAI, OpenAI Agents, Anthropic, Claude Agent SDK, Vercel, Google, LangChain, LlamaIndex, Mastra, Cloudflare, TypeSafe
composio Python SDK
composio-* provider adapters OpenAI, OpenAI Agents, Anthropic, Claude Agent SDK, Gemini, Google, Google ADK, LangChain, LangGraph, LlamaIndex, CrewAI, AutoGen, TypeSafe

Repository layout

ts/                TypeScript SDK workspace
  packages/core/       @composio/core
  packages/providers/  Provider adapters
  packages/cli/        Composio CLI
python/            Python SDK and provider packages
docs/              Documentation site (docs.composio.dev)

The TypeScript SDK is tested against Node 22+; the Python SDK supports Python 3.10+.

Development

mise install    # pinned toolchain (Node, Python, pnpm)
pnpm install
pnpm build
pnpm test

Python commands run from python/; see python/README.md. We welcome contributions to both SDKs; read the contribution guidelines before submitting pull requests.

Support

License

MIT. See LICENSE.

Frequently asked questions

Is composio free to use?

composio is open source under the MIT licence. There is no licence fee and no seat count — you can self-host it or, where the project offers one, pay a vendor for a managed version instead.

What does composio do?

Composio powers 1000+ toolkits, tool search, context management, authentication, and a sandboxed workbench to help you build AI agents that turn intent into act

What is composio written in?

composio is primarily written in TypeScript. Its source is publicly available at https://github.com/ComposioHQ/composio, and it has 30,291 GitHub stars.