About @rog0x/mcp-docker-tools
@rog0x/mcp-docker-tools is an MCP server for AI agents to inspect Docker containers and images, analyze Dockerfiles and Compose configurations, and retrieve container logs.
Key features
- 01List container status and resource use
- 02View image sizes and layer counts
- 03Analyze Dockerfile practices and security
- 04Inspect Compose service configuration
- 05Filter and retrieve container logs
Use cases
- 01Check running or stopped containers
- 02Review image details and size
- 03Assess Dockerfiles and Compose files
- 04Find matching entries in container logs
MCP support
The server exposes five Docker inspection and analysis tools to MCP clients.
Configuration
Local server config is the same for every client. Copy it into your client’s MCP config file.
Tools
5Saved tool list · updated 3w ago
| Parameter | Type | Required | Description |
|---|---|---|---|
| all | boolean | No | If true, show all containers including stopped ones. Defaults to false (running only). |
| format | enum | No | Output format: 'table' for readable text, 'json' for structured data. Defaults to 'json'.table | json |
Details
From the project READMEmcp-docker-tools
Docker management tools for AI agents, built on the Model Context Protocol.
Provides five tools for inspecting containers, images, Dockerfiles, and Compose configurations — all accessible to LLMs through MCP.
Tools
| Tool | Description |
|---|---|
docker_container_list | List running or all containers with status, ports, image, created time, and resource usage (CPU, memory, network/block I/O) |
docker_image_list | List Docker images with size, tags, created date, and layer count |
docker_dockerfile_analyze | Analyze a Dockerfile for best practices: multi-stage builds, non-root user, layer caching, image size, security |
docker_compose_analyze | Analyze docker-compose.yml: services, ports, volumes, networks, health checks, dependencies, and improvement suggestions |
docker_container_logs | Get container logs with tail, keyword filter, time range, and timestamp support |
Prerequisites
- Node.js >= 18
- Docker CLI installed and accessible in PATH
- Docker daemon running (for container/image tools)
Installation
git clone <repo-url>
cd mcp-docker-tools
npm install
npm run build
Usage with Claude Desktop
Add to your Claude Desktop configuration (claude_desktop_config.json):
{
"mcpServers": {
"docker-tools": {
"command": "node",
"args": ["D:/products/mcp-servers/mcp-docker-tools/dist/index.js"]
}
}
}
Usage with Claude Code
claude mcp add docker-tools node D:/products/mcp-servers/mcp-docker-tools/dist/index.js
Or add to .claude/settings.json:
{
"mcpServers": {
"docker-tools": {
"command": "node",
"args": ["D:/products/mcp-servers/mcp-docker-tools/dist/index.js"]
}
}
}
Tool Examples
List running containers
{ "tool": "docker_container_list" }
List all containers including stopped
{ "tool": "docker_container_list", "args": { "all": true, "format": "table" } }
List images filtered by name
{ "tool": "docker_image_list", "args": { "filter": "node" } }
Analyze a Dockerfile
{
"tool": "docker_dockerfile_analyze",
"args": {
"content": "FROM node:20\nCOPY . .\nRUN npm install\nCMD [\"node\", \"index.js\"]"
}
}
Analyze docker-compose.yml
{
"tool": "docker_compose_analyze",
"args": {
"content": "services:\n web:\n image: nginx\n ports:\n - 80:80"
}
}
Get container logs
{
"tool": "docker_container_logs",
"args": { "container": "my-app", "tail": 50, "filter": "error" }
}
License
MIT
Comments
New to MCP?
From what the protocol is to installing your first server, these answers cover most first questions.
An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.