Python Sandbox MCP Server
A secure Python code execution server that enables LLMs to run Python code safely in isolated Docker containers. The server supports:
- Regular Python code execution with stdout capture
- Matplotlib plotting with PNG image generation
- Secure sandboxing via Snekbox Docker container
- Real-time communication using Server-Sent Events (SSE)
Development
To get started with development, follow these steps:
Step 1: Clone the Repository
Fork and clone the repository:
git clone https://github.com/username/python_sandbox_mcp_server.git
Navigate into the project directory:
cd python_sandbox_mcp_server
Step 2: Install Dependencies
Install the required dependencies:
uv add -r requirements.txt
Step 3: Build the Python Sandbox
Pull the Snekbox Container Image:
docker pull ghcr.io/python-discord/snekbox:latest
Start the Container with Security Parameters:
docker run -d --ipc=none --privileged -p 8060:8060 ghcr.io/python-discord/snekbox
Install Additional Dependencies (Optional):
- If additional Python packages are required, you can install them as follows:
docker exec <container_id> /bin/sh -c \\
'PYTHONUSERBASE=/snekbox/user_base /snekbox/python/default/bin/python -m pip install --user <package_name>'
- Replace <container_id> with the ID of your running Snekbox container and <package_name> with the desired package.
Step 4: Update MCP Server Configuration
Update your MCP server configuration to point to the local build:
{
"mcpServers": {
"python-sandbox-sse": {
"command": "mcp-proxy",
"args": [
"http://localhost:8060/eval"
],
"ssePath": "/eval"
}
}
}
Configuration
The server can be configured through the following environment variables or by modifying the Config class:
MCP_SERVER_NAME: Server identifier (default: "python-sandbox-mcp-sse")SNEKBOX_URL: Snekbox API endpoint (default: "http://localhost:8060/eval")TEMP_DIR: Directory for temporary files storage
License
Recommend MCP Servers 💡
@axliupore/mcp-code-runner
基于 MCP 协议的代码执行器,最后是通过 Docker 来进行代码执行的,所以本机上需要有 Docker 的环境.
srcgrp/sentry-mcp-server
Integrates Sentry error tracking into MCP-enabled environments, providing access to release health data and issue details.
pinner-mcp
MCP server that pins 3rd party dependencies to immutable digests for Docker base images and GitHub Actions
@kukapay/whoami-mcp
A lightweight MCP server that retrieves the username of the current system user.
deepsource-mcp-server
An MCP server that integrates with DeepSource to provide AI assistants with access to code quality metrics, issues, and analysis results
mobbdev
Bugsy can also be used as an MCP server, allowing AI assistants like Claude to automatically scan and fix vulnerabilities in your code repositories.
