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

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

-
license - not tested
Not graded
quality - not tested
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

  • Free MCP tools: the only MCP linter, health checks, cost estimation, and trust evaluation.

  • Official Sevalla MCP — full PaaS API access through just 2 tools.

  • 34 production API tools over one hosted MCP endpoint.

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/thargy/docker-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server