
Safe Local Python Executor

2025.04.03
10
Python代码解释器Python 执行环境开发效率
mcp_safe_local_python_executor 是一个基于 MCP(Model Context Protocol)的服务,它封装了 Hugging Face 的 LocalPythonExecutor,提供了一个安全的本地 Python 执行环境。该服务旨在为 LLM 应用(如 Claude Desktop、Cursor 等)提供一个安全的代码解释器工具,允许在本地运行由 LLM 生成的 Python 代码,同时提供基本的安全隔离。
View on GitHub
Overview
基本能力
产品定位
mcp_safe_local_python_executor 是一个安全的本地 Python 执行器,专为 LLM 应用设计,提供代码解释器功能。
核心功能
- 提供
run_python
工具,用于执行 Python 代码。 - 比直接使用 Python
eval()
更安全的代码执行环境。 - 通过 uv 在 Python 虚拟环境中运行。
- 禁止文件 I/O 操作。
- 限制可导入的模块列表,包括:
- collections
- datetime
- itertools
- math
- queue
- random
- re
- stat
- statistics
- time
- unicodedata
适用场景
- 为 LLM 应用(如 Claude Desktop)提供代码解释器功能。
- 安全地执行由 LLM 生成的 Python 代码。
- 快速原型开发和测试 Python 代码片段。
工具列表
run_python
:执行 Python 代码的工具。
常见问题解答
- 安全性:虽然比直接使用
eval()
更安全,但仍需谨慎执行 LLM 生成的代码。最安全的选项是使用 VM 或 Docker 容器。 - 依赖:需要安装
uv
工具。
使用教程
使用依赖
- 安装
uv
工具: - macOS:
brew install uv
- 其他平台参考 官方文档
安装教程
- 克隆仓库:
git clone <repo_url>
- 进入目录:
cd mcp_safe_local_python_executor
- 启动服务:
uv run mcp_server.py
调试方式
- 创建虚拟环境:
uv venv .venv
- 安装开发依赖:
uv sync --group dev
- 运行测试:
python -m pytest tests/
配置 Claude Desktop
- 确保已安装 Claude Desktop(从 claude.ai 下载)。
- 编辑 Claude Desktop 配置文件:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json
- Windows:
%APPDATA%\Claude\claude_desktop_config.json
- 或通过 Claude Desktop 的设置 -> 开发者 -> 点击 "Edit Config" 按钮。
- 添加以下配置:
{
"mcpServers": {
"safe-local-python-executor": {
"command": "uv",
"args": [
"--directory",
"/path/to/mcp_local_python_executor/",
"run",
"mcp_server.py"
]
}
}
}
- 重启 Claude Desktop。
- Python 执行器工具将在 Claude 中可用(消息输入字段中会出现锤子图标)。
示例提示
配置完成后,可以使用以下提示:
- "Calculate the factorial of 5 using Python"
- "Create a list of prime numbers up to 100"
- "Solve this equation (use Python): x^2 + 5x + 6 = 0"