Skip to main content
mcpSource-backed
Docker MCP Gateway logo

Docker MCP Gateway

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.

by docker · submitted by oktofeesh1·added 2026-06-06·
Review first review before installing

Open the source and read safety notes before installing.

Citation facts

Source-backed facts for citing this resource, derived directly from the registry — also available as plain text for AI assistants.

Source URLs
https://github.com/docker/mcp-gateway/blob/main/docs/mcp-gateway.md, https://github.com/docker/mcp-gateway
Brand
Docker MCP Gateway
Brand domain
docker.com
Brand asset source
brandfetch
Safety notes
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.
Privacy notes
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.
Author
docker
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.

    Pending
  • Baseline comparison available

    No baseline peer selected yet.

    Pending
  • Diverging trust signals identified

    No major trust-signal divergence found.

    Pending

Setup at a glance

CLI install

Copy-ready — paste the snippet to get started.

20 minutes

Adoption plan

Balanced adoption plan

Current risk score 24/100. Use staged verification before broader rollout.

Risk 24

Pre-adoption checks

Validate source and review signals before any execution.

  • Confirm source provenanceRequired

    Source URL/provenance metadata is present.

    Done
  • Confirm metadata review state

    No review metadata found; increase manual validation.

    Pending
  • Verify install payload

    Install/config payload exists and can be inspected.

    Done

Security checks

Confirm safety, privacy, and package integrity signals.

  • Review safety notesRequired

    Safety notes are present.

    Done
  • Review privacy notesRequired

    Privacy notes are present.

    Done
  • Verify package integrity metadata

    No package verification/checksum metadata.

    Pending

Rollout

Adopt in controlled steps based on the selected plan.

  • Run in isolated sandbox firstRequired

    Use a constrained sandbox and observe behavior across multiple tasks.

    Pending
  • Roll out graduallyRequired

    Roll out to a small cohort before wider usage.

    Pending
  • Set monitoring and fallback

    Define rollback path and monitor errors after adoption.

    Pending

Evidence readiness

Evidence readiness matrix · balanced

Missing required evidence: Metadata review. Risk score 31.

Risk 31

Source provenance

Present

Source repository/provenance is listed.

Required in this preset

Metadata review

Missing

Review metadata is missing.

Required in this preset

Safety notes

Present

Safety notes are present.

Required in this preset

Privacy notes

Present

Privacy notes are present.

Optional in this preset

Package integrity

Missing

Package integrity metadata is missing.

Optional in this preset

Install payload

Present

Install payload is available.

Required in this preset

Required gaps: Metadata review

Decision timeline

Decision timeline · balanced

Blocking gaps: Check metadata review status. Risk 28.

Risk 28

triage

Confirm source provenanceRequired

Source/provenance metadata is available.

Done

triage

Check metadata review statusRequired

Review metadata is missing.

Pending

verify

Review safety notesRequired

Safety notes are available.

Done

verify

Review privacy notes

Privacy notes are available.

Done

verify

Validate package integrity metadata

Package integrity metadata is missing.

Pending

rollout

Verify install payload and commandsRequired

Install payload is available.

Done

Blockers: Check metadata review status

Prerequisite readiness

Prerequisite readiness

5 prerequisites to line up before setup. Have accounts and credentials ready first.

0/5 ready
Account & credentials1Install & runtime420 minutes

Safety & privacy surface

Safety & privacy surface

5 safety and 4 privacy notes across 5 risk areas. Review closely: credentials & tokens, permissions & scopes, network access.

5 areas
  • SafetyPermissions & scopesDocker MCP Gateway can start and route multiple MCP servers, so each connected client inherits the permissions of every enabled server and tool.
  • SafetyGeneralContainer isolation reduces host exposure, but Docker Engine or Docker socket access is still highly privileged and should be limited to trusted users.
  • SafetyCredentials & tokensThe gateway supports tool allowlists, CPU limits, memory limits, network blocking, secret blocking, image signature verification, and interceptors; review defaults before production use.
  • SafetyLocal filesCatalog, profile, local-file, and registry references can change which servers run behind the gateway, especially when watch mode or shared profiles are enabled.
  • SafetyCredentials & tokensTool-call logging is enabled by default in the documented flags, so avoid routing secrets or sensitive payloads unless logging and retention are controlled.
  • PrivacyCredentials & tokensDocker 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.
  • PrivacyCredentials & tokensSecrets may come from Docker Desktop secrets or `.env` fallback files; keep those stores out of version control and restrict filesystem permissions.
  • PrivacyCredentials & tokensTool outputs can include local files, API responses, credentials, account data, or infrastructure details depending on the enabled downstream MCP servers.
  • PrivacyNetwork accessExported profiles and catalogs can reveal internal server names, image references, allowed tools, configuration values, and service endpoints.

Safety notes

  • 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.

Privacy notes

  • 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.

Prerequisites

  • 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.
  • Secrets, OAuth flows, allowed tools, network policy, filesystem mounts, CPU, memory, and image signature policy reviewed before sharing a gateway.

Schema details

Install type
cli
Troubleshooting
No
Source repository stats
Scope
Source repo
Collection metadata
Estimated setup
20 minutes
Difficulty
advanced
Full copyable content
docker mcp gateway run --profile dev-tools

About this resource

Content

Docker MCP Gateway is the open-source Docker CLI plugin and gateway behind Docker Desktop's MCP Toolkit. It runs selected MCP servers in containers, groups them through profiles, and exposes them to MCP clients through one gateway command or network transport.

The repository documents gateway runs over stdio by default, plus SSE or streaming transports when serving one or more clients over a TCP port. Servers can come from Docker MCP Catalog references, OCI images, MCP Registry entries, or local server definition files.

Source Review

These sources were reviewed on 2026-06-06. Prefer the live repository, README, gateway guide, security guide, profiles guide, generated command reference, Docker image page, and license file for current gateway behavior, feature flags, deployment options, and security controls.

Features

  • Run MCP servers inside Docker containers with CPU and memory limits.
  • Expose a unified MCP gateway over stdio, SSE, or streaming transports.
  • Organize MCP servers into reusable profiles for client-specific tool sets.
  • Pull servers from Docker MCP Catalog, OCI images, MCP Registry entries, or local server files.
  • Connect clients such as Claude Desktop, Cursor, and VS Code to the selected profile.
  • Enable or disable selected tools per gateway run or profile.
  • Manage catalogs, server definitions, profile import/export, and OCI-backed profile sharing.
  • Handle secrets through Docker Desktop secrets or explicit fallback secret files.
  • Support OAuth flows for MCP servers that require service authentication.
  • Use logging, call tracing, network blocking, secret blocking, image signature verification, and interceptors.

Installation

Recent Docker Desktop versions include the Docker MCP CLI plugin when the MCP Toolkit feature is enabled. The repository also documents building and installing the plugin manually:

git clone https://github.com/docker/mcp-gateway.git
cd mcp-gateway
mkdir -p "$HOME/.docker/cli-plugins/"
make docker-mcp

Run the default stdio gateway with:

docker mcp gateway run

Connect Claude Desktop or another stdio MCP client with:

{
  "mcpServers": {
    "MCP_DOCKER": {
      "command": "docker",
      "args": [
        "mcp",
        "gateway",
        "run"
      ]
    }
  }
}

For shared client access, run the gateway with a port and streaming transport, or pass a profile, selected servers, selected tools, secret sources, and other gateway flags from the documented command reference.

Use Cases

  • Give Claude a single managed entrypoint to a curated Docker MCP Toolkit profile.
  • Run MCP servers from Docker MCP Catalog in isolated containers instead of directly on the host.
  • Share a team profile through exported profile files or OCI references.
  • Test one server image with docker mcp gateway run --server before adding it to a catalog.
  • Restrict risky tools with explicit tool allowlists before connecting a client.
  • Use the gateway's SSE or streaming transport for multi-client access.
  • Keep API keys in Docker Desktop secrets or a controlled secret file instead of ad hoc environment variables.
  • Review tool-call logs and container limits when evaluating an MCP server for production.

Safety and Privacy

Docker MCP Gateway is a control point for other MCP servers. It can reduce risk by running servers in containers, limiting CPU and memory, blocking secrets, blocking network access, enforcing selected tools, and checking image signatures. Those controls still depend on the chosen catalog entries, profiles, server files, gateway flags, Docker permissions, and client approval settings.

Treat Docker Engine access as privileged. A user or service that can run containers, mount host paths, access the Docker socket, or load arbitrary server definitions can affect the host. Review every server's volume mounts, allowed hosts, secrets, OAuth scopes, and enabled tools before connecting Claude or another agent client.

The gateway and its downstream servers can see tool arguments, tool outputs, logs, traces, catalog metadata, profile exports, container image names, Docker metadata, secrets, OAuth tokens, and local file paths. Keep exported profiles, catalogs, .env files, and logs out of public repositories.

Duplicate Check

No docker/mcp-gateway source entry or Docker MCP Gateway entry was found in content/mcp. The existing Docker MCP Server for Claude entry is distinct content about Docker API management from Claude rather than Docker's MCP Toolkit gateway and catalog runner.

Source citations

Add this badge to your README

Show that Docker MCP Gateway is listed on HeyClaude. Paste this Markdown into your README — it renders the badge and links back to this page.

Listed on HeyClaude
[![Listed on HeyClaude](https://heyclau.de/badge/mcp/docker-mcp-gateway.svg)](https://heyclau.de/entry/mcp/docker-mcp-gateway)

How it compares

Docker MCP Gateway side by side with 3 alternatives on trust, install, platform support, and disclosed safety notes — all from reviewed registry metadata.

Field

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.

Open dossier

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.

Open dossier

Dashboard, CLI, and gateway for centrally managing many MCP servers and exposing them as authenticated all-server, group, single-server, or smart routing endpoints.

Open dossier

AGPL-licensed MCP-native platform with a private MCP registry, MCP gateway, Kubernetes MCP orchestrator, access control, credential resolution, observability, and deterministic tool guardrails for shared AI deployments.

Open dossier
Next steps
Trust
Review statusNot reviewedNot reviewedNot reviewedNot reviewed
Package trustPackage not verifiedPackage not verifiedPackage not verifiedPackage not verified
Source provenanceSource-backedSource-backedSource-backedSource-backed
Submitteroktofeesh1oktofeesh1oktofeesh1oktofeesh1
Install riskReview firstReview firstReview firstReview first
Notes Safety ✓ Privacy ✓ Safety ✓ Privacy ✓ Safety ✓ Privacy ✓ Safety ✓ Privacy ✓
BrandDocker MCP Gateway logoDocker MCP GatewayBifrost logoBifrostMCPHub logoMCPHubArchestra logoArchestra
Categorymcpmcpmcpmcp
SourceSource-backedSource-backedSource-backedSource-backed
Authordockermaximhqsamanhappyarchestra-ai
Added2026-06-062026-06-062026-06-052026-06-06
Platforms
Harness
Source repo
Safety notesDocker 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.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.MCPHub centralizes many downstream MCP servers, so one hub endpoint can expose broad read, write, file, shell, browser, database, or account capabilities depending on the registered servers. The Docker command binds the dashboard and gateway to 127.0.0.1 by default; use a reverse proxy with TLS and explicit access controls before exposing MCPHub on a network interface. MCP endpoints require authentication by default; do not disable bearer authentication outside trusted local testing. Smart routing can discover and invoke tools by semantic similarity, so keep group visibility and bearer-key scopes narrow. Hot-swappable configuration can add, remove, or change downstream MCP server access while the hub is running. OAuth server mode, OAuth client mode, social login, and database mode introduce additional credential and session management responsibilities.Archestra is a platform/control-plane entry, not a single-purpose local MCP helper; admins can expose many MCP servers, agents, tools, and credentials through one gateway. The upstream quickstart mounts the host Docker socket so the platform can run MCP servers; treat that as highly privileged host access and avoid using it on sensitive machines without isolation. Self-hosted MCP servers may run as Kubernetes workloads with injected environment variables, secrets, images, network policies, and restart controls. Tool assignments, gateway visibility, credential resolution, custom headers, and load-tools-on-demand settings should be reviewed per team and environment. Deterministic tool guardrails can reduce some unsafe tool chains, but they depend on correct policies and do not make untrusted MCP servers safe by default.
Privacy notesDocker 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.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.MCPHub may handle prompts, tool names, tool arguments, tool results, server configs, resource data, bearer keys, OAuth tokens, login sessions, user identities, logs, and CLI command history. Mounted config files, data directories, database rows, vector indexes, generated passwords, and dashboard screenshots can reveal sensitive server names, environment variables, credentials, and tool schemas. Downstream MCP servers may forward private workspace, browser, database, cloud, ticketing, or account data through MCPHub to connected clients and model providers. Do not commit real `mcp_settings.json` files, bearer keys, OAuth secrets, social-login credentials, database URLs, generated admin passwords, or exported hub data.MCP server definitions, tool schemas, gateway tokens, upstream credentials, OAuth tokens, API keys, custom headers, logs, traces, and tool results may be stored or processed by the platform. Built-in observability, LLM proxy, chat, agents, and policy features can reveal prompts, tool arguments, tool outputs, token usage, user identities, team membership, and trace metadata. Registry entries and installations can use personal, team-scoped, or shared credentials; choose the narrowest scope that matches the use case. When external MCP clients call an Archestra gateway, downstream tool results can still be sent by the MCP client to the configured model provider.
Prerequisites
  • 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.
  • 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 available for the documented container deployment.
  • A reviewed `mcp_settings.json` file for the MCP servers the hub should launch or proxy.
  • A durable mounted data directory so credentials, generated passwords, sessions, and state survive restarts.
  • OpenSSL or another secure random generator available to create a unique administrator password.
  • Docker for local evaluation, or Kubernetes and Helm/Terraform-style deployment planning for production use.
  • Organization policy for which MCP servers, credentials, teams, environments, and external network destinations may be exposed.
  • LLM provider keys or local model configuration if using Archestra's built-in chat, agents, or LLM proxy features.
  • Admin review of the quickstart container command before mounting the Docker socket.
Install
docker mcp gateway run
npx -y @maximhq/bifrost
docker run -p 127.0.0.1:3000:3000 -v ./mcp_settings.json:/app/mcp_settings.json -v ./data:/app/data -e ADMIN_PASSWORD="$(openssl rand -hex 24)" samanhappy/mcphub
docker pull archestra/platform:latest
Config
{
  "mcpServers": {
    "MCP_DOCKER": {
      "command": "docker",
      "args": [
        "mcp",
        "gateway",
        "run"
      ]
    }
  }
}
{
  "mcpServers": {
    "bifrost": {
      "url": "BIFROST_MCP_URL",
      "headers": {
        "Authorization": "Bearer ${BIFROST_VIRTUAL_KEY}"
      },
      "type": "http"
    }
  }
}
Manual-only setup:
{
  "mcpServers": {
    "time": {
      "command": "npx",
      "args": ["-y", "time-mcp"]
    },
    "fetch": {
      "command": "uvx",
      "args": ["mcp-server-fetch"]
    }
  }
}
{
  "mcpServers": {
    "archestra": {
      "url": "LOCAL_ARCHESTRA_MCP_GATEWAY_URL",
      "headers": {
        "Authorization": "Bearer ARCHESTRA_GATEWAY_TOKEN"
      }
    }
  }
}
Citations
ClaimUnclaimedUnclaimedUnclaimedUnclaimed
Open 4 picks in the interactive comparison tool

Related guides

Signals

Loading live community signals…

More like this, weekly

A short, calm digest of reviewed Claude resources. Unsubscribe any time.