πŸ“¦ composio clone β€” pathname matches origin via /

Your agent decides
what to do.

We handle the rest.

Just-in-time tool calls, secure delegated auth, sandboxed environments, and parallel execution across 1,000+ apps.


  • agent.ai
  • Zoom
  • Letta
  • Glean
  • HubSpot
  • Wabi
WHY COMPOSIO

Your agents are smart.
Their tools should be too.

list sentry errors and create linear issues3 found
sentry
SENTRY_LIST_ISSUES
List unresolved issues in a project
match
sentry
SENTRY_GET_EVENT
Get error event details and stack trace
match
linear
LINEAR_CREATE_ISSUE
Create a new issue in Linear
Plan
1Fetch all open Sentry issues
2Classify severity in sandbox
3Create Linear issues for P0s
Warnings
!Sentry project slug required
!Linear team ID must be configured
01

Search that thinks

Save your agent's context for what matters. Only give it the right tools, at the right time.

Tools resolved by intent, not configuration

Proposed execution plans for complex workflows

Built-in guardrails so your agent gets it right the first time

gmailGMAIL_SEND_EMAILv2.1.3
to:"john <john@acme.com>"
400Invalid recipient format: display name not allowed in "to" field
composioAuto-Fix Agent
Detected pattern: 12% of GMAIL_SEND_EMAIL calls fail on recipient format
Strip display names from recipient field before API callv2.1.4 published
gmailGMAIL_SEND_EMAILv2.1.4
to:"john <john@acme.com>"
200Sent to john@acme.com Β· ID: 18f2a3b4c5d
02

Tools that learn

Your tools get sharper every day. Real agent behavior at scale is what makes Composio tools the most accurate available.

Accuracy driven by millions of real-world tool calls

Account-level optimization for your usage patterns

API-stable, agent-optimized

Agent Chat
connected
You
List my open PRs on GitHub and summarize what needs review.
Agent
composio_manage_connectionsNot Connected
I need access to your GitHub account to fetch your PRs.
github
GitHubscope: repo, read:org
Connect
Ask your agent something...
03

Auth that works

Stop debugging auth flows. Composio handles OAuth end-to-end: on the fly, scoped to exactly what your agent needs.

Fully managed OAuth for every connector, out of the box

Inline auth triggered by user intent, not pre-configured

Granular permission scoping that tightens as you go

Fetch & triage errors
exit 0
issues = run_composio_tool(
  'SENTRY_LIST_ISSUES',
  project='api-prod',
  status='unresolved'
)

for issue in issues:
  issue['trace'] = run_composio_tool(
    'SENTRY_GET_EVENT',
    issue_id=issue['id']
  )

ranked = invoke_llm(
  f'Classify these {len(issues)} errors.'
  ' Return P0/P1/P2 with reasoning.'
)

for error in ranked['P0']:
  run_composio_tool(
    'LINEAR_CREATE_ISSUE',
    title=error['title'],
    team_id='ENG',
    priority=1
  )
47 errors triaged β†’ 5 P0, 12 P1, 30 P2
βœ“ 5 Linear issues created (LIN-482 β†’ LIN-486)
04

Programmatic execution

Remote sandboxed environments where tools run as code and results live in a navigable filesystem.

Compose tools as code. Multi-step workflows, sub-LLM invocations

Large responses stored on a remote filesystem your agent can browse

Secure, ephemeral sandboxes for every execution

ZERO CODE TO FULL CONTROL

One product, every workflow

ComposioFOR YOU

Turn Claude Code, Cursor, or any MCP client into an agent that executes across all your apps. Go from asking questions to doing work.

Every tool comes production-ready β€” authenticated, optimized, and reliable. No setup required.

LEARN MORE
user β€” ✻ Claude Code β€” claude
β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•—β–ˆβ–ˆβ•— β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•— β–ˆβ–ˆβ•— β–ˆβ–ˆβ•—β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•— β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•— β–ˆβ–ˆβ•”β•β•β•β•β•β–ˆβ–ˆβ•‘ β–ˆβ–ˆβ•”β•β•β–ˆβ–ˆβ•—β–ˆβ–ˆβ•‘ β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•”β•β•β–ˆβ–ˆβ•—β–ˆβ–ˆβ•”β•β•β•β•β• β–ˆβ–ˆβ•‘ β–ˆβ–ˆβ•‘ β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•‘β–ˆβ–ˆβ•‘ β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•‘ β–ˆβ–ˆβ•‘β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•— β–ˆβ–ˆβ•‘ β–ˆβ–ˆβ•‘ β–ˆβ–ˆβ•”β•β•β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•‘ β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•‘ β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•”β•β•β• β•šβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•—β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•—β–ˆβ–ˆβ•‘ β–ˆβ–ˆβ•‘β•šβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•”β•β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•”β•β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•— β•šβ•β•β•β•β•β•β•šβ•β•β•β•β•β•β•β•šβ•β• β•šβ•β• β•šβ•β•β•β•β•β• β•šβ•β•β•β•β•β• β•šβ•β•β•β•β•β•β• β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•— β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•— β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•— β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•— β–ˆβ–ˆβ•”β•β•β•β•β•β–ˆβ–ˆβ•”β•β•β•β–ˆβ–ˆβ•—β–ˆβ–ˆβ•”β•β•β–ˆβ–ˆβ•—β–ˆβ–ˆβ•”β•β•β•β•β• β–ˆβ–ˆβ•‘ β–ˆβ–ˆβ•‘ β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•‘ β–ˆβ–ˆβ•‘β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•— β–ˆβ–ˆβ•‘ β–ˆβ–ˆβ•‘ β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•‘ β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•”β•β•β• β•šβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•—β•šβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•”β•β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•”β•β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•— β•šβ•β•β•β•β•β• β•šβ•β•β•β•β•β• β•šβ•β•β•β•β•β• β•šβ•β•β•β•β•β•β•
v2.1.50
Opus 4.6 Β· Claude Max
/Users/dev/projects/app
❯try "fix lint errors"
? for shortcuts/ide for Cursor
githubslack
Create a PR and post to #engineering
sentrylinear
Check errors and create tickets
stripe
Generate an invoice from Stripe
stripeslack
Pull revenue data and send report
gmail
Draft replies to this week's emails
slack
Summarize unread messages
slacklinear
Schedule a standup recap
ComposioPLATFORM

Your agent has the intelligence. Now let it execute. Go from chatbot to general-purpose agent in five lines of code.

tools = session.tools()
agent = Agent(
  name="Assistant",
  tools=tools,
)
LEARN MORE
Support Agent
notiongithubslack

Resolved GH-482

Email Agent
gmailgooglecalendar

Scheduled follow-up

Slack Agent
slackgoogledocs

Synced channel topic

SQL Agent
supabasegooglesheets

Optimized slow query

Code Review Agent
githublinear

Approved PR #131

Research Agent
firecrawlnotion

Summarized findings

FOR DEVELOPERS
β–‘β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•—β–‘β–‘β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•—β–‘β–ˆβ–ˆβ–ˆβ•—β–‘β–‘β–‘β–ˆβ–ˆβ–ˆβ•—β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•—β–‘β–‘β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•—β–‘β–‘β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•—β–ˆβ–ˆβ•—β–‘β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•—β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•—β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•—β–‘β–ˆβ–ˆβ•—β–‘β–‘β–ˆβ–ˆβ•—
β–ˆβ–ˆβ•”β•β•β–ˆβ–ˆβ•—β–ˆβ–ˆβ•”β•β•β–ˆβ–ˆβ•—β–ˆβ–ˆβ–ˆβ–ˆβ•—β–‘β–ˆβ–ˆβ–ˆβ–ˆβ•‘β–ˆβ–ˆβ•”β•β•β–ˆβ–ˆβ•—β–ˆβ–ˆβ•”β•β•β–ˆβ–ˆβ•—β–ˆβ–ˆβ•”β•β•β•β•β•β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•”β•β•β–ˆβ–ˆβ•—β–‘β–‘β–‘β–‘β–‘β–ˆβ–ˆβ•”β•β•β•β•β•β–ˆβ–ˆβ•”β•β•β–ˆβ–ˆβ•—β–ˆβ–ˆβ•‘β–‘β–ˆβ–ˆβ•”β•
β–ˆβ–ˆβ•‘β–‘β–‘β•šβ•β•β–ˆβ–ˆβ•‘β–‘β–‘β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•”β–ˆβ–ˆβ–ˆβ–ˆβ•”β–ˆβ–ˆβ•‘β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•”β•β–ˆβ–ˆβ•‘β–‘β–‘β–ˆβ–ˆβ•‘β•šβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•—β–‘β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•‘β–‘β–‘β–ˆβ–ˆβ•‘β–‘β–‘β–‘β–‘β–‘β•šβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•—β–‘β–ˆβ–ˆβ•‘β–‘β–‘β–ˆβ–ˆβ•‘β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•β•β–‘
β–ˆβ–ˆβ•‘β–‘β–‘β–ˆβ–ˆβ•—β–ˆβ–ˆβ•‘β–‘β–‘β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•‘β•šβ–ˆβ–ˆβ•”β•β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•”β•β•β•β•β–‘β–ˆβ–ˆβ•‘β–‘β–‘β–ˆβ–ˆβ•‘β–‘β•šβ•β•β•β–ˆβ–ˆβ•—β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•‘β–‘β–‘β–ˆβ–ˆβ•‘β–‘β–‘β–‘β–‘β–‘β–‘β•šβ•β•β•β–ˆβ–ˆβ•—β–ˆβ–ˆβ•‘β–‘β–‘β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•”β•β–ˆβ–ˆβ•—β–‘
β•šβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•”β•β•šβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•”β•β–ˆβ–ˆβ•‘β–‘β•šβ•β•β–‘β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•‘β–‘β–‘β–‘β–‘β–‘β•šβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•”β•β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•”β•β–ˆβ–ˆβ•‘β•šβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•”β•β–‘β–‘β–‘β–‘β–‘β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•”β•β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•”β•β–ˆβ–ˆβ•‘β–‘β•šβ–ˆβ–ˆβ•—
β–‘β•šβ•β•β•β•β•β–‘β–‘β•šβ•β•β•β•β•β–‘β•šβ•β•β–‘β–‘β–‘β–‘β–‘β•šβ•β•β•šβ•β•β–‘β–‘β–‘β–‘β–‘β–‘β•šβ•β•β•β•β•β–‘β•šβ•β•β•β•β•β•β–‘β•šβ•β•β–‘β•šβ•β•β•β•β•β–‘β–‘β–‘β–‘β–‘β–‘β•šβ•β•β•β•β•β•β–‘β•šβ•β•β•β•β•β•β–‘β•šβ•β•β–‘β–‘β•šβ•β•
TRY IT OUT

Managed Auth

OAuth, API keys, token refresh, lifecycle management. We handle all of it so you never think about auth again.

LEARN MORE
Managed authentication illustration

Triggers

Bidirectional communication with your apps to keep your agents informed.

LEARN MORE
Triggers illustration

Context Aware Sessions

session.py
1session = composio.create(user_id="user_123")
2tools = session.tools()
3connection = session.authorize("github")

Every session carries full context β€” sandbox state, files, progress. Your agent never starts from scratch.

LEARN MORE

Model & Framework Agnostic

Gemini

No lock-in. Swap models based on cost, capability, or use case. Your tools and auth carry over, zero rework.

LEARN MORE
SAFETY & SECURITY

Protected from every angle with first-in-class security

LEARN MORE ABOUT OUR SECURITY
OUR COMMUNITY

Top teamschoose Composio

β€œA lot of students tell us that the moment their connected tools start talking to each other inside Opennote feels almost magical. The agent just knows them”

Opennote logo
Abhi Arya
Abhi AryaCo-founder | Opennote
ALL COMMUNITY STORIES

Your agents are ready.
Are you?