Docker MCP

RAG & Memory 💻 Go ⚖️ MIT 🟢 Actively maintained
1.6k stars

Docker MCP is a Docker CLI plugin and gateway that simplifies running, managing, and deploying MCP (Model Context Protocol) servers. It solves lifecycle, security, and configuration challenges by containerizing servers and providing a unified interface for AI clients. It is for developers integrating MCP tools into production workflows.

✨ Key features

  • Runs MCP servers as isolated Docker containers.
  • Manages servers, profiles, catalogs, and tool allowlists.
  • Secures secrets via Docker Desktop secrets management.
  • Supports OAuth flows for service authentication.
  • Provides dynamic tool, prompt, and resource discovery.
  • Includes logging and call tracing for monitoring.

🎯 Use cases

  • Connect AI clients like VS Code, Cursor, or Claude Desktop to MCP servers.
  • Organize MCP servers into profiles for different development environments.
  • Share MCP server configurations across teams via OCI registries.
  • Run a gateway to serve multiple clients over SSE or streaming transports.
  • Manage secrets and OAuth credentials for MCP servers securely.

📦 Installation

🧰 Requirements: Requires Docker Desktop 4.59+ with MCP Toolkit enabled, or Docker daemon with DOCKER_MCP_IN_CONTAINER=1 for non-Desktop environments. Go 1.24+ for development.

Clone the repository
git clone https://github.com/docker/mcp-gateway.git
cd mcp-gateway
mkdir -p "$HOME/.docker/cli-plugins/"
Build and install the plugin
make docker-mcp

After installation, the plugin will be available as:

docker mcp --help

🚀 Usage

Create a profile and connect it to a client
docker mcp profile create --name dev-tools \
  --server catalog://mcp/docker-mcp-catalog/github \
  --connect cursor
Run the MCP gateway (stdio, using the default profile)
docker mcp gateway run

❓ FAQ

How do I run the MCP gateway without Docker Desktop feature flags?

Set the environment variable DOCKER_MCP_IN_CONTAINER=1 to bypass Desktop feature checks when the Docker daemon is active.

How do I enable profiles when using the CLI outside Docker Desktop?

Run docker mcp feature enable profiles to enable the profiles feature in non-Desktop environments.

How can I connect a client like Claude Code to the gateway?

Use docker mcp client connect claude-code --profile dev-tools --global to connect Claude Code to a profile.

How do I manage secrets for MCP servers?

Use docker mcp secret --help to manage secrets, and docker mcp oauth --help for OAuth flows.

📊 Repository

Stars★ 1,555
Forks🍴 271
Open issues🐛 135
Last commit🕒 Aug 26, 2026
Created📅 Apr 2025
Language💻 Go
License⚖️ MIT

🤖 Overview, features, install steps and FAQ were generated from the project's README on Sep 4, 2026. Always check the original source before running commands.