MCP Directory

How to add Docker MCP Server to Claude Desktop

Community server to manage Docker containers, images, volumes, and Compose stacks via agents. Paste the config into ~/Library/Application Support/Claude/claude_desktop_config.json and restart Claude Desktop.

Last updated June 15, 2026 ยท 720โ˜… ยท stdio ยท no auth

Claude Desktop config for Docker MCP Server

uvx mcp-server-docker
{
  "mcpServers": {
    "docker-mcp-server": {
      "command": "uvx",
      "args": [
        "mcp-server-docker"
      ]
    }
  }
}

Requires `uv` (the Python package runner). Install it from https://docs.astral.sh/uv/ if `uvx` is not found.

Setup steps

  1. 1Open Claude Desktop โ†’ Settings โ†’ Developer โ†’ Edit Config (this opens ~/Library/Application Support/Claude/claude_desktop_config.json).
  2. 2Paste the Docker MCP Server config below under the top-level "mcpServers" key.
  3. 3Fill in any placeholder secrets (API keys, paths) in the snippet.
  4. 4Save the file, then fully quit and reopen Claude Desktop.
  5. 5Open a chat and confirm Docker MCP Server's tools appear under the ๐Ÿ”Œ tools menu.

Before you start

  • A running Docker daemon (local via the Docker socket, or a remote daemon reachable over SSH)
  • Python with the `uv`/`uvx` package manager (or Docker, to run the server itself as a container)
  • No API key required โ€” it uses your local Docker engine permissions
  • An MCP-capable client such as Claude Desktop

What Docker MCP Server can do in Claude Desktop

list_containers

List Docker containers, including stopped ones.

create_container

Create a container from an image without starting it.

run_container

Create and start a container in one step.

recreate_container

Stop, remove, and re-create a container (used by the compose flow).

start_container

Start an existing stopped container.

stop_container

Stop a running container.

remove_container

Remove a container.

fetch_container_logs

Retrieve logs from a container.

Security

Full access to the Docker daemon is effectively root-equivalent on the host, so only connect it to a Docker context you trust the agent to control. When containerized it requires mounting the Docker socket, which grants broad host privileges.

Docker MCP Server + Claude Desktop FAQ

Where is the Claude Desktop config file?

Claude Desktop reads MCP servers from ~/Library/Application Support/Claude/claude_desktop_config.json. Paste the Docker MCP Server config there under the "mcpServers" key and restart the client.

Is Docker MCP Server safe to use with Claude Desktop?

Full access to the Docker daemon is effectively root-equivalent on the host, so only connect it to a Docker context you trust the agent to control. When containerized it requires mounting the Docker socket, which grants broad host privileges.

Does it need an API key?

No. It talks directly to your local Docker daemon and inherits your Docker permissions. There is no token to configure.

Can it manage a remote Docker host?

Yes. It supports connecting to a remote Docker daemon over SSH, so you can drive a remote host from a local agent.

Can it run privileged containers?

No. The server intentionally does not support privileged options like --privileged or --cap-add/--cap-drop, and it warns against storing sensitive data in container configurations.

View repo Full Docker MCP Server page