Docker MCP Server

Local setup required. This server has to be cloned and prepared on your machine before you register it in Claude Code.
1

Set the server up locally

Run this once to clone and prepare the server before adding it to Claude Code.

Run in terminal
npm install
2

Register it in Claude Code

After the local setup is done, run this command to point Claude Code at the built server.

Run in terminal
claude mcp add docker-mcp -- node "<FULL_PATH_TO_DOCKER_MCP>/dist/index.js"

Replace <FULL_PATH_TO_DOCKER_MCP>/dist/index.js with the actual folder you prepared in step 1.

README.md

Control Docker containers with natural language using Cline

Docker MCP Server

Servidor MCP para controlar Docker con lenguaje natural usando Cline y modelos gratuitos. Esta demostración trata de simular la automatización de la orquestación de contenedores en Docker.

Instalación

npm install

Configuración

1. Instalar Cline en VS Code

  • Abre VS Code
  • Ve a Extensiones (Ctrl+Shift+X)
  • Busca "Cline" e instálalo

2. Configurar modelo gratuito

Crea/edita %USERPROFILE%\.continue\config.json:

{
  "models": [
    {
      "title": "Kat Coder Pro",
      "provider": "openai",
      "model": "kat-coder-pro",
      "apiBase": "https://api.kat.ai/v1"
    }
  ],
  "mcpServers": {
    "docker": {
      "command": "node",
      "args": ["C:\\Users\\Rodri\\OneDrive\\Desktop\\Docker-MCP\\app\\index.js"]
    }
  }
}

3. Configurar Cline MCP

En VS Code, abre Cline → Settings → MCP Servers y pega:

{
  "mcpServers": {
    "docker": {
      "command": "node",
      "args": ["C:\\Users\\Rodri\\OneDrive\\Desktop\\Docker-MCP\\app\\index.js"]
    }
  }
}

Uso

  1. Abre Cline en VS Code
  2. Escribe comandos en lenguaje natural

Herramientas disponibles

  • create_containers: Crea múltiples contenedores Docker
  • list_containers: Lista todos los contenedores activos
  • delete_container: Elimina un contenedor por nombre

Ejemplos de prompts

  • "Crea 3 contenedores de nginx en el puerto 8080"
  • "Lista todos los contenedores"
  • "Elimina el contenedor ai_container_0"
  • "Crea 2 contenedores de redis en el puerto 6379"

Casos de uso y manejo de errores

✅ Casos exitosos

  • Prompt completo: "Crea 2 contenedores de nginx en puerto 8080"
  • Imagen con versión: "Crea 1 contenedor de postgres:15 en puerto 5432"
  • Eliminar contenedor: "Elimina el contenedor ai_container_1"

❌ Casos de error comunes

Parámetros faltantes
  • Prompt: "Crea contenedores de nginx"
  • Error: El modelo debe solicitar puerto y cantidad
  • Solución: Especificar todos los parámetros requeridos
Puerto ocupado
  • Problema: Crear contenedores en puerto ya usado
  • Comportamiento: Los puertos se incrementan automáticamente (8080, 8081, 8082...)
  • Ejemplo: Si pides 3 contenedores en puerto 8080, se crean en 8080, 8081, 8082
Imagen inexistente
  • Prompt: "Crea contenedor de imagen_falsa en puerto 3000"
  • Error: Docker no puede descargar la imagen
  • Mensaje: "❌ Error: [mensaje de Docker]"
Contenedor inexistente para eliminar
  • Prompt: "Elimina el contenedor que_no_existe"
  • Error: Docker no encuentra el contenedor
  • Mensaje: "❌ Error: No such container: que_no_existe"
Docker no ejecutándose
  • Problema: Docker Desktop cerrado
  • Error: "Cannot connect to the Docker daemon"
  • Solución: Iniciar Docker Desktop

Validaciones automáticas

  • Parámetros requeridos: image, count, port son obligatorios para crear contenedores
  • Tipos de datos: count debe ser número, port debe ser número
  • Nombres únicos: Los contenedores se nombran ai_container_0, ai_container_1, etc.
  • Puertos incrementales: Evita conflictos de puertos automáticamente

Requisitos

  • Node.js instalado
  • Docker Desktop ejecutándose
  • VS Code con extensión Cline

Tools (3)

create_containersCreates multiple Docker containers
list_containersLists all active Docker containers
delete_containerDeletes a container by name

Configuration

claude_desktop_config.json
{"mcpServers": {"docker": {"command": "node", "args": ["/path/to/Docker-MCP/app/index.js"]}}}

Try it

Crea 3 contenedores de nginx en el puerto 8080
Lista todos los contenedores
Elimina el contenedor ai_container_0
Crea 2 contenedores de redis en el puerto 6379

Frequently Asked Questions

What are the key features of Docker MCP Server?

Natural language container orchestration. Automatic port incrementing for conflict resolution. Automated container naming scheme. Integration with VS Code via Cline extension.

What can I use Docker MCP Server for?

Rapidly spinning up multiple service instances for testing. Managing container lifecycles without manual CLI commands. Automating development environment setup via AI prompts. Quickly auditing active container states.

How do I install Docker MCP Server?

Install Docker MCP Server by running: npm install

What MCP clients work with Docker MCP Server?

Docker MCP Server works with any MCP-compatible client including Claude Desktop, Claude Code, Cursor, and other editors with MCP support.

Turn this server into reusable context

Keep Docker MCP Server docs, env vars, and workflow notes in Conare so your agent carries them across sessions.

Need the old visual installer? Open Conare IDE.
Open Conare