Skip to content

Integración con MCP ​

DockerSwarm

Dozzle es compatible con el Model Context Protocol (MCP), que permite a los asistentes de programación con IA interactuar con tus contenedores de Docker. Al activarlo, Dozzle expone un endpoint MCP en /api/mcp mediante el transporte Streamable HTTP, servido desde el mismo contenedor: no hacen falta procesos adicionales ni sidecars.

Esta función está desactivada por defecto. Para activarla, pon el flag --enable-mcp o la variable de entorno DOZZLE_ENABLE_MCP a true.

sh
docker run --volume=/var/run/docker.sock:/var/run/docker.sock -p 8080:8080 amir20/dozzle --enable-mcp
yaml
services:
  dozzle:
    image: amir20/dozzle:latest
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock
    ports:
      - 8080:8080
    environment:
      DOZZLE_ENABLE_MCP: true

Herramientas disponibles ​

Todas las herramientas son de solo lectura y no modifican los contenedores.

HerramientaDescripción
list_containersLista todos los contenedores de todos los hosts. Admite un filtro state opcional.
get_container_logsObtiene logs estructurados con niveles detectados, análisis de JSON y agrupación multilínea.
search_container_logsBusca una palabra o frase en los logs de un contenedor. Devuelve solo las coincidencias.
list_hostsLista todos los hosts de Docker conectados.
get_container_statsObtiene el historial de uso de CPU y memoria de un contenedor.

Configurar clientes MCP ​

VS Code (GitHub Copilot / Copilot Chat) ​

Añade esto a tu .vscode/mcp.json o a la configuración MCP de usuario:

json
{
  "servers": {
    "dozzle": {
      "type": "http",
      "url": "http://localhost:8080/api/mcp"
    }
  }
}

Claude Desktop ​

Añade esto a la configuración MCP de Claude Desktop:

json
{
  "mcpServers": {
    "dozzle": {
      "type": "streamable-http",
      "url": "http://localhost:8080/api/mcp"
    }
  }
}

NOTE

Sustituye localhost:8080 por la dirección de tu instancia de Dozzle. Si Dozzle usa una ruta base personalizada (por ejemplo, --base /dozzle), el endpoint MCP estará en /dozzle/api/mcp.

Autenticación ​

El endpoint MCP forma parte del grupo de API autenticada. Cuando la autenticación está activada, los clientes MCP deben aportar credenciales válidas.

Autenticación simple ​

Con --auth-provider simple, los clientes MCP tienen que incluir un token JWT válido en la cabecera Authorization. Para obtener un token:

  1. Envía una petición POST a /api/token con tu usuario y contraseña.
  2. Configura tu cliente MCP para que envíe el token como cabecera Bearer.

Por ejemplo, en la configuración MCP de VS Code:

json
{
  "servers": {
    "dozzle": {
      "type": "http",
      "url": "http://localhost:8080/api/mcp",
      "headers": {
        "Authorization": "Bearer <your-jwt-token>"
      }
    }
  }
}

Autenticación por proxy ​

Con --auth-provider forward-proxy, el proxy inverso que hay delante de Dozzle se encarga de la autenticación e inyecta las cabeceras correspondientes. Los clientes MCP deben conectarse a través de ese mismo proxy y la autenticación se resuelve de forma transparente.

Sin autenticación ​

Si no hay ningún proveedor de autenticación configurado (lo predeterminado), el endpoint MCP es de acceso público. No hace falta configurar nada más.

Publicado bajo la licencia MIT. Código abierto y patrocinado por Docker OSS.