mcp-server-docker

by Freezeu
Verified
MIT License
2

Integrations

  • Enables interaction with Docker Desktop on Windows, providing tools for container lifecycle management, network management, and image management, allowing users to create, start, stop, and remove containers, manage Docker networks, and build, pull, push, and tag images.

Servidor Docker MCP

El servidor Docker MCP es un servidor de protocolo de contexto de modelo (MCP) que proporciona una integración perfecta con Docker Desktop en Windows, lo que permite capacidades avanzadas de automatización e interacción para desarrolladores y herramientas.

Prerrequisitos

  1. Instale Docker Desktop para Windows desde la página de descarga oficial de Docker.
  2. En Docker Desktop, vaya a Configuración > General y marque la casilla
    "Exponer el demonio en tcp://localhost:2375 sin TLS" .
    Esto es necesario para que el servidor MCP se comunique con Docker Desktop.

    💡 Consejo: Puedes verificar que el puerto esté expuesto correctamente abriendo
    http://localhost:2375/version en su navegador. Si la configuración es correcta,
    Debería ver una respuesta JSON con la información de la versión de Docker. Si tiene problemas, consulte esta discusión para encontrar una posible solución: WSL y Docker para Windows: No se puede conectar al demonio de Docker.

Instalación

Uso con Claude Desktop

{ "mcpServers": { "docker-mcp-stdio": { "command": "docker", "args": [ "run", "-i", "--rm", "freezeolo/docker-mcp-server" ] } } }

Herramientas

Completado 🛠️ En progresoPlan

Gestión del ciclo de vida de los contenedores ✅

  • list_containers - Obtener la lista de contenedores ✅
  • get_container_info - Obtener detalles de un contenedor específico ✅
    • container_id : ID del contenedor (cadena, obligatoria)
  • start_container - Iniciar un contenedor ✅
    • container_id : ID del contenedor (cadena, obligatoria)
  • restart_container - Reiniciar un contenedor ✅
    • container_id : ID del contenedor (cadena, obligatoria)
  • stop_container - Detener un contenedor ✅
    • container_id : ID del contenedor (cadena, obligatoria)
  • remove_container - Eliminar un contenedor ✅
    • container_id : ID del contenedor (cadena, obligatoria)
  • create_container - Crea un nuevo contenedor ✅
    • imageName : Nombre de la imagen (cadena, obligatoria)
    • containerName : Nombre del contenedor (cadena, obligatoria)
    • command : Comando a ejecutar (cadena, opcional)
    • env : Variables de entorno (cadena[], opcional)
    • ports : enlaces de puertos (cadena[], opcional)
    • volumes : enlaces de volumen (cadena[], opcional)
    • network : Nombre de la red (cadena, opcional)
    • restartPolicy : Política de reinicio (cadena, opcional)

Gestión de red ✅

  • list_networks - Listar todas las redes ✅
  • get_network_info - Obtener información de la red ✅
    • networkId : ID de red (cadena, obligatoria)
  • create_network - Crea una nueva red ✅
    • networkName : Nombre de la red (cadena, obligatoria)
    • driver : controlador de red (cadena, obligatorio)
    • subnet : CIDR de subred (cadena, obligatoria)
    • gateway : IP de la puerta de enlace (cadena, obligatoria)
  • connect_container_to_network - Conectar el contenedor a la red ✅
    • containerId : ID del contenedor (cadena, obligatoria)
    • networkId : ID de red (cadena, obligatoria)
  • disconnect_container_from_network - Desconectar el contenedor de la red ✅
    • containerId : ID del contenedor (cadena, obligatoria)
    • networkId : ID de red (cadena, obligatoria)
  • remove_network - Eliminar una red ✅
    • networkId : ID de red (cadena, obligatoria)
  • get_network_containers - Obtener contenedores en una red ✅
    • networkId : ID de red (cadena, obligatoria)

Gestión de imágenes ✅

  • list_images - Lista todas las imágenes ✅
  • pull_image - Extrae una imagen del registro ✅
    • imageName : Nombre de la imagen con etiqueta (cadena, obligatoria)
  • push_image - Envía una imagen al registro ✅
    • imageName : Nombre de la imagen con etiqueta (cadena, obligatoria)
  • remove_image - Eliminar una imagen ✅
    • imageId : ID de la imagen (cadena, obligatoria)
    • force : Fuerza la eliminación (booleano, opcional)
  • tag_image - Etiqueta una imagen con múltiples etiquetas ✅
    • imageId : ID de la imagen (cadena, obligatoria)
    • repository : Nombre del repositorio (cadena, obligatorio)
    • tags : Matriz de etiquetas (cadena[], obligatoria)
  • build_image - Crea una imagen desde Dockerfile ✅
    • dockerfilePath : Ruta al Dockerfile (cadena, obligatoria)
    • repository : Nombre del repositorio (cadena, obligatorio)
    • tags : Matriz de etiquetas (cadena[], obligatoria)
  • get_image_details - Obtener detalles de la imagen ✅
    • imageId : ID de la imagen (cadena, obligatoria)

Preguntas frecuentes

P: ¿Cómo instalo el proyecto?

A: Sigue los pasos de la sección de Instalación . Asegúrate de tener las dependencias necesarias.

Licencia

Este proyecto está licenciado bajo los términos de la licencia de código abierto del MIT. Consulte los términos completos en el MIT .

ID: lb2oprgxzl