Skip to main content
Glama

MCP Code Sandbox Server

by chrishayuk

MCP 代码沙盒服务器

一个可扩展的消息通信协议 (MCP) 服务器,可在隔离的沙盒环境中提供安全的代码执行功能。此服务器遵循 MCP 标准,因此与 Claude for Desktop 和其他 MCP 客户端兼容。

特征

  • 为代码执行创建隔离的沙盒环境
  • 安全地执行 Python 代码
  • 执行文件操作(列出、读取、写入)
  • 在沙盒中安装 Python 包
  • 具有抽象代码解释器接口的可扩展架构
  • 模块化设计,关注点清晰分离

建筑学

该服务器采用模块化、可扩展的架构构建:

核心组件

  • 抽象解释器接口:允许集成不同的代码执行后端
  • 沙盒管理:用于创建和管理沙盒环境的工具
  • 代码执行:运行代码和安装包的工具
  • 文件操作:用于管理沙箱内文件的工具

项目结构

├── src/ │ └── sandbox/ │ ├── __pycache__/ │ ├── e2b/ │ │ ├── __pycache__/ │ │ ├── __init__.py │ │ ├── e2b_file_interface.py │ │ └── e2b_interpreter.py │ ├── __init__.py │ ├── code_interpreter.py │ ├── file_interface.py │ └── interpreter_factory.py ├── tools/ │ ├── __pycache__/ │ ├── __init__.py │ ├── code_execution_tools.py │ ├── file_tools.py │ └── sandbox_tools.py ├── main.py ├── .env ├── .gitignore ├── .python-version ├── pyproject.toml ├── README.md └── uv.lock

先决条件

  • Python 3.10 或更高版本
  • E2B API 密钥(用于默认 E2B 解释器)

安装

  1. 克隆此存储库:
    git clone https://github.com/yourusername/mcp-code-sandbox.git cd mcp-code-sandbox
  2. 设置虚拟环境:
    # Using venv python -m venv venv source venv/bin/activate # On Windows: venv\Scripts\activate # Or using uv (recommended) uv init uv venv source .venv/bin/activate # On Windows: .venv\Scripts\activate
  3. 安装所需的软件包:
    # Using pip pip install fastmcp python-dotenv e2b-code-interpreter # Or using uv uv add fastmcp python-dotenv e2b-code-interpreter
  4. 配置环境变量:
    # Create a .env file with the following variables E2B_API_KEY=your_e2b_api_key_here INTERPRETER_TYPE=e2b # Default, can be changed to other implemented interpreters

用法

独立运行服务器

您可以直接从命令行运行服务器:

python main.py

这将使用 stdio 传输启动服务器,使其与 Claude for Desktop 兼容。

与 Claude for Desktop 一起使用

  1. 确保您安装了最新版本的 Claude for Desktop
  2. 打开您的 Claude for Desktop 配置文件:
    • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
    • Windows: %APPDATA%\Claude\claude_desktop_config.json
  3. 添加您的代码沙盒服务器配置:
    { "mcpServers": { "code-sandbox": { "command": "python", "args": [ "/ABSOLUTE/PATH/TO/main.py" ] } } }
    或者如果你使用uv
    { "mcpServers": { "code-sandbox": { "command": "uv", "args": [ "--directory", "/ABSOLUTE/PATH/TO/PROJECT_DIRECTORY", "run", "main.py" ] } } }
  4. 保存文件并重新启动 Claude for Desktop

可用工具

该服务器提供以下工具:

沙盒管理

  • create_sandbox :创建一个新的沙盒环境
  • close_sandbox :关闭并清理沙盒
  • get_sandbox_status :检查沙箱的状态

代码执行

  • 执行代码:在沙箱中运行 Python 代码
  • install_package :安装 Python 包
  • create_run_close :创建沙盒、运行代码和清理的一体化工具

文件操作

  • list_files :列出沙盒中的文件
  • read_file :读取文件的内容
  • write_file :将内容写入文件
  • upload_file :将文件上传到沙盒

使用新的解释器进行扩展

该系统设计为可扩展的。要添加新的代码解释器:

  1. src/sandbox/下为您的解释器实现创建一个新目录
  2. 实现src/sandbox/code_interpreter.pysrc/sandbox/file_interface.py中定义的接口
  3. 将新的解释器类型添加到src/sandbox/interpreter_factory.py
  4. 将环境变量INTERPRETER_TYPE配置为你的新解释器

实现新解释器的示例:

# src/sandbox/my_backend/my_interpreter.py from src.sandbox.code_interpreter import CodeInterpreter, ExecutionResult from src.sandbox.file_interface import FileInterface class MyFileInterface(FileInterface): # Implement the required methods class MyInterpreter(CodeInterpreter): # Implement the required methods # Update src/sandbox/interpreter_factory.py to include your new interpreter

模块描述

沙盒核心( src/sandbox/

  • code_interpreter.py :代码解释器的抽象基类
  • file_interface.py :文件操作的抽象接口
  • interpreter_factory.py :用于创建代码解释器实例的工厂

E2B 实现( src/sandbox/e2b/

  • e2b_interpreter.py :代码解释器的 E2B 实现
  • e2b_file_interface.py :E2B 文件操作实现

工具( tools/

  • sandbox_tools.py :沙盒管理工具
  • code_execution_tools.py :代码执行工具
  • file_tools.py :文件操作工具

主要应用

  • main.py :主应用程序入口点

故障排除

如果您遇到问题:

  • 确保您拥有所选解释器的正确 API 密钥
  • 检查日志以获取详细的错误消息
  • 验证所有必需的软件包都已安装
  • 确保 Claude for Desktop 配置了正确的脚本路径

安全注意事项

  • 为了安全起见,代码执行在沙盒环境中进行
  • 不要使用此服务器在生产环境中执行不受信任的代码
  • 该服务器目前未实现身份验证 - 它只能在受信任的环境中使用它

执照

MIT 许可证

-
security - not tested
-
license - not tested
-
quality - not tested

remote-capable server

The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.

可扩展的消息通信协议服务器,在隔离的沙盒环境中提供安全的代码执行功能,与 Claude for Desktop 和其他 MCP 客户端兼容。

  1. 特征
    1. 建筑学
      1. 核心组件
      2. 项目结构
    2. 先决条件
      1. 安装
        1. 用法
          1. 独立运行服务器
          2. 与 Claude for Desktop 一起使用
        2. 可用工具
          1. 沙盒管理
          2. 代码执行
          3. 文件操作
        3. 使用新的解释器进行扩展
          1. 模块描述
            1. 沙盒核心( src/sandbox/ )
            2. E2B 实现( src/sandbox/e2b/ )
            3. 工具( tools/ )
            4. 主要应用
          2. 故障排除
            1. 安全注意事项
              1. 执照

                Related MCP Servers

                • -
                  security
                  A
                  license
                  -
                  quality
                  An MCP server to create secure code sandbox environment for executing code within Docker containers.
                  Last updated -
                  69
                  Go
                  MIT License
                  • Linux
                  • Apple
                • -
                  security
                  A
                  license
                  -
                  quality
                  A server for the Machine Chat Protocol (MCP) that provides a YAML-based configuration system for LLM applications, allowing users to define resources, tools, and prompts without writing code.
                  Last updated -
                  5
                  Python
                  MIT License
                  • Linux
                  • Apple
                • A
                  security
                  A
                  license
                  A
                  quality
                  An implementation of Claude Code as a Model Context Protocol server that enables using Claude's software engineering capabilities (code generation, editing, reviewing, and file operations) through the standardized MCP interface.
                  Last updated -
                  8
                  86
                  JavaScript
                  MIT License
                • -
                  security
                  A
                  license
                  -
                  quality
                  A secure, container-based implementation of the Model Context Protocol (MCP) that provides sandboxed environments for AI systems to safely execute code, run commands, access files, and perform web operations.
                  Last updated -
                  9
                  Python
                  Apache 2.0
                  • Linux

                View all related MCP servers

                MCP directory API

                We provide all the information about MCP servers via our MCP API.

                curl -X GET 'https://glama.ai/api/mcp/v1/servers/chrishayuk/mcp-code-sandbox'

                If you have feedback or need assistance with the MCP directory API, please join our Discord server