docker-mcp-server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| list_containersB | List Docker containers with optional filters (state, label, name). Returns container IDs, names, images, states, ports, and labels. |
| inspect_containerA | Get detailed configuration and state of a Docker container by ID or name. |
| start_containerA | Start a stopped Docker container by ID or name. |
| stop_containerA | Stop a running Docker container by ID or name with optional timeout. |
| restart_containerC | Restart a Docker container by ID or name with optional timeout. |
| remove_containerA | Remove a Docker container by ID or name. Use force to remove running containers. |
| recreate_containerA | Recreate a container with the same configuration (stop, remove, re-create). Useful for applying config changes. |
| run_containerA | Create and start a new Docker container with one command. Supports image, env, ports, volumes, restart policy, and command override. Auto-pulls missing images. |
| list_imagesA | List Docker images with optional filters. Returns image IDs, tags, sizes, and creation dates. |
| pull_imageB | Pull a Docker image from a registry. Returns pull progress events. |
| build_imageB | Build a Docker image from a Dockerfile or build context path. |
| remove_imageA | Remove a Docker image by name or ID. Use force to remove even if tagged. |
| compose_upB | Bring up Docker Compose services from a docker-compose.yml file. Optionally build images first. |
| compose_downA | Tear down Docker Compose services. Optionally remove named volumes. |
| compose_psB | List service states across a Docker Compose stack. |
| compose_logsC | Tail logs from Docker Compose services. Supports filtering by service and line count. |
| compose_restartB | Restart Docker Compose services. Restart specific services or the entire stack. |
| check_healthB | Run a health probe against a container. Supports HTTP, TCP, and exec probes. Auto-detects from container HEALTHCHECK if available. |
| watch_healthA | Poll a container's health status until it becomes healthy or times out. Useful for waiting on service startup. |
| set_restart_policyB | Change the restart policy of a running container without recreating it. |
| stream_logsC | Get logs from a Docker container. Supports tail count, timestamp filtering, and follow mode. |
| container_statsB | Get real-time resource usage statistics for a Docker container (CPU, memory, network, I/O). |
| exec_in_containerA | Execute a command inside a running Docker container. Returns stdout, stderr, and exit code. |
| list_networksA | List Docker networks with optional filter. Returns network IDs, names, drivers, and scopes. |
| list_volumesA | List Docker volumes with optional filter. Returns volume names, drivers, mount points, and labels. |
| container_health_statusA | Check health status, uptime, and restart count for all running Docker containers. Returns JSON with container name, state, health probe status, and restart count. |
| container_resource_usageA | Monitor CPU, memory, and network I/O across all running Docker containers. Returns sorted resource usage metrics with percentage breakdowns. |
| watch_eventsB | Stream Docker container events (start, stop, die, restart, health_status) over a configurable time window. Filter by specific container or event type. |
| search_logsA | Search Docker container logs across multiple containers using regex pattern matching. Returns matching log lines with container name and timestamp. |
| resource_alert_checkB | Alert when Docker containers exceed resource thresholds (CPU%, memory%, restart count). Returns violations with specific metrics that triggered alerts. |
| monitor_dashboardA | Comprehensive Docker fleet dashboard in a single API call. Returns health status, top resource consumers, recent events, and threshold violations. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 31 tools
Most tools have distinct container/image/compose purposes, but the health and monitoring cluster is crowded: check_health, watch_health, container_health_status, container_stats, container_resource_usage, resource_alert_check, and monitor_dashboard all overlap in status/resource concerns. Descriptions help separate them, but an agent could still easily pick the wrong tool for a health or monitoring task.
Many tools follow a clean verb_noun snake_case pattern like list_containers, start_container, and pull_image. However, the monitoring/health group breaks this with noun-first names like container_stats, container_health_status, and container_resource_usage, and the compose tools use a different style like compose_up and compose_down.
With 31 tools, this exceeds the 25-tool threshold for a well-scoped server. The count feels padded by overlapping health and monitoring tools that could reasonably be consolidated into fewer, more focused tools.
Container and image lifecycle coverage is strong, including run, inspect, start, stop, remove, build, pull, and compose operations. However, networks and volumes only have list operations with no create, update, or delete, and there are no prune, push, or tag operations, leaving notable gaps for a Docker management surface.