This guide shows how to use the Docker MCP Toolkit plugin with Clawdbot.
The Docker MCP server provides a single powerful tool:
Wraps the Docker CLI - accepts any Docker command as arguments.
Parameters:
args(array): Arguments to pass to the Docker command
List running containers:
You: "List my Docker containers"
Expected tool call:
{
"tool": "docker_docker",
"args": ["ps"]
}Show all containers (including stopped):
You: "Show all my Docker containers, including stopped ones"
Expected tool call:
{
"tool": "docker_docker",
"args": ["ps", "-a"]
}Inspect a container:
You: "Show me details about the open-webui container"
Expected tool call:
{
"tool": "docker_docker",
"args": ["inspect", "open-webui"]
}View container logs:
You: "Show me the logs for automaker-server"
Expected tool call:
{
"tool": "docker_docker",
"args": ["logs", "automaker-server"]
}Start/Stop containers:
You: "Stop the open-webui container"
Expected tool call:
{
"tool": "docker_docker",
"args": ["stop", "open-webui"]
}List images:
You: "What Docker images do I have?"
Expected tool call:
{
"tool": "docker_docker",
"args": ["images"]
}Pull an image:
You: "Pull the latest nginx image"
Expected tool call:
{
"tool": "docker_docker",
"args": ["pull", "nginx:latest"]
}Remove an image:
You: "Remove the unused postgres image"
Expected tool call:
{
"tool": "docker_docker",
"args": ["rmi", "postgres"]
}Docker version:
You: "What version of Docker am I running?"
Expected tool call:
{
"tool": "docker_docker",
"args": ["version"]
}Docker system info:
You: "Show me Docker system information"
Expected tool call:
{
"tool": "docker_docker",
"args": ["info"]
}Disk usage:
You: "How much disk space is Docker using?"
Expected tool call:
{
"tool": "docker_docker",
"args": ["system", "df"]
}List volumes:
You: "List all Docker volumes"
Expected tool call:
{
"tool": "docker_docker",
"args": ["volume", "ls"]
}List networks:
You: "Show me Docker networks"
Expected tool call:
{
"tool": "docker_docker",
"args": ["network", "ls"]
}Create a volume:
You: "Create a Docker volume named mydata"
Expected tool call:
{
"tool": "docker_docker",
"args": ["volume", "create", "mydata"]
}Start services:
You: "Start the services in docker-compose.yml"
Expected tool call:
{
"tool": "docker_docker",
"args": ["compose", "up", "-d"]
}Stop services:
You: "Stop all compose services"
Expected tool call:
{
"tool": "docker_docker",
"args": ["compose", "down"]
}Try this simple command in your Clawdbot chat:
You: "List my Docker containers"
Clawdbot should use the docker_docker tool to run docker ps and show you the results.
-
Check plugin loaded:
clawdbot plugins list | grep docker-mcpShould show:
loadedstatus -
Check Docker is accessible:
docker ps
Should list your containers
-
Test through Clawdbot: Ask Clawdbot to list containers, images, or show Docker info
When you ask Docker-related questions:
✅ Good: Clawdbot uses docker_docker tool and returns Docker CLI output
✅ Good: Formatting and explanation of Docker output
❌ Bad: "I don't have access to Docker" (plugin not loaded)
❌ Bad: Error messages about MCP connection (Docker MCP not running)
Check:
- Is Docker Desktop installed and running?
- Is Docker MCP Toolkit available? (
docker mcp --help) - Is the plugin enabled? (check
clawdbot.json) - Did you restart Clawdbot after installing?
Fix:
clawdbot plugins enable docker-mcp
clawdbot gateway restartCheck:
- Docker daemon is running:
docker ps - Docker MCP gateway can start:
docker mcp gateway run --dry-run
These are normal! Docker MCP checks for all possible secrets. Warnings about missing secrets don't affect functionality.
Only enable specific MCP servers:
{
"plugins": {
"entries": {
"docker-mcp": {
"enabled": true,
"config": {
"enabledServers": ["docker", "dockerhub"],
"timeout": 60000
}
}
}
}
}Enable detailed logging:
{
"plugins": {
"entries": {
"docker-mcp": {
"config": {
"debug": true
}
}
}
}
}Check logs after restart to see MCP connection details.
The default docker server provides CLI access only. It doesn't provide high-level semantic tools like "deploy an app" or "scale service to N replicas" - you need to construct the actual Docker commands.
As the Docker MCP ecosystem grows, additional servers may provide:
- Docker Compose semantic operations
- Docker Swarm management
- BuildKit build optimization
- Registry management
Enable new servers by adding them to enabledServers config.
Found a useful Docker operation pattern? Add it to this guide!
Submit PRs to: https://github.com/clawdbot/docker-mcp-plugin
Last updated: 2026-01-25