Python Sandbox MCP Server
一个安全的 Python 代码执行服务器,允许 LLMs(大语言模型)在隔离的 Docker 容器中安全地运行 Python 代码。该服务器支持以下功能:
- 常规 Python 代码执行并捕获标准输出(stdout)
- 使用 Matplotlib 进行绘图并生成 PNG 图像
- 通过 Snekbox Docker 容器实现安全沙箱隔离
- 使用服务器发送事件(Server-Sent Events, SSE)进行实时通信
开发指南
要开始开发,请按照以下步骤操作:
第一步:克隆仓库
首先,fork 并克隆仓库:
进入项目目录:
第二步:安装依赖
安装所需的依赖项:
第三步:构建 Python 沙箱
拉取 Snekbox 容器镜像:
启动容器并设置安全参数:
安装额外的依赖项(可选):
- 如果需要额外的 Python 包,可以通过以下命令安装:
- 将
<container_id>
替换为正在运行的 Snekbox 容器的 ID,将<package_name>
替换为所需的包名称。
第四步:更新 MCP 服务器配置
更新 MCP 服务器配置,使其指向本地构建:
配置
服务器可以通过以下环境变量进行配置,也可以通过修改
Config
类来调整:MCP_SERVER_NAME
: 服务器标识符(默认值:"python-sandbox-mcp-sse")
SNEKBOX_URL
: Snekbox API 端点(默认值:"http://localhost:8060/eval")
TEMP_DIR
: 临时文件存储目录
许可证
MIT 许可证
- Author:waytomcp
- URL:https://www.waytomcp.com/article/cloudywu0410/python_sandbox_mcp_server
- Copyright:All articles in this blog, except for special statements, adopt BY-NC-SA agreement. Please indicate the source!