Security gateway for MCP tool calls. Cordon sits between your LLM client and MCP servers — enforcing policies, logging every tool call, and pausing dangerous operations for human approval.
Free for individuals · GitHub OAuth · No credit card
Any MCP client, any MCP server. Cordon speaks stdio — the transport every
major client already uses. cordon init auto-patches supported
clients; others drop in with a one-line config change.
Using an MCP server? If it runs over stdio, Cordon proxies it — no server-side changes required.
MCP lets LLMs call real tools — query databases, write files, call APIs. That's powerful. But out of the box, there's nothing between the model and your production systems. No audit log. No way to block a class of operations. No human checkpoint before something irreversible runs.
You're just trusting the model. Cordon closes that gap.
Cordon is a transparent proxy. It requires no changes to your existing MCP servers
or Claude Desktop config — cordon init handles the wiring.
Block entire tool categories or specific tools by name. Reads pass, writes require approval — or block everything except an explicit allowlist.
Dangerous operations pause and wait. Approve or deny from the terminal or a Slack channel before anything runs.
Every tool call — args, result, policy decision, timestamp — logged to a file or shipped to the hosted dashboard.
Centralized audit logs across your team. Manage API keys, view call history, export for compliance.
Per-agent rules with call-graph constraints. Block patterns like read database → write to disk — even when each call is individually allowed. The exfil shapes that per-tool rules can't see.
Cordon is free. The CLI is open source, the hosted dashboard is free to use, no credit card. We'll charge for team and enterprise features later — for now, we're focused on getting the product right.
Everything you need to ship safely.
npm install -g @getcordon/cli
cordon init
// cordon.config.ts
import { defineConfig } from '@getcordon/policy';
export default defineConfig({
servers: [
{
name: 'my-db',
transport: 'stdio',
command: 'npx',
args: ['-y', '@my-org/db-mcp'],
policy: 'approve-writes',
tools: {
drop_table: { action: 'block' },
},
},
],
});
cordon start
We're looking for a handful of teams to work closely with as we build out the enterprise features — centralized policy management, SSO, compliance exports. Early partners shape the roadmap and get priority support.
Get in touch →