local-only server
The server can only run on the client’s local machine because it depends on local resources.
Integrations
Provides isolated Docker environments for code execution, allowing users to create containers with any Docker image, run commands in isolated containers, and save container states as Docker images.
Mentioned as an example package that can be installed and used in the isolated containers for data analysis.
Mentioned as an example package that can be installed and used in the isolated containers for data manipulation.
Servidor MCP de Sandbox
Un servidor MCP que proporciona entornos Docker aislados para la ejecución de código. Este servidor permite:
- Crea contenedores con cualquier imagen de Docker
- Escribir y ejecutar código en múltiples lenguajes de programación.
- Instalar paquetes y configurar entornos de desarrollo
- Ejecutar comandos en contenedores aislados
Prerrequisitos
- Python 3.9 o superior
- Docker instalado y en ejecución
- gestor de paquetes uv (recomendado)
- Servidor Docker MCP (recomendado)
Instalación
- Clonar este repositorio:
- Crear y activar un entorno virtual con uv:
- Instalar dependencias:
Integración con Claude Desktop
- Abra el archivo de configuración de Claude Desktop:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json
- Ventanas:
%APPDATA%\Claude\claude_desktop_config.json
- Agregue la configuración del servidor sandbox:
Reemplace /absolute/path/to/sandbox_server
con la ruta real al directorio de su proyecto.
- Reiniciar Claude Desktop
Ejemplos de uso
Uso básico
Una vez conectado a Claude Desktop, podrá:
- Crear un contenedor de Python:
- Ejecutar código en diferentes idiomas:
- Instalar paquetes y utilizarlos:
Salvando y reproduciendo entornos
El servidor proporciona varias formas de guardar y reproducir sus entornos de desarrollo:
Creación de contenedores persistentes
Al crear un contenedor, puedes hacerlo persistente:
Esto creará un contenedor que:
- Sigue funcionando después de que Claude Desktop se cierra
- Se puede acceder directamente a través de Docker
- Conserva todos los paquetes y archivos instalados
El servidor proporcionará instrucciones para:
- Acceder directamente al contenedor (
docker exec
) - Parada y arranque del contenedor
- Quitarlo cuando ya no sea necesario
Guardar el estado del contenedor
Después de configurar su entorno, puede guardarlo como una imagen de Docker:
Esto hará lo siguiente:
- Crea una nueva imagen de Docker con todos tus:
- Paquetes instalados
- Archivos creados
- Cambios de configuración
- Proporcionar instrucciones para reutilizar el medio ambiente.
Luego puedes compartir esta imagen o usarla como punto de partida para nuevos contenedores:
Generando Dockerfiles
Para que su entorno sea totalmente reproducible, puede generar un Dockerfile:
El Dockerfile generado incluirá:
- Especificación de la imagen base
- Archivos creados
- Plantilla para pasos de configuración adicionales
Puedes usar este Dockerfile para:
- Comparte la configuración de tu entorno con otros
- Control de versiones de su entorno de desarrollo
- Modificar y personalizar el proceso de construcción
- Implementar en diferentes sistemas
Flujo de trabajo recomendado
Para entornos de desarrollo reproducibles:
- Crear un contenedor persistente:
- Instale los paquetes necesarios y configure el entorno:
- Pruebe su configuración:
- Guardar el estado:
- Exportar un Dockerfile:
Esto le brinda múltiples opciones para recrear su entorno:
- Utilice directamente la imagen de Docker guardada
- Construir desde el Dockerfile con modificaciones
- Acceda al contenedor original si es necesario
Notas de seguridad
- Todo el código se ejecuta en contenedores Docker aislados
- Los contenedores se retiran automáticamente después de su uso.
- Los sistemas de archivos están aislados entre contenedores
- El acceso al sistema host está restringido
Estructura del proyecto
Herramientas disponibles
El servidor proporciona tres herramientas principales:
create_container_environment
: crea un nuevo contenedor Docker con la imagen especificadacreate_file_in_container
: Crea un archivo en un contenedorexecute_command_in_container
: ejecuta comandos en un contenedorsave_container_state
: guarda el estado del contenedor en un contenedor persistenteexport_dockerfile
: exporta un archivo docker para crear un entorno persistenteexit_container
: cierra un contenedor para limpiar el entorno cuando termina
This server cannot be installed
Proporciona entornos Docker aislados para la ejecución de código, lo que permite a los usuarios crear y administrar contenedores, ejecutar código en varios idiomas, guardar y reproducir entornos de desarrollo, lo que garantiza la seguridad y el aislamiento.
- Prerequisites
- Installation
- Integration with Claude Desktop
- Usage Examples
- Security Notes
- Project Structure
- Available Tools