Summon any tool.
Govern every agent.
One MCP endpoint that proxies all your MCP servers — with per-agent access control, a credential vault, and shared memory built into the gateway.
{ "mcpServers": { "github": { "command": "npx", "args": ["-y", "@mcp/server-github"], "env": { "GITHUB_TOKEN": "ghp_live_xY9…" } }, "slack": { "command": "npx", "args": ["@mcp/slack"], "env": { "SLACK_BOT_TOKEN": "xoxb-…" } }, "postgres": { "command": "npx", "args": ["@mcp/postgres", "postgres://…"] }, "stripe": { "command": "npx", "args": ["@mcp/stripe"], "env": { "STRIPE_API_KEY": "sk_live_…" } }, "internal-tools": { "command": "node", "args": ["./mcp/internal.js"] } } } // 5 servers · 5 secrets on disk · no access control{ "mcpServers": { "mago": { "url": "https://gateway.mago.run/mcp", "headers": { "Authorization": "Bearer mago_live_••••" } } } } // 1 endpoint · 0 secrets on disk // RBAC + vault + memory at the gateway
Every team building agents hits the same wall.
Agents connect to mago. mago handles the rest.
Every request flows through a single control plane: it authorizes the call, injects the right credentials, routes to the downstream MCP, and reads or writes shared memory along the way.
Universal connector
One endpoint speaks MCP to your client and fans out to every downstream server. Add or remove tools without touching agent config.
RBAC for agents
Per-agent and per-role policies decide which tools and scopes a request can reach. Everything else is denied by default.
Credential vault
Downstream OAuth tokens and API keys live in mago and are injected at call time. Agents never hold a raw secret.
Memory & Wiki
A persistent memory layer and shared knowledge base every agent reads from and writes to — across sessions and teammates.
Scope every agent down to the tool.
Write policy once, in version control. mago enforces it on every call — before the request ever reaches a downstream server.
- →Roles, not credentialsAssign an agent a role; the role defines what it can call.
- →Tool- and scope-level grantsAllow github.read on docs/* while denying github.write entirely.
- →Deny by defaultAnything not explicitly granted is rejected at the gateway and logged.
Agents call tools. They never see the keys.
Store every downstream OAuth token and API key in mago. When an authorized call comes through, the matching secret is attached at the gateway — then stripped from logs.
A leaked agent context can't leak a credential it was never given. Revoke an agent's key and its access is gone instantly, everywhere.
Give your agents a memory that outlives the session.
A persistent store for facts an agent learns, and a shared wiki it can read and write — so the next agent, on the next run, starts where the last one left off.
One connection.
Every MCP. Full control.
Point your MCP client at mago and govern every agent from day one.