MCP gateway

The open-source MCP gateway.

Open Connector is an open-source (AGPL-3.0), self-hostable MCP gateway: it exposes your connectors as named Model Context Protocol servers, runs the OAuth, and injects credentials server-side at call time — so your agents act over MCP while tokens never leave your infrastructure. It's wire-compatible with Composio's MCP, so existing clients point at your host unchanged.

What you get

Your connectors, served over MCP — credentials stay yours.

Named MCP servers

Define a server with an auth-config and a tool allowlist, then generate a per-user mcp_url any MCP client connects to.

Managed OAuth

The gateway runs the OAuth handshake and refreshes tokens. Users grant access once; agents get scoped, least-privilege connections.

Credentials stay yours

Tokens are sealed in an AES-256-GCM vault and injected server-side at call time. The MCP client never sees a raw secret.

Tamper-evident audit

Every MCP tool call writes a hash-chained record — actor, scope, timestamp, result — your security team can trust.

Open source & self-hostable

The whole gateway is AGPL-3.0. Run it on your own infrastructure for free — no per-call vendor tax, no tokens in someone else's cloud.

Composio-compatible

Wire-compatible with Composio's MCP: named servers, per-user instances, generated urls, and ready-to-run client endpoints.

How it works

MCP gateway architecture: clients, credentials, and tools.

An MCP server exposes a set of tools. An MCP gateway is the control point between many clients and those tools: it maps each client to the right connected account, enforces the allowlist, and injects credentials only when a tool call is made.

  1. 1Create a named MCP server — an auth-config plus the tool allowlist it exposes.
  2. 2Generate a per-user mcp_url (or a per-connected-account url) for each end user.
  3. 3Point any MCP client at the url — tools are routed and credentials injected server-side.
# after you create the MCP server
curl -X POST "https://connect.acme.com/composio/api/v3.1/mcp/servers/generate"
# use returned user_ids_url/connected_account_urls in any MCP client
FAQ

MCP gateway, answered

What is an MCP gateway?
An MCP gateway sits between AI agents and third-party tools: it exposes those tools to any MCP (Model Context Protocol) client, handles authentication, and routes each tool call. Instead of every agent wiring its own OAuth and API integrations, the gateway runs the OAuth, holds the credentials, and serves a scoped, authenticated set of tools over MCP.
What is the difference between an MCP gateway and an MCP server?
An MCP server exposes a specific set of tools to a client. An MCP gateway sits in front of one or more MCP servers and connectors: it authenticates the client, selects the right connected account, applies a tool allowlist, and injects the credential only when the tool is called. That central control point is useful when many agents or users share the same integrations.
When do I need an MCP gateway?
Use an MCP gateway when agents need third-party tools with per-user OAuth, scoped access, auditability, or self-hosted credential custody. It removes OAuth and token handling from every individual agent while keeping the final tool set and credential injection under one policy boundary.
Is there an open-source, self-hostable MCP gateway?
Yes. Open Connector is an open-source (AGPL-3.0) MCP gateway you run on your own infrastructure for free. It exposes your connectors as named MCP servers, runs the OAuth, and injects credentials server-side — so tokens stay in your environment, never in a vendor's cloud.
How does Open Connector handle MCP authentication and OAuth?
Open Connector performs the OAuth handshake for each connected account and seals the tokens in an AES-256-GCM vault. At call time it injects the credential server-side, so the MCP client only ever holds a scoped api-key to your gateway — never a raw third-party token. Every routed call is written to a tamper-evident audit trail.
How do MCP servers and per-user access work?
You create a named MCP server with an auth-config and a tool allowlist, then generate a per-user mcp_url (or a per-connected-account url). Each MCP client connects to its own url; the server's tools/list is derived from the allowlist, and tools/call resolves the acting user's connection and injects the credential. A call with no active connection fails honestly with an error — never a fake success.
Is Open Connector an alternative to Composio's MCP?
Yes. Open Connector's MCP resource is wire-compatible with Composio's MCP (named servers, per-user instances, generated urls). The difference is ownership: Open Connector's gateway is open source and self-hostable, so the MCP servers and the credentials they protect run on your own infrastructure.

An MCP gateway you own.

Open source, self-hostable, with credentials that never leave your infrastructure. Run it from source today.