Docker MCP Server
MCP server for Docker — containers, health checks, Compose, logs, monitoring for AI agents
5 stars91 downloads/wk
Reviews
Write oneNobody has reviewed Docker MCP Server yet.
If you have run it, two minutes of your experience saves the next person an afternoon.
Docker MCP Server tools (44, 13 write)
write = sends, deletes, buys or postsRead from the package source without running it. The installed server may list more.
build_imageBuild a Docker image from a Dockerfile or build context path.
check_healthwrite actionRun a health probe against a container. Supports HTTP, TCP, and exec probes. Auto-detects from container HEALTHCHECK if available.
compose_downStop and remove services defined in a docker-compose.yml file
compose_logsGet logs from Compose services
compose_psList services in a Compose project
compose_restartRestart Docker Compose services. Restart specific services or the entire stack.
compose_upStart services defined in a docker-compose.yml file
container_health_statusCheck health status, uptime, and restart count for all running Docker containers. Returns JSON with container name, state, health probe status (healthy/unhealthy/no-healthcheck), and restart count. Use this for a quick fleet health overview; for resource metrics use container_resource_usage instead. Returns an array of objects with name, id, state, status, health, uptime, restartCount, and image f
container_resource_usageMonitor CPU, memory, and network I/O across all running Docker containers. Returns sorted resource usage metrics with percentage breakdowns for each container. Use container_health_status for health probes; use resource_alert_check for threshold violations. Supports sort by cpu, memory, or network. Returns array of objects with name, id, cpu_percent, memory_usage_mb, memory_percent, network_rx_mb,
container_statsGet real-time resource usage statistics for a Docker container (CPU, memory, network, I/O).
copy_from_containerCopy a file from a Docker container to read its contents. Returns the file content as text along with metadata (size, permissions). Useful for inspecting config files, logs, or application state inside running containers.
copy_to_containerwrite actionWrite file content into a Docker container at the specified path. Overwrites existing files. Useful for injecting configuration files, scripts, or environment files into running or stopped containers.
create_containerwrite actionCreate a new Docker container from an image
create_volumewrite actionCreate a Docker volume with optional driver, labels, and options. Returns volume name, driver, and mountpoint.
disk_usageGet Docker disk usage breakdown: space used by images, containers, volumes, and build cache. Shows total and reclaimable space.
docker_infoGet Docker daemon system information: server version, OS, kernel, CPU count, memory total, storage driver, and running container/image counts.
exec_in_containerwrite actionExecute a command inside a running Docker container. Returns stdout, stderr, and exit code.
fleet_statusGet status overview of all Docker containers
inspect_containerGet detailed info about a Docker container
inspect_volumeInspect a Docker volume. Returns detailed info including name, driver, mountpoint, labels, scope, and usage data.
list_containersList Docker containers with optional filters
list_imagesList Docker images on the host
list_networksList Docker networks
list_volumesList Docker volumes
monitor_dashboardComprehensive Docker fleet dashboard in a single API call. Aggregates health status of all containers, top 5 CPU consumers, recent events (last 5 minutes), and threshold violations into one response. Use individual tools (container_health_status, container_resource_usage, watch_events) for targeted queries; use this for a complete fleet overview. Returns object with summary (total, running, health
prune_containerswrite actionRemove all stopped Docker containers. Returns the number of containers removed and reclaimed disk space. This is a destructive operation — stopped containers and their non-persisted data will be deleted. Use list_containers first to see what will be removed. Useful for cleanup after deployments or when disk space is low.
prune_imageswrite actionRemove unused Docker images (dangling and unreferenced). Returns the number of images deleted and reclaimed disk space. Only removes images not used by any container. Use list_images first to see what will be removed. Useful for reclaiming disk space after builds or when switching base images frequently.
prune_volumeswrite actionRemove all unused Docker volumes. Returns count of removed volumes and reclaimed space.
pull_imagePull a Docker image from a registry
recreate_containerRecreate a container with the same configuration (stop, remove, re-create). Useful for applying config changes.
remove_containerwrite actionRemove a Docker container
remove_imagewrite actionRemove a Docker image by name or ID. Use force to remove even if tagged.
remove_volumewrite actionRemove a Docker volume. Use force=true to remove even if in use by containers.
resource_alert_checkCheck all running Docker containers against configurable CPU%, memory%, and restart count thresholds. Returns containers that violate thresholds with specific metrics that triggered alerts. Use container_resource_usage for raw metrics; use this tool for automated alerting. Default thresholds: 80% CPU, 80% memory, 5 restarts. Returns { violations: [...], checked: N } or { message: 'All containers w
restart_containerRestart a Docker container
run_containerwrite actionCreate and start a new Docker container with one command. Supports image, env, ports, volumes, restart policy, and command override. Auto-pulls missing images.
search_logsSearch container logs by keyword
set_restart_policyChange the restart policy of a running container without recreating it. Use restart_container for an immediate restart; use this tool to change the policy (always, unless-stopped, on-failure, no) for future restarts. Returns a confirmation string on success. Idempotent: setting the same policy is a no-op. Returns an error string if the container does not exist.
start_containerStart a stopped Docker container
stop_containerStop a running Docker container
stream_logsGet logs from a single Docker container by ID or name. Use stream_logs for one container; use compose_logs for multi-service Compose stacks. Supports tail count (default 100 lines), since timestamp for filtering, and follow mode. Returns UTF-8 log text with multiplexed stream headers stripped, or 'No logs found.' when the container has no output. Read-only and safe to call repeatedly. Returns an e
update_containerwrite actionUpdate a Docker container's resource limits (CPU, memory, CPU shares). Requires the container to be stopped first. Returns the updated resource limits. Use this to right-size containers based on actual usage — set CPU limits to prevent runaway processes and memory limits to prevent OOM kills.
watch_eventsStream Docker daemon events (containers, images, networks)
watch_healthPoll a container's health status until it becomes healthy or times out. Useful for waiting on service startup.
Public scan report
scanner v0.1.9 · 2026-09-27 · same rubric, same numbers if you re-run it
- Code scan58 source files scanned13/25
- –Live reliabilityno gateway calls yet and no remote to proben/a
- –Tool poisoningtools not inspected (local package is not executed); not countedn/a
- Auth qualitylocal package, no credentials required12/15
- Maintenancelast push 95 days ago8/15
- Maintainer identityregistry namespace matches repository owner6/10
Findings (1)
- highShell command built from a string (injection risk)
exec.shell-concatdist/tools/compose.js: …path); try { const result = execSync(`docker compose -f "${filePath}" ${args.join(" ")}`, { encoding…
How Docker MCP Server compares
Against every graded Developer tools MCP server, from our own scans and uptime checks. Updated after each scan run.
- Safety score
- 60/100
- higher than 14% of 1,119 Developer tools servers
- Tools
- 44
- the typical Developer tools server has 7
- Tools that change things
- 30%
- typical: 5%. Fewer write tools means less an agent can break
- GitHub stars
- 5
- more than 78% of 855 Developer tools servers
- Downloads a week
- 91
- more than 56% of 436 Developer tools servers with a package
What its tools let an agent do: 27 read · 2 create · 7 change · 3 delete · 5 run or deploy
Install Docker MCP Server in Claude Code, Cursor or VS Code
Runs npx -y @supernova123/docker-mcp-server on your machine. Read the scan report first; the gateway never runs local packages.
claude mcp add docker-mcp-server -- npx -y @supernova123/docker-mcp-server
What the publisher says
From the Docker MCP Server repository's README, as published. We do not edit it. Read it on GitHub
@supernova123/docker-mcp-server
<!-- In awesome-mcp-servers -->
The Docker MCP server designed for agents that need their containers to stay running.
Runs locally. No API keys. No paid plan. Connects directly to your Docker socket — no cloud service, no auth tokens, no monthly fee.
Without this: Your agent deploys a container, it crashes at 3am, and nobody notices until the user complains. Compose stacks drift. Health checks are manual. Logs are scattered across terminals.
With this: Your agent checks health, watches for readiness, restarts crashed containers, and follows logs, all through a single MCP interface. Containers stay running because your agent knows how to keep them running.
Why This Server?
There are 11+ Docker MCP servers on npm. Most are stale, GPL-licensed, or only cover basic CRUD. This one is different:
Use Cases
Agent-managed deployments: Your agent deploys a new version, checks health, waits for readiness, then switches traffic. If the health check fails, it auto-rolls back.
Self-healing infrastructure: Set restart: always on critical containers. Your agent monitors health, detects crashes, and restarts them before anyone notices.
Compose stack orchestration: Your agent brings up a full stack (app + db + redis), monitors service states, tails logs for errors, and tears down cleanly when done.
Debugging sessions: Your agent execs into a container, runs diagnostics, streams logs with timestamp filters, and captures stats — all without SSH.
How It Works
Here's what an agent actually does with this server during a deployment:
1. Deploy: run_container(image="myapp:v2", ports={8080:80})
2. Health check: check_health(container="myapp", type="http", path="/ready")
3. Wait: watch_health(container="myapp", timeout=30)
4. Monitor: fleet_status() → see all containers, health states, uptime
5. Watch: watch_events(window=60) → detect crashes, restarts, health changes
6. Debug: search_logs(pattern="ERROR", containers=["myapp"])
7. Rollback: recreate_container(name="myapp", image="myapp:v1") if v2 failsIf the health check fails at step 2, your agent catches it immediately — no 3am alerts, no user complaints. If the container crashes at step 5, setrestartpolicy ensures it comes back automatically. The agent doesn't just deploy containers — it keeps them running.
Blog Posts
Shortened. The full README is on GitHub.
Nothing above is checked by us. What we check is on the safety report.
Docker MCP Server: common questions
- Is Docker MCP Server safe?
- With care: it is graded C, so read the findings first (60/100). Read the Docker MCP Server safety report
- How do I install Docker MCP Server?
- It runs on your machine. Copy the Claude Code, Cursor, VS Code or Claude Desktop config from the install section.
- Does Docker MCP Server need an API key?
- No secret keys are declared. It reads 1 setting from the environment.
- Is Docker MCP Server maintained?
- The last commit was 133 days ago (2026-06-24). The latest release is v0.3.5.
- What can I use instead of Docker MCP Server?
- Servers from other publishers that do the same job: maintenant MCP server, Pare Docker MCP server and Komodo MCP Server.
- How does Docker MCP Server compare with other Developer tools MCP servers?
- safety score 60/100 (higher than 14% of 1,119 Developer tools servers); tools 44 (the typical Developer tools server has 7); tools that change things 30% (typical: 5%. Fewer write tools means less an agent can break). Full comparison.
Alternatives to Docker MCP Server
Same job from other publishers: the closest match first, then the best rated.
- maintenantDocker monitoring for AI agents: logs, history, alerts. Can ack alerts; never touches containers.not reviewedEstablishedC
- Pare DockerPare Docker ג€” Structured Docker operations (ps, images, logs, build, compose) as typed JSON.not reviewedGrowingA
- Komodo MCP ServerMCP server for Komodo - manage Docker containers, servers, stacks, and deployments via AInot reviewedEstablishedB
- PodmanA Model Context Protocol (MCP) server for container runtimes (Podman and Docker)not reviewedGrowingA
- SentryMCP server for Sentry - error monitoring, issue tracking, and debugging for AI assistantsnot reviewedWidely usedA