Code Sandbox MCP
A secure sandbox for executing code in Docker containers, providing a safe environment for AI applications.
Code Sandbox MCP 🐳
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
- Docker installed and running
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:
- Check for Docker installation
- Download the appropriate binary for your system
- Create necessary configuration files
Manual Installation
- Download the latest release for your platform from the releases page
- Place the binary in a directory in your PATH
- 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 calllocal_src_dir
(string, required): Path to a directory in the local file systemdest_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 callfile_name
(string, required): Name of the file to createfile_contents
(string, required): Contents to write to the filedest_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 callcommands
(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 calllocal_src_file
(string, required): Path to a file in the local file systemdest_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.
Related Servers
FileScopeMCP
Analyzes your codebase identifying important files based on dependency relationships. Generates diagrams and importance scores per file, helping AI assistants understand the codebase. Automatically parses popular programming languages, Python, Lua, C, C++, Rust, Zig.
Thirdweb
Read/write to over 2k blockchains, enabling data querying, contract analysis/deployment, and transaction execution, powered by Thirdweb.
Codacy
Access the Codacy API to analyze code quality, coverage, and security for your repositories.
VideoDB
Server for advanced AI-driven video editing, semantic search, multilingual transcription, generative media, voice cloning, and content moderation.
Prompt Registry
A lightweight, file-based server for managing and serving prompts via stdio.
Simple MCP Server
A starter MCP server built with TypeScript and the official MCP SDK, featuring example tools like echo, add, time, and flight status.
MCP Utils
A Python package with utilities and helpers for building MCP-compliant servers, often using Flask and Redis.
nREPL MCP Server
Interact with a running Clojure nREPL instance for code evaluation, namespace inspection, and other utilities.
MCP LSP Go
An MCP server that connects AI assistants to Go's Language Server Protocol (LSP) for advanced code analysis.
Flow MCP
A set of tools for interacting with the Flow blockchain through the Model Context Protocol.