Intercept gives your team hard limits over every MCP tool call. Rate limits, spend caps, access controls, audit logs. One YAML file. No code changes.
npx -y @policylayer/intercept go install github.com/policylayer/intercept@latest There's no built-in way to make tools read-only, cap spend, or stop a runaway loop. You have to define that yourself.
You can't cap daily refunds or rate limit by default. Every call goes through.
No read-only mode. Every tool can write. You can't restrict queries to specific schemas out of the box.
No built-in retry limits or resource caps. A loop runs until you notice.
Intercept sits between your agent and your MCP server. Your policy file decides what runs, what's blocked, and what gets logged.
Commit it to your repo. Deploy it with your agent. The file is the policy.
version: "1" default: deny hide: - delete_repository - merge_pull_request tools: create_refund: rules: - name: "daily cap" rate_limit: 10/day write_file: rules: - name: "safe paths" conditions: - path: "args.path" op: "regex" value: "^/app/src/"
No architecture changes. One line in your MCP config.
See every tool the server exposes.
intercept scan -o policy.yaml \ -- npx -y @stripe/mcp-server
Block what you don't need. Rate limit the rest. Commit the file -- policy.yaml lives in your repo, not in a client setting.
Put Intercept in front of the MCP server. Every call is checked. Every decision is logged.
intercept -c policy.yaml \ -- npx -y @stripe/mcp-server
Invisible until a limit is hit. Completely transparent about why when one is.
If Intercept goes down, nothing runs. Your agent doesn't get a free pass.
Push a policy change without restarting. Useful when you're tightening limits mid-incident.
Policy checks run in-process. No network calls. No latency hit. Your agent doesn't know it's there.
Every tool call logged: what was called, what the decision was, what rule fired. Reconstruct exactly what happened.
Rate limits and counters work out of the box. Redis when you need shared state across instances.
One Go binary. No runtime. No dependencies. Runs on anything.
Start with a generated policy for the tools your agent already uses. Trim it down. Ship it.
An open-source control layer for AI agents in production. You define what each MCP tool is allowed to do in a YAML file -- rate limits, spend caps, access controls, argument restrictions. Intercept enforces those rules on every tool call. One line change in your MCP config. No changes to your agent.
Tool access, spend, call volume, arguments, paths, and destructive actions. Block tools entirely. Rate limit by minute, hour, or day. Cap cumulative spend. Restrict which paths a file tool can write to, which regions AWS can touch, which tables a database tool can modify. Start with deny-by-default and open up from there.
No. One line change in your MCP config. The agent sees the same tools and the same schemas. Nothing looks different until a limit is hit -- then the call is blocked and logged.
Prompts tell the agent what it should do. Intercept defines what it is allowed to do. A prompt is a best-effort instruction. A policy is a hard limit. You can't cap spend with a prompt. You can't make a tool genuinely read-only with a prompt. With Intercept, either the call is within policy or it isn't. No probability involved.
Takes two minutes. Version-controlled. Open source.
npx -y @policylayer/intercept