Labsco
MCP SERVER · OFFICIAL PROJECT

MCP Gateway

by IBM

Federate MCP servers, REST APIs and gRPC services behind one governed gateway, with auth, retries, rate limits and OpenTelemetry built in.

MCP Plumbing: Proxies, Registries & Inspectors
Summary
Refuses to start without its secrets, which tells you what kind of software this is.

Most gateways will happily boot with a default signing key; this one fails instead, and ships with public registration off and token expiry required. That posture is the point — it is aimed at an organization putting many teams' MCP servers behind one governed door. The virtualization layer is what makes it more than a proxy: a REST or gRPC service that nobody is going to rewrite becomes an MCP server with schemas, retries and rate limits attached.

What it is

IBM's ContextForge: an open-source registry and proxy that puts any MCP server, A2A agent, REST API or gRPC service behind a single MCP-compliant interface, with central governance over what clients can reach.

What you get
  • Federation across many MCP servers and REST services, exposed through one unified interface, with the MCP protocol version pinnable per deployment
  • Legacy APIs virtualized as MCP servers: REST endpoints adapted into tools with JSON Schema extracted automatically, and gRPC services discovered through server reflection
  • Retry, timeout and rate-limit policies applied per adapted tool, along with header and token handling
  • Unified registries for tools, prompts and resources — Jinja2 prompt templates with versioning and rollback, URI-based resources with MIME detection, caching and SSE updates, and input validation and concurrency controls on tools
  • Transport flexibility: HTTP, JSON-RPC, WebSocket, SSE with configurable keepalive, stdio and streamable HTTP
  • Built-in authentication with user-scoped OAuth tokens and an upstream authorization header, plus basic, JWT and custom schemes
  • An admin UI with real-time configuration and a log viewer that filters, searches and exports, usable in airgapped deployments
  • OpenTelemetry tracing and metrics to Phoenix, Jaeger, Zipkin, Tempo, DataDog or New Relic, including token usage and cost per model, and no overhead when disabled
  • Deployment paths that scale with you: PyPI, Docker, Podman, Docker Compose or Helm, with Redis-backed caching and multi-cluster federation
Requirements

Python 3.11 or newer, installed from PyPI as mcp-contextforge-gateway or run from a container image. Two secrets are mandatory in every environment including local development — JWT_SECRET_KEY and AUTH_ENCRYPTION_SECRET — and the gateway refuses to start without them; a script generates both. Set the bootstrap admin password and the basic-auth password before first run, since neither has a usable default. Content size limits apply to new writes: resources are capped at 100KB and prompt templates at 10KB by default. Public self-registration is off, and token expiry and JTI claims are required, unless you deliberately relax them.

Setup effort

Build from source — clone the repository and build it, then point your client at the binary