Evaluating a Composio alternative? Compare the policy gates.
Composio is a capable tool platform with a very large catalog. Gentkey’s center of gravity is different: one OAuth-protected MCP URL where reads are unmetered and every write runs through a policy gate — capability-typed grants, dollar and velocity constraints enforced by arithmetic, dry runs, and an audit trail that records denials too. If the August 2026 repricing has you re-reading your invoice, this page is the honest comparison.
The pricing context, stated plainly.
Per Composio’s own pricing page (as of late August 2026): new pricing applies to signups on or after August 15, 2026, and existing customers stay on their current plans through December 31, 2026. The meter is the tool call — reads and writes alike — with the Free tier capped at 100K calls/month and overages billed per call ($0.0003, or $0.0005 through Composio-managed auth apps). If your agents read far more than they write, every one of those reads is on the meter.
Gentkey meters the opposite thing: reads are unmetered on every tier, and the unit that scales with price is the governed write — a state-changing call that executes upstream under a grant. Denied calls and dry runs never count. The reasoning is on the pricing page.
Aggregation both do. Governance is the gap.
Capability-typed write grants
Not “which tools does the agent see” but “which state changes may it make”: google-ads.write.budget is a different grant from google-ads.campaigns.mutate, and unclassifiable writes fail closed to the broad grant.
Dollar and velocity bounds
Grants carry hard limits — max $ change per call, max $ moved per hour and day, max writes per hour. The gate does the arithmetic before the upstream service sees the request.
Plan/commit dry runs
Curated writes are split into plan() and commit(). A dry run reports exactly what would change — and skips commit() structurally, not by convention.
Denials are first-class records
Every decision is logged with the agent, tool, and reason — allowed, denied, or denied by constraint. The calls that didn’t happen are the ones you most want on record.
One-flip write freeze
An emergency stop that beats every grant: all writes deny instantly while reads stay up, so you can watch what agents attempt while deciding what to revoke.
Depth first, breadth included
21 curated connectors with typed grants, a 1,798-service directory, and any remote MCP server by URL — upstream tools default to write-gated.
Side by side, without spin.
| Composio | Gentkey | |
|---|---|---|
| Pricing meter | Per tool call, reads and writes alike (Free capped at 100K calls/mo; overages per call) | Governed writes only — reads, denials, and dry runs are never metered |
| Catalog | 1,000+ toolkits, managed OAuth, triggers, framework SDKs | 21 curated connectors with typed grants + 1,798-service directory + any MCP server by URL |
| Write governance | Tool allowlist per MCP server (choose which tools an agent sees) | Capability-typed grants per state change; unclassifiable writes fail closed to the broad grant |
| Spend safety | Not a documented feature (as of Aug 2026) | Max $ per call plus hourly/daily dollar and write-velocity windows, enforced before the upstream call |
| Dry runs | Not a documented feature (as of Aug 2026) | plan/commit boundary; curated writes advertise a dry_run argument |
| Denied-call audit | Not a documented feature (as of Aug 2026) | Every decision logged and attributed per agent — allowed, denied, denied by constraint |
| Emergency stop | Not a documented feature (as of Aug 2026) | Write freeze: one flip denies all writes instantly; reads stay up |
The Composio column reflects their public pricing page and MCP documentation as checked on August 27, 2026. Their product moves fast — verify against their current pages; “not documented” means we couldn’t find it, not that it can never exist.
Comparing other gateways? There’s the same honest treatment of Zapier MCP.
Ten minutes, one connection at a time.
Sign in at gentkey.com, connect an account (OAuth or API key — credentials are encrypted at rest and never enter any agent’s context), grant the write capabilities you actually want agents to have, then point each client at your endpoint. Run it alongside your current setup until you’re satisfied.
https://app.gentkey.com/mcpclaude.ai (web & mobile) · Claude Code · Cursor · any MCP clientclaude.ai (web & mobile)
- Settings → Connectors
- Add custom connector
- Paste
https://app.gentkey.com/mcpand finish the OAuth prompt
Claude Code
claude mcp add --transport http \
gentkey https://app.gentkey.com/mcpCursor
// .cursor/mcp.json
{
"mcpServers": {
"gentkey": { "url": "https://app.gentkey.com/mcp" }
}
}Where Composio fits better.
If you need the breadth of 1,000+ managed toolkits, trigger/webhook pipelines, or SDKs embedded in your own agent framework code, Composio ships things Gentkey doesn’t. Gentkey’s curated depth is 21connectors — the app-stack verticals get semantic, dollar-aware constraints, and everything else gets custody, gating, and audit through the directory or a raw MCP URL. If your requirement is “maximum tool surface, metered per call,” stay put. If it’s “agents with real account access, inside enforced bounds,” that’s what Gentkey is for.
Fair questions.
Do I have to move everything at once?
No. Gentkey is one more MCP URL — point a client at it alongside whatever you run today, move connections one at a time, and retire the old endpoint when nothing depends on it. Nothing about the migration is all-or-nothing.
Does Gentkey meter reads?
No. Reads are unmetered on every tier. The metered unit is the governed write — a state-changing call that executes upstream under a grant. Denied calls and dry runs don't count either.
What happens to a write Gentkey hasn't been told to allow?
It's denied before it reaches the upstream service, and the denial is logged with the grant that would have authorized it. Reads work out of the box where curated; writes are opt-in, per connection, revocable.
Is Gentkey a drop-in replacement for Composio's SDKs?
Not always. Gentkey is an MCP gateway: it's a drop-in where your agents speak MCP (claude.ai, Claude Code, Cursor, any MCP client). If your integration is Composio's framework SDKs embedded in your own application code, evaluate whether an MCP endpoint fits that architecture first.
Move one connection. Keep the rest.
Connect an account, set a grant with real bounds, and compare the audit logs yourself.