local-only server
The server can only run on the client’s local machine because it depends on local resources.
Integrations
Servidor Docker MCP
Un potente servidor de Protocolo de Contexto de Modelo (MCP) que ejecuta código en contenedores Docker aislados y devuelve los resultados a modelos de lenguaje como Claude.
Características
- Ejecución de código aislado : ejecute código en contenedores Docker separados de su sistema principal
- Compatibilidad con varios idiomas : ejecute código en cualquier idioma con una imagen de Docker
- Compatibilidad con scripts complejos : ejecute comandos simples y scripts completos de varias líneas
- Gestión de paquetes : instale dependencias mediante pip, npm, apt-get o apk
- Gestión de contenedores : cree, enumere y limpie contenedores Docker fácilmente
- Manejo robusto de errores : gestión elegante de tiempos de espera y mecanismos de respaldo
- Salida colorida : Respuesta de consola clara y codificada por colores
Requisitos
- Python 3.9+
- Docker instalado y en ejecución
- biblioteca fastmcp
Instalación
- Clonar este repositorio:Copy
- Crear un entorno virtual:Copy
- Instalar los paquetes necesarios:Copy
Uso
Ejecución del inspector MCP
Para probar y explorar la funcionalidad del servidor:
La interfaz de MCP Inspector se abrirá en su navegador en http://localhost:5173 .
Herramientas disponibles
El servidor Docker MCP proporciona las siguientes herramientas:
1. Lista de contenedores
Enumera todos los contenedores Docker y sus detalles:
- Parámetros :
show_all
: (opcional) Si se deben mostrar todos los contenedores, incluidos los detenidos (valor predeterminado: Verdadero)
2. Crear contenedor
Crea e inicia un contenedor Docker con dependencias opcionales:
- Parámetros :
image
: La imagen de Docker que se utilizará (por ejemplo, "python:3.9-slim", "node:16")container_name
: Un nombre único para el contenedordependencies
: (Opcional) Lista separada por espacios de paquetes para instalar (por ejemplo, "numpy pandas", "express lodash")
3. Agregar dependencias
Instala paquetes adicionales en un contenedor Docker existente:
- Parámetros :
container_name
: El nombre del contenedor de destinodependencies
: Lista separada por espacios de paquetes para instalar
4. Ejecutar código
Ejecuta un comando dentro de un contenedor Docker en ejecución:
- Parámetros :
container_name
: El nombre del contenedor de destinocommand
: El comando a ejecutar dentro del contenedor
5. Ejecutar script de Python
Ejecuta un script de Python de varias líneas dentro de un contenedor Docker en ejecución:
- Parámetros :
container_name
: El nombre del contenedor de destinoscript_content
: El contenido completo del script de Pythonscript_args
: argumentos opcionales para pasar al script
6. Contenedor de limpieza
Detiene y elimina un contenedor Docker:
- Parámetros :
container_name
: El nombre del contenedor a limpiar
Ejemplos
Ejemplo de flujo de trabajo básico
Ejemplo de análisis de datos en Python
Ejemplo de Node.js
Soporte del administrador de paquetes
El servidor Docker MCP detecta y utiliza automáticamente el administrador de paquetes adecuado:
- Contenedores de Python : usos de
pip
- Contenedores Node.js : utiliza
npm
- Contenedores Debian/Ubuntu : utiliza
apt-get
- Contenedores alpinos : Usos de
apk
Para los contenedores donde el administrador de paquetes no es evidente a partir del nombre de la imagen, el servidor intenta detectar los administradores de paquetes disponibles.
Integración con Claude y otros LLM
Este servidor MCP se puede integrar con Claude y otros LLM compatibles con el Protocolo de Contexto de Modelo. Utilice el comando fastmcp install
para registrarlo con Claude:
Solución de problemas
- Puerto ya en uso : si ve errores de "Dirección ya en uso", asegúrese de que no haya otras instancias de MCP Inspector en ejecución.
- Problemas de conexión de Docker : verifique que Docker se esté ejecutando con
docker --version
. - Tiempos de espera de los contenedores : el servidor incluye mecanismos de respaldo para los contenedores que no responden dentro de los plazos esperados.
- Errores de instalación del paquete : verifique que el nombre del paquete sea correcto para el administrador de paquetes especificado.
- No se encontraron contenedores : si list_containers no muestra resultados, es posible que Docker aún no tenga ningún contenedor creado.
Consideraciones de seguridad
Este servidor ejecuta código en contenedores Docker, lo que proporciona aislamiento del sistema host. Sin embargo, tenga cuidado:
- No exponga este servidor públicamente sin medidas de seguridad adicionales
- Tenga cuidado al montar volúmenes de host en contenedores
- Considere los límites de recursos para los contenedores para evitar ataques DoS
Licencia
Contribuyendo
¡Agradecemos sus contribuciones! No dude en enviar una solicitud de incorporación de cambios.
This server cannot be installed
Facilita la ejecución de código aislado dentro de contenedores Docker, lo que permite la ejecución segura de scripts en múltiples idiomas y la integración con modelos de lenguaje como Claude a través del Protocolo de contexto de modelo.
- Features
- Requirements
- Installation
- Usage
- Package Manager Support
- Integrating with Claude and Other LLMs
- Troubleshooting
- Security Considerations
- License
- Contributing