代码执行沙盒MCP服务器
一个强大的 模型上下文协议(MCP) 使LLM代理能够执行代码的服务器 20种编程语言 安全使用 OneCompiler API.
该服务器弥合了您的AI助手(Claude等)和实时代码执行之间的差距,允许动态计算、算法验证和多语言脚本编写。
🏗️ 建筑
graph TD
User[User / AI Agent] -->|MCP Protocol| MCPServer[Code Execution MCP Server]
MCPServer -->|HTTPS Request| OneCompiler[OneCompiler API]
OneCompiler -->|Sandbox Execution| Runtime[Language Runtime]
Runtime -->|Stdout/Stderr| OneCompiler
OneCompiler -->|JSON Response| MCPServer
MCPServer -->|Tool Result| User
subgraph "Local Environment"
MCPServer
Env[.env Config]
end
subgraph "Remote Cloud"
OneCompiler
end
MCPServer -.-> Env✨ 特性
- 多语言支持:执行Python、JavaScript、Java、C++、Go、Rust、Ruby、PHP等等。
- 标准输入:传递输入数据(
stdin)到您的程序进行交互式测试。 - 稳健的错误处理:不同的报告
stdout,stderr,以及编译错误。 - 安全配置:对API内标识使用环境变量。
🚀 入门指南
先决条件
- Python 3.12+
uv包管理器(推荐)- OneCompiler API密钥(来自RapidAPI)
安装
- 克隆并安装依赖关系
cd c:\Users\nuvae\Projects\agent\mcp-list\code-execution-sandbox
uv sync- 配置环境
创建 .env 根目录中的文件:
ONECOMPILER_API_KEY=your_rapidapi_key_here
ONECOMPILER_API_HOST=onecompiler-apis.p.rapidapi.com- 运行开发服务器
uv run mcp dev server.py🛠️ 用法和示例
可用工具
| 工具 | 描述 | 参数 |
|---|---|---|
execute_code | 以特定语言运行代码 | language (str), code (str), stdin (str,可选) |
list_languages | 列出所有支持的语言 | *(无)* |
📸 执行示例
以下是服务器实际运行的一些示例:
1.执行Python代码
运行一个简单的Python脚本来计算斐波那契数。服务器处理代码执行并返回格式化的输出。
2.处理复杂逻辑
使用函数定义和逻辑流执行更复杂的脚本。
3.错误处理
当代码失败时(例如,除零、语法错误),MCP服务器会捕获 stderr 并将其清晰地呈现给用户,允许AI调试自己的代码。
4.多语言支持
无需更改配置,即可在C++或Java等语言之间无缝切换。
📊 数据流
sequenceDiagram
participant Claude as Claude Desktop
participant MCP as MCP Server
participant API as OneCompiler API
Claude->>MCP: Call tool: execute_code(language="python", code="print('Hi')")
MCP->>MCP: Validate language support
MCP->>API: POST /api/v1/run {code, language}
activate API
API-->>MCP: 200 OK {stdout: "Hi", stderr: null}
deactivate API
MCP->>MCP: Format output
MCP-->>Claude: Return formatted string
Claude->>User: Display result🔒 安全说明
此服务器在远程沙盒(OneCompiler)中执行代码。虽然这将执行与本地计算机隔离开来,但始终确保您信任正在生成或执行的代码,特别是在处理敏感数据时。
📄 许可证
MIT许可证
