code-sandbox-mcp
by VikashLoomba
An MCP server to create secure code 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.
What is code-sandbox-mcp
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.
Leave a Comment
Comments section will be available soon. Stay tuned!
Frequently Asked Questions
What is MCP?
MCP (Model Context Protocol) is an open protocol that standardizes how applications provide context to LLMs. Think of MCP like a USB-C port for AI applications, providing a standardized way to connect AI models to different data sources and tools.
What are MCP Servers?
MCP Servers are lightweight programs that expose specific capabilities through the standardized Model Context Protocol. They act as bridges between LLMs like Claude and various data sources or services, allowing secure access to files, databases, APIs, and other resources.
How do MCP Servers work?
MCP Servers follow a client-server architecture where a host application (like Claude Desktop) connects to multiple servers. Each server provides specific functionality through standardized endpoints and protocols, enabling Claude to access data and perform actions through the standardized protocol.
Are MCP Servers secure?
Yes, MCP Servers are designed with security in mind. They run locally with explicit configuration and permissions, require user approval for actions, and include built-in security features to prevent unauthorized access and ensure data privacy.
Related MCP Servers
Ableton Live MCP Server
MCP Server implementation for Ableton Live OSC control
Airbnb MCP Server
AI Agent Marketplace Index Search MCP Server
MCP Server for AI Agent Marketplace Index from DeepNLP
Algorand MCP Implementation
Algorand Model Context Protocol (Server & Client)
mcp-server-apache-airflow
pypi.org/project/mcp-server-apache-airflow/
airtable-mcp-server
๐๏ธ๐ค Airtable Model Context Protocol Server, for allowing AI systems to interact with your Airtable bases
Airtable MCP Server
Search, create and update Airtable bases, tables, fields, and records using Claude Desktop and MCP (Model Context Protocol) clients
Alphavantage MCP Server
A MCP server for the stock market data API, Alphavantage API.
Amadeus MCP Server
Amadeus MCP(Model Context Protocol) Server
Anki MCP Server
An MCP server for Anki
Submit Your MCP Server
Share your MCP server with the community
Submit Now