Skip to main content
Glama

MCP Docker Sandbox Interpreter

by svngoku

Intérprete de Docker Sandbox de MCP

Un entorno de ejecución de código seguro basado en Docker para el Protocolo de Contexto de Modelo (MCP).

Descripción general

Este proyecto proporciona un entorno de pruebas seguro para ejecutar código mediante MCP (Protocolo de Contexto de Modelo). Permite a los asistentes de IA ejecutar código de forma segura sin necesidad de acceder directamente al sistema host, ejecutando todo el código dentro de contenedores Docker aislados.

Características

  • Ejecución segura : el código se ejecuta en contenedores Docker aislados con estrictas limitaciones de seguridad.
  • Compatibilidad con varios idiomas : actualmente es compatible con Python con fácil extensibilidad para otros idiomas.
  • Limitaciones de recursos : restricciones de CPU y memoria para evitar el abuso
  • Integración MCP : Totalmente compatible con el Protocolo de Contexto de Modelo
  • Configuración automática : maneja la creación de contenedores, la instalación de dependencias y la limpieza

Requisitos

  • Docker (Escritorio o Motor)
  • Python 3.10+
  • SDK de MCP ( pip install mcp )
  • SDK de Python para Docker ( pip install docker )

Instalación

  1. Clonar este repositorio:
    git clone https://github.com/yourusername/mcp-docker-interpreter.git cd mcp-docker-interpreter
  2. Crear y activar un entorno virtual:
    python -m venv .venv source .venv/bin/activate # On Windows: .venv\Scripts\activate
  3. Instalar dependencias:
    pip install -r requirements.txt

Uso

Iniciando el servidor MCP

Inicie el servidor ejecutando:

# For Colima users: export DOCKER_HOST="unix:///Users/username/.colima/default/docker.sock" # Run the server uv run mcp dev main.py

Conexión a un asistente de IA

Puede conectar este servidor MCP a asistentes de IA que admitan el Protocolo de contexto de modelo:

Cursor

En Cursor, agregue lo siguiente a la configuración de MCP:

{ "mcpServers": { "docker-sandbox": { "command": "python", "args": ["/absolute/path/to/your/main.py"], "env": { "DOCKER_HOST": "unix:///path/to/your/docker.sock" } } } }

Reemplace las rutas con sus rutas de archivo reales.

Escritorio de Claude

De manera similar a Cursor, agregue la configuración a la configuración MCP de Claude Desktop.

Herramientas MCP

Este servidor MCP expone tres herramientas principales:

  1. initialize_sandbox : crea un nuevo contenedor Docker para la ejecución de código
    Arguments: - image: The Docker image to use (default: "alpine:latest")
  2. execute_code : ejecuta el código en el espacio aislado inicializado
    Arguments: - code: The code string to execute - language: Programming language (default: "python")
  3. stop_sandbox : detiene y elimina el contenedor
    No arguments needed

Cómo funciona

  1. Cuando se llama initialize_sandbox , el sistema:
    • Crea un contenedor Docker basado en Alpine Linux
    • Instala Python y otras dependencias
    • Establece restricciones de seguridad
  2. Cuando se llama execute_code :
    • El código se ejecuta dentro del contenedor aislado
    • Se capturan la salida estándar y los errores.
    • Los resultados se devuelven a la aplicación que realiza la llamada.
  3. Cuando se llama stop_sandbox :
    • Se detiene y se retira el contenedor.
    • Todos los recursos están liberados

Consideraciones de seguridad

Este sandbox implementa varias medidas de seguridad:

  • Los contenedores tienen un uso restringido de CPU y memoria
  • Los contenedores se ejecutan con privilegios mínimos
  • El acceso a la red está deshabilitado de forma predeterminada
  • Los contenedores son desechables y se limpian después de su uso.

Desarrollo

Estructura del proyecto

mcp-docker-interpreter/ ├── main.py # Main implementation of MCP server and Docker sandbox ├── requirements.txt # Project dependencies └── README.md # This file

Agregar nuevo soporte para idiomas

Para agregar soporte para un nuevo lenguaje de programación, modifique el método run_code en la clase DockerSandbox para manejar el nuevo lenguaje.

Solución de problemas

Problemas comunes

  1. Error de conexión de Docker :
    • Asegúrese de que Docker se esté ejecutando
    • Compruebe que la variable de entorno DOCKER_HOST esté configurada correctamente para su instalación de Docker
  2. La creación del contenedor falla :
    • Verifique que tenga permiso para crear contenedores Docker
    • Asegúrese de que la imagen base especificada sea accesible
  3. La ejecución del código falla :
    • Compruebe que el entorno de ejecución del lenguaje esté instalado correctamente en el contenedor
    • Verifique que el código sea válido para el idioma especificado

Licencia

Licencia MIT

Expresiones de gratitud

-
security - not tested
F
license - not found
-
quality - not tested

hybrid server

The server is able to function both locally and remotely, depending on the configuration or use case.

Un entorno seguro basado en Docker que permite a los asistentes de IA ejecutar código de forma segura sin acceso directo al sistema host ejecutando todo el código dentro de contenedores aislados.

  1. Descripción general
    1. Características
      1. Requisitos
        1. Instalación
          1. Uso
            1. Iniciando el servidor MCP
            2. Conexión a un asistente de IA
            3. Herramientas MCP
          2. Cómo funciona
            1. Consideraciones de seguridad
              1. Desarrollo
                1. Estructura del proyecto
                2. Agregar nuevo soporte para idiomas
              2. Solución de problemas
                1. Problemas comunes
              3. Licencia
                1. Expresiones de gratitud

                  Related MCP Servers

                  • -
                    security
                    F
                    license
                    -
                    quality
                    Provides isolated Docker environments for code execution, enabling users to create and manage containers, execute multi-language code, save and reproduce development environments, ensuring security and isolation.
                    Last updated -
                    6
                    Python
                    • Apple
                  • -
                    security
                    A
                    license
                    -
                    quality
                    An MCP server to create secure code sandbox environment for executing code within Docker containers.
                    Last updated -
                    69
                    Go
                    MIT License
                    • Linux
                    • Apple
                  • -
                    security
                    A
                    license
                    -
                    quality
                    The sessionless code interpreter. Securely run AI-generated code in stateful sandboxes that run forever.
                    Last updated -
                    65
                    176
                    Rust
                    MIT License
                  • -
                    security
                    A
                    license
                    -
                    quality
                    Facilitates isolated code execution within Docker containers, enabling secure multi-language script execution and integration with language models like Claude via the Model Context Protocol.
                    Last updated -
                    Python
                    MIT License
                    • Linux
                    • Apple

                  View all related MCP servers

                  MCP directory API

                  We provide all the information about MCP servers via our MCP API.

                  curl -X GET 'https://glama.ai/api/mcp/v1/servers/svngoku/mcp-docker-code-interpreter'

                  If you have feedback or need assistance with the MCP directory API, please join our Discord server