MIT-licensed Kubernetes gateway and management layer for MCP servers, with session-aware routing, adapter lifecycle APIs, tool registration, Entra ID role authorization, and optional agent/session preview resources.
Microsoft MCP Gateway can deploy, update, delete, and route MCP server adapters in Kubernetes through its management API., The dynamic `/mcp` tool router can route tool calls to registered tool servers, so tool definitions and execution endpoints must be reviewed before registration., Adapter and tool write access is limited to the creator or `mcp.admin`, while read access depends on creator, admin, and configured required roles., The optional agents and sessions subsystem is documented as preview and single-replica; built-in bash and file tools run in the gateway pod and are not a production sandbox., Proxying local stdio servers into remotely accessible services can expose local tools and workload identity permissions if access controls are too broad.
Privacy notes
The gateway may process bearer tokens, Entra ID role claims, adapter metadata, registered tool schemas, session IDs, MCP requests, tool arguments, tool results, logs, container image names, environment variables, and Kubernetes deployment status., Adapter logs and session streams can reveal prompts, tool inputs, tool outputs, upstream MCP responses, and internal service names., Workload identity, Azure resource access, Foundry settings, and MCP proxy environment variables can expose cloud permissions if logged or shared., Store tokens, role assignments, registry credentials, deployment payloads, and model provider settings in controlled secrets rather than committed examples.
Author
microsoft
Submitted by
oktofeesh1
Claim status
unclaimed
Last verified
2026-06-06
Decision playbook
Review trust signals before you adopt
Signals are present but mixed. Use the checklist below to confirm the source and operational safety for your environment.
Compare context
Selected
0
Current score
63
Baseline
—
Delta
No baseline selected
No major trust-signal divergence detected in the current selection.
Source and provenance checks
Needs review
Confirm ownership and provenance before trusting install instructions.
Source link availableRequired
Open the canonical repository and verify ownership.
Done
Source provenance statusRequired
Marked as source-backed.
Done
Metadata reviewed
No reviewed flag detected in metadata.
Pending
Safety and privacy checks
Complete
Validate risk disclosures before installation or API wiring.
Safety notes presentRequired
Review the listed safety guidance before running commands.
Done
Privacy notes presentRequired
Review data handling notes before connecting accounts or secrets.
Done
Trust level risk gateRequired
Trust level does not block evaluation.
Done
Package and install checks
Needs review
Check package metadata and artifact integrity signals.
Install payload available
Install or copy payload is available for review.
Done
Package verification flag
No package verification flag provided.
Pending
Checksum metadata
No checksum provided for downloaded artifact.
Pending
Compare-driven decision checks
Needs review
Use compare context to validate trade-offs before adoption.
Compare tray has multiple entries
Add at least one more entry to compare trust differences.
5 safety and 4 privacy notes across 4 risk areas. Review closely: credentials & tokens, permissions & scopes, network access.
4 areas
SafetyGeneralMicrosoft MCP Gateway can deploy, update, delete, and route MCP server adapters in Kubernetes through its management API.
SafetyNetwork accessThe dynamic `/mcp` tool router can route tool calls to registered tool servers, so tool definitions and execution endpoints must be reviewed before registration.
SafetyPermissions & scopesAdapter and tool write access is limited to the creator or `mcp.admin`, while read access depends on creator, admin, and configured required roles.
SafetyCredentials & tokensThe optional agents and sessions subsystem is documented as preview and single-replica; built-in bash and file tools run in the gateway pod and are not a production sandbox.
SafetyPermissions & scopesProxying local stdio servers into remotely accessible services can expose local tools and workload identity permissions if access controls are too broad.
PrivacyCredentials & tokensThe gateway may process bearer tokens, Entra ID role claims, adapter metadata, registered tool schemas, session IDs, MCP requests, tool arguments, tool results, logs, container image names, environment variables, and Kubernetes deployment status.
PrivacyCredentials & tokensAdapter logs and session streams can reveal prompts, tool inputs, tool outputs, upstream MCP responses, and internal service names.
PrivacyPermissions & scopesWorkload identity, Azure resource access, Foundry settings, and MCP proxy environment variables can expose cloud permissions if logged or shared.
PrivacyCredentials & tokensStore tokens, role assignments, registry credentials, deployment payloads, and model provider settings in controlled secrets rather than committed examples.
Safety notes
Microsoft MCP Gateway can deploy, update, delete, and route MCP server adapters in Kubernetes through its management API.
The dynamic `/mcp` tool router can route tool calls to registered tool servers, so tool definitions and execution endpoints must be reviewed before registration.
Adapter and tool write access is limited to the creator or `mcp.admin`, while read access depends on creator, admin, and configured required roles.
The optional agents and sessions subsystem is documented as preview and single-replica; built-in bash and file tools run in the gateway pod and are not a production sandbox.
Proxying local stdio servers into remotely accessible services can expose local tools and workload identity permissions if access controls are too broad.
Privacy notes
The gateway may process bearer tokens, Entra ID role claims, adapter metadata, registered tool schemas, session IDs, MCP requests, tool arguments, tool results, logs, container image names, environment variables, and Kubernetes deployment status.
Adapter logs and session streams can reveal prompts, tool inputs, tool outputs, upstream MCP responses, and internal service names.
Workload identity, Azure resource access, Foundry settings, and MCP proxy environment variables can expose cloud permissions if logged or shared.
Store tokens, role assignments, registry credentials, deployment payloads, and model provider settings in controlled secrets rather than committed examples.
Prerequisites
Kubernetes cluster access with permission to deploy gateway, adapter, tool router, and sample MCP server workloads.
.NET 8 SDK, Docker Desktop, local registry, and Kubernetes enabled for the documented local deployment flow.
MCP server images built and pushed to the registry used by the gateway deployment.
Bearer authentication, Entra ID app roles, `mcp.admin`, and per-resource `requiredRoles` configured before exposing management APIs.
Deployment storage, Redis or session store settings, logs, and network routing reviewed before production use.
Microsoft MCP Gateway is an open-source reverse proxy and management layer for
MCP servers in Kubernetes. It provides a data plane for routing streamable HTTP
MCP traffic with session affinity, plus a control plane for deploying,
updating, deleting, and inspecting MCP server adapters and registered tool
servers.
The gateway can expose direct adapter routes such as /adapters/{name}/mcp and
a dynamic /mcp tool router. The README also documents an optional preview
agent/session layer that can run LLM-driven sessions on top of registered MCP
tools when Azure AI Foundry settings are configured.
These sources were reviewed on 2026-06-07. Prefer the live repository,
README, Entra app-role guide, MCP proxy sample, OpenAPI contract, session
routing source, and license file for current deployment, authorization, adapter
management, tool registration, and routing behavior.
Features
Deploy and register MCP server adapters with the /adapters management API.
Route streamable HTTP MCP traffic through /adapters/{name}/mcp.
Preserve MCP session affinity when routing requests to adapter instances.
Register tool definitions and tool servers through the /tools API.
Route dynamic tool calls through the gateway-level /mcp tool router.
Inspect adapter and tool metadata, status, and running logs.
Use bearer authentication and Entra ID app roles for resource access control.
Proxy local stdio MCP servers or remote streamable HTTP MCP servers through the gateway.
Deploy gateway and sample workloads into Kubernetes with local or Azure-oriented manifests.
Optionally evaluate preview agents and sessions backed by registered MCP tools.
Installation
The README documents a local deployment flow that builds sample MCP server
images, publishes the gateway and tool-router images, applies Kubernetes
manifests, and port-forwards the gateway service:
Before applying the manifests, build and push the sample MCP server, gateway,
and tool-router images to the registry used by the deployment. The repository
also includes Azure deployment assets for cloud setup.
Create adapters through the management API with the image details and any
required role values:
The README documents two client-facing Streamable HTTP paths after the gateway
is running. Direct adapter access uses /adapters/{name}/mcp, such as
http://localhost:8000/adapters/mcp-example/mcp. The dynamic tool gateway
router uses the stable http://localhost:8000/mcp endpoint and routes calls to
registered tool servers.
Use Cases
Put a Kubernetes-native reverse proxy in front of multiple MCP server deployments.
Keep MCP session traffic pinned to the correct adapter instance.
Manage MCP adapter lifecycle with REST APIs instead of manually editing workloads.
Expose registered tool servers through one dynamic MCP tool router.
Gate adapter and tool access with Entra ID app roles and bearer tokens.
Bridge local stdio MCP servers into remotely accessible streamable HTTP services.
Proxy internal streamable HTTP MCP servers while centralizing access and logging.
Evaluate agent/session prototypes that call registered MCP tools in a controlled test environment.
Safety and Privacy
Microsoft MCP Gateway is infrastructure for deploying and routing other MCP
servers. Limit who can call the management APIs because adapter and tool
creation can deploy Kubernetes workloads, expose tool endpoints, and make logs
available through gateway APIs. Configure mcp.admin, resource creators, and
requiredRoles carefully before sharing the service.
The README labels the agents and sessions subsystem as preview and
single-replica. Built-in bash and file tools run inside the gateway pod with
regex denylist, timeout, output, and path limits; the docs explicitly say to
replace them with a real sandbox before multi-tenant or production use.
Treat bearer tokens, role claims, adapter payloads, tool schemas, Foundry
settings, workload identity permissions, MCP proxy environment variables, logs,
session streams, prompts, arguments, and tool results as sensitive. Avoid
registering untrusted MCP images or commands, and review Kubernetes RBAC,
network policy, image provenance, and log retention before production use.
Duplicate Check
No microsoft/mcp-gateway source entry, Microsoft MCP Gateway entry, or
matching source URL was found in content/mcp or the broader content
directories. This entry uses the documented Streamable HTTP gateway endpoint
and still requires the gateway deployment plus registered adapters or tools.
Show that Microsoft MCP Gateway is listed on HeyClaude. Paste this Markdown into your README — it renders the badge and links back to this page.
[](https://heyclau.de/entry/mcp/microsoft-mcp-gateway)
How it compares
Microsoft MCP Gateway side by side with 3 alternatives on trust, install, platform support, and disclosed safety notes — all from reviewed registry metadata.
MIT-licensed Kubernetes gateway and management layer for MCP servers, with session-aware routing, adapter lifecycle APIs, tool registration, Entra ID role authorization, and optional agent/session preview resources.
Open-source AI gateway that can connect to downstream MCP servers and expose their aggregated tools through a single HTTP or SSE MCP endpoint for Claude Desktop, Cursor, and other MCP clients.
Docker's MCP CLI plugin and gateway for running catalog, OCI, registry, or local-file MCP servers in containers and exposing them to Claude, Cursor, VS Code, and other MCP clients through a shared gateway profile.
✓Microsoft MCP Gateway can deploy, update, delete, and route MCP server adapters in Kubernetes through its management API.
The dynamic `/mcp` tool router can route tool calls to registered tool servers, so tool definitions and execution endpoints must be reviewed before registration.
Adapter and tool write access is limited to the creator or `mcp.admin`, while read access depends on creator, admin, and configured required roles.
The optional agents and sessions subsystem is documented as preview and single-replica; built-in bash and file tools run in the gateway pod and are not a production sandbox.
Proxying local stdio servers into remotely accessible services can expose local tools and workload identity permissions if access controls are too broad.
✓Bifrost can expose all selected downstream MCP tools through one `/mcp` gateway endpoint, so treat the endpoint like an access layer for every connected tool.
The docs state that default LLM tool calls are suggestions until an explicit tool execution API call is made, but agent mode can enable configured automatic execution.
Gateway-mode auto-approval is controlled by the external MCP host, such as Claude Desktop, Cursor, Cline, or a custom client, not by Bifrost's `tools_to_auto_execute` setting.
Stdio connections spawn local commands inside the Bifrost runtime; Docker deployments need images that include the requested executables.
Use virtual keys, per-tool allowlists, auth headers, OAuth, per-user credentials, and network controls to limit which clients can reach high-impact tools.
✓Docker MCP Gateway can start and route multiple MCP servers, so each connected client inherits the permissions of every enabled server and tool.
Container isolation reduces host exposure, but Docker Engine or Docker socket access is still highly privileged and should be limited to trusted users.
The gateway supports tool allowlists, CPU limits, memory limits, network blocking, secret blocking, image signature verification, and interceptors; review defaults before production use.
Catalog, profile, local-file, and registry references can change which servers run behind the gateway, especially when watch mode or shared profiles are enabled.
Tool-call logging is enabled by default in the documented flags, so avoid routing secrets or sensitive payloads unless logging and retention are controlled.
✓MetaMCP can start, aggregate, and expose multiple downstream MCP servers through a single managed endpoint.
Public endpoints and public API keys can expose tool surfaces broadly if bootstrap settings or UI registration controls are left permissive.
The README notes that APP_URL and CORS settings must match the URL used to access the service.
Stdio-only clients generally need a proxy such as `mcp-proxy` to reach MetaMCP's remote endpoints.
Rate limits, endpoint ownership, namespace visibility, OIDC, and registration controls should be configured before production use.
Privacy notes
✓The gateway may process bearer tokens, Entra ID role claims, adapter metadata, registered tool schemas, session IDs, MCP requests, tool arguments, tool results, logs, container image names, environment variables, and Kubernetes deployment status.
Adapter logs and session streams can reveal prompts, tool inputs, tool outputs, upstream MCP responses, and internal service names.
Workload identity, Azure resource access, Foundry settings, and MCP proxy environment variables can expose cloud permissions if logged or shared.
Store tokens, role assignments, registry credentials, deployment payloads, and model provider settings in controlled secrets rather than committed examples.
✓Bifrost may process provider prompts, model responses, MCP tool names, tool arguments, tool results, headers, virtual keys, OAuth tokens, per-user credentials, logs, traces, metrics, and downstream server metadata.
Per-user auth stores credentials against a signed-in user, virtual key, or session identity; review credential lifecycle, revocation, and orphaned-session behavior.
Logs, config stores, provider settings, MCP sessions, and gateway analytics can contain sensitive operational or user data.
Keep real provider keys, virtual keys, OAuth secrets, MCP endpoint URLs, and upstream service credentials in environment variables or secret stores, not committed config.
✓Docker MCP Gateway may process MCP server definitions, catalog entries, profile exports, local server files, secrets, OAuth tokens, tool names, tool arguments, tool outputs, logs, container metadata, and Docker Engine metadata.
Secrets may come from Docker Desktop secrets or `.env` fallback files; keep those stores out of version control and restrict filesystem permissions.
Tool outputs can include local files, API responses, credentials, account data, or infrastructure details depending on the enabled downstream MCP servers.
Exported profiles and catalogs can reveal internal server names, image references, allowed tools, configuration values, and service endpoints.
✓MetaMCP can receive prompts, tool names, tool arguments, resource data, downstream MCP responses, endpoint metadata, API keys, OAuth tokens, user identifiers, and logs.
Downstream stdio server environment variables may include secrets that are resolved from the MetaMCP container environment.
Postgres persistence, file logs, bootstrap configuration, API keys, namespace definitions, and endpoint settings may retain sensitive operational data.
Do not commit real `.env` files, bootstrap passwords, API keys, OIDC secrets, downstream service credentials, or exported gateway configs.
Prerequisites
Kubernetes cluster access with permission to deploy gateway, adapter, tool router, and sample MCP server workloads.
.NET 8 SDK, Docker Desktop, local registry, and Kubernetes enabled for the documented local deployment flow.
MCP server images built and pushed to the registry used by the gateway deployment.
Bearer authentication, Entra ID app roles, `mcp.admin`, and per-resource `requiredRoles` configured before exposing management APIs.
Node.js with `npx`, Docker, or another supported Bifrost Gateway deployment path.
Bifrost Gateway version `v1.4.0-prerelease1` or newer for MCP gateway mode.
Downstream MCP server commands or HTTP/SSE endpoint URLs prepared before registering clients.
Provider API keys, virtual keys, gateway auth settings, and governance policies reviewed before sharing the endpoint.
Docker Desktop `4.59+` with the MCP Toolkit feature enabled, or the Docker MCP CLI plugin built and installed independently.
Docker Engine access for running containerized MCP servers and the gateway.
MCP server sources prepared from Docker MCP Catalog entries, OCI images, MCP Registry entries, or local YAML/JSON server files.
Profiles feature enabled when using `docker mcp profile` and profile-based gateway runs outside Docker Desktop.
Docker and Docker Compose available for the recommended deployment.
Postgres storage, app URL, CORS, bootstrap users, API keys, and registration settings reviewed before first start.
Downstream MCP server commands, environment variables, and secrets prepared for the MetaMCP container runtime.