Skip to main content
Glama
thargy
by thargy

Docker MCP Server (docker-mcp)

Node.js Version License: MIT Architektur: Dpython [TypeScript

Der Model Context Protocol (MCP)-Server bietet leistungsstarke Tools zur Inspektion, Orchestrierung und Fehlerbehebung von Docker-Engine- und Docker-Compose-Umgebungen.

Der Server basiert auf @thargy/mcp-server-core und folgt der Deep Module-Philosophie von John Ousterhout (A Philosophy of Software Design).


1. Architekturvision: Deep Module vs. Tool-Bloat

Herkömmliche MCP-Server bilden Docker-CLI-Verben 1:1 ab, was zu über 25 oberflächlichen Tools führt, die die LLM-Kontextfenster aufblähen (4.000+ Prompt-Tokens pro Turn verbrauchen) und Halluzinationen verstärken.

docker-mcp stellt genau 6 konsolidierte, hochwirksame Tools mit polymorphen typisierten Aktions-Diskriminatoren bereit und verbraucht dabei <1.000 Tokens:

graph LR
    subgraph Clients ["MCP Clients"]
        Claude["Claude Desktop (Stdio)"]
        Agent["Antigravity / Coding Agents"]
        Gateway["mcp-gateway (SSE / Streamable HTTP)"]
    end

    subgraph DeepModule ["docker-mcp (Deep Module)"]
        T1["docker_containers"]
        T2["docker_compose"]
        T3["docker_images"]
        T4["docker_volumes"]
        T5["docker_networks"]
        T6["docker_system"]
        
        Seam["IDockerClient Seam"]
        Engine["DockerodeClient / InMemoryDockerClient"]
    end

    subgraph Host ["Docker Infrastructure"]
        Socket["/var/run/docker.sock"]
        RemoteTCP["tcp://remote-host:2376"]
        RemoteSSH["ssh://user@remote-host"]
    end

    Clients --> DeepModule
    DeepModule --> Seam
    Seam --> Engine
    Engine --> Host

Related MCP server: Docker MCP Server

2. Konsolidierter MCP-Tool-Katalog

Tool

Aktionen

Funktionen & Highlights

docker_containers

list, inspect, start, stop, restart, logs, stats, exec, remove

Name/Status-Regex-Filterung, Echtzeit-CPU/RAM-Berechnung, gemultiplexte stdout-/stderr-Log-Extraktion, Befehlsausführung, sichere Timeouts.

docker_compose

ps, up, down, restart, logs

Erkennung von Multi-Container-Stacks über Labels/Verzeichnisse, Lifecycle-Orchestrierung, Healthcheck-Bereitschaftsprüfung.

docker_images

list, inspect, pull, prune, remove

Image-Inventar, Formatierung der virtuellen Größe, Tag-Auflösung, Bereinigung verwaister Images.

docker_volumes

list, inspect, create, prune, remove

Katalog persistenter Volumes, Treiber-Inspektion, Bereinigung verwaister Volumes.

docker_networks

list, inspect, create, prune, remove

Topologie-Inspektion von Bridge-, Overlay- und macvlan-Netzwerken sowie Subnetz-Auflösung.

docker_system

info, df, prune, version, ping

Daemon-Healthcheck, Engine-Version, Aufschlüsselung des Speicherverbrauchs, systemweite Speicherbereinigung.


3. Schnellstart & Konfiguration

Umgebungsvariablen

Variable

Standardwert

Beschreibung

PORT

3008

HTTP/SSE-Listeningport

HOST

0.0.0.0

Bindungsadresse

MCP_TOKEN

optional

Geheimer Token für die Bearer-Authentifizierung über HTTP/SSE

DOCKER_SOCKET

/var/run/docker.sock

Pfad zum lokalen Unix-Docker-Socket

DOCKER_HOST

optional

Remote-Docker-TCP-URL (z. B. tcp://192.168.86.50:2376)

DOCKER_TLS_VERIFY

optional

TLS-Zertifikatsprüfung aktivieren (1 oder 0)

DOCKER_CERT_PATH

optional

Pfad zu den Client-TLS-Zertifikaten (ca.pem, cert.pem, key.pem)

Ausführen mit Stdio (Claude Desktop / lokale CLI)

{
  "mcpServers": {
    "docker": {
      "command": "node",
      "args": ["/Users/craigdean/Repos/docker-mcp/dist/src/index.js"],
      "env": {
        "DOCKER_SOCKET": "/var/run/docker.sock"
      }
    }
  }
}

Ausführen mit Docker Compose & mcp-gateway

docker compose up -d --build

Sie erreichen die HTTP/SSE-Schnittstelle unter http://localhost:3008/docker/mcp oder http://localhost:3008/docker/sse.


4. Tests & Codequalität

100 % der Unit-Tests werden mit InMemoryDockerClient ausgeführt, ohne dass Zugriff auf einen echten Docker-Socket erforderlich ist.

# Run unit tests
npm test

# Run test coverage (>85% required)
npm run test:coverage

# TypeScript compile check
npm run types:check

Lizenz

MIT © 2026 Craig Dean

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables remote Docker management over SSH via a local MCP server, providing tools to manage containers, images, Compose, and system resources.
    1
    GPL 3.0
  • A
    license
    Not graded
    quality
    D
    maintenance
    A comprehensive MCP server that provides advanced Docker operations through a unified interface with 16 MCP tools and 25+ CLI aliases, enabling secure container lifecycle management, multi-container orchestration, registry publishing, and system maintenance.
    19 npm
    15
    ISC
  • A
    license
    A
    quality
    C
    maintenance
    Wraps the Docker Engine API as MCP tools for container and image management. Reduces token consumption by providing typed tools with default summaries and field selection.
    17
    148 npm
    MIT