code-sandbox-mcp

MCP.Pizza Chef: Automata-Labs-team

The code-sandbox-mcp is an MCP server that creates secure, isolated Docker container environments for executing code safely. It enables AI applications to run arbitrary code within sandboxed containers, ensuring security and isolation through containerization. Features include flexible container management, support for custom Docker images, file operations between host and containers, real-time logging, and multi-platform compatibility across Linux, macOS, and Windows.

Use This MCP server To

Run untrusted code safely within isolated Docker containers Execute AI-generated code snippets securely in sandboxed environments Stream real-time logs from containerized code execution Transfer files between host and container for dynamic code workflows Manage multiple container environments with custom Docker images Automate code testing and validation inside secure sandboxes Enable multi-platform code execution for development and testing

README

Code Sandbox MCP 🐳

smithery badge

A secure sandbox environment for executing code within Docker containers. This MCP server provides AI applications with a safe and isolated environment for running code while maintaining security through containerization.

🌟 Features

  • Flexible Container Management: Create and manage isolated Docker containers for code execution
  • Custom Environment Support: Use any Docker image as your execution environment
  • File Operations: Easy file and directory transfer between host and containers
  • Command Execution: Run any shell commands within the containerized environment
  • Real-time Logging: Stream container logs and command output in real-time
  • Auto-Updates: Built-in update checking and automatic binary updates
  • Multi-Platform: Supports Linux, macOS, and Windows

πŸš€ Installation

Prerequisites

Quick Install

Linux, MacOS

curl -fsSL https://raw.githubusercontent.com/Automata-Labs-team/code-sandbox-mcp/main/install.sh | bash

Windows

# Run in PowerShell
irm https://raw.githubusercontent.com/Automata-Labs-team/code-sandbox-mcp/main/install.ps1 | iex

The installer will:

  1. Check for Docker installation
  2. Download the appropriate binary for your system
  3. Create necessary configuration files

Manual Installation

  1. Download the latest release for your platform from the releases page
  2. Place the binary in a directory in your PATH
  3. Make it executable (Unix-like systems only):
    chmod +x code-sandbox-mcp

πŸ› οΈ Available Tools

sandbox_initialize

Initialize a new compute environment for code execution. Creates a container based on the specified Docker image.

Parameters:

  • image (string, optional): Docker image to use as the base environment
    • Default: 'python:3.12-slim-bookworm'

Returns:

  • container_id that can be used with other tools to interact with this environment

copy_project

Copy a directory to the sandboxed filesystem.

Parameters:

  • container_id (string, required): ID of the container returned from the initialize call
  • local_src_dir (string, required): Path to a directory in the local file system
  • dest_dir (string, optional): Path to save the src directory in the sandbox environment

write_file

Write a file to the sandboxed filesystem.

Parameters:

  • container_id (string, required): ID of the container returned from the initialize call
  • file_name (string, required): Name of the file to create
  • file_contents (string, required): Contents to write to the file
  • dest_dir (string, optional): Directory to create the file in (Default: ${WORKDIR})

sandbox_exec

Execute commands in the sandboxed environment.

Parameters:

  • container_id (string, required): ID of the container returned from the initialize call
  • commands (array, required): List of command(s) to run in the sandboxed environment
    • Example: ["apt-get update", "pip install numpy", "python script.py"]

copy_file

Copy a single file to the sandboxed filesystem.

Parameters:

  • container_id (string, required): ID of the container returned from the initialize call
  • local_src_file (string, required): Path to a file in the local file system
  • dest_path (string, optional): Path to save the file in the sandbox environment

sandbox_stop

Stop and remove a running container sandbox.

Parameters:

  • container_id (string, required): ID of the container to stop and remove

Description: Gracefully stops the specified container with a 10-second timeout and removes it along with its volumes.

Container Logs Resource

A dynamic resource that provides access to container logs.

Resource Path: containers://{id}/logs
MIME Type: text/plain
Description: Returns all container logs from the specified container as a single text resource.

πŸ” Security Features

  • Isolated execution environment using Docker containers
  • Resource limitations through Docker container constraints
  • Separate stdout and stderr streams

πŸ”§ Configuration

Claude Desktop

The installer automatically creates the configuration file. If you need to manually configure it:

Linux

// ~/.config/Claude/claude_desktop_config.json
{
    "mcpServers": {
        "code-sandbox-mcp": {
            "command": "/path/to/code-sandbox-mcp",
            "args": [],
            "env": {}
        }
    }
}

macOS

// ~/Library/Application Support/Claude/claude_desktop_config.json
{
    "mcpServers": {
        "code-sandbox-mcp": {
            "command": "/path/to/code-sandbox-mcp",
            "args": [],
            "env": {}
        }
    }
}

Windows

// %APPDATA%\Claude\claude_desktop_config.json
{
    "mcpServers": {
        "code-sandbox-mcp": {
            "command": "C:\\path\\to\\code-sandbox-mcp.exe",
            "args": [],
            "env": {}
        }
    }
}

Other AI Applications

For other AI applications that support MCP servers, configure them to use the code-sandbox-mcp binary as their code execution backend.

πŸ› οΈ Development

If you want to build the project locally or contribute to its development, see DEVELOPMENT.md.

πŸ“ License

This project is licensed under the MIT License - see the LICENSE file for details.

code-sandbox-mcp FAQ

How does code-sandbox-mcp ensure security during code execution?
It uses Docker containerization to isolate code execution environments, preventing interference with the host system.
Can I use custom Docker images with code-sandbox-mcp?
Yes, it supports any Docker image as the execution environment for flexible sandbox setups.
Does code-sandbox-mcp support real-time monitoring of running code?
Yes, it streams container logs and command outputs in real-time for monitoring.
Is code-sandbox-mcp compatible with different operating systems?
Yes, it supports Linux, macOS, and Windows platforms.
How are files managed between the host and the sandbox containers?
The server provides easy file and directory transfer capabilities between host and containers.
Does code-sandbox-mcp handle automatic updates?
Yes, it includes built-in update checking and automatic binary updates to keep the server current.
What types of commands can be executed inside the sandbox?
Any shell commands can be run within the containerized environment.
Can this MCP server be integrated with AI models like OpenAI, Claude, or Gemini?
Yes, it is designed to provide secure code execution environments for AI applications using various LLM providers.