你是否曾经希望AI能够安全地在本地执行Python代码,而无需担心安全问题或配置Docker容器?今天要介绍的开源项目MCP安全本地Python执行器,正是为了实现这个目标而设计的。它是一个基于Hugging Face的LocalPythonExecutor的MCP服务器,能够在本地运行由LLM生成的Python代码时提供基本的隔离和安全性,不需要Docker或虚拟机。
项目基本信息
| 信息项 | 详情 |
|---|---|
| 项目名称 | MCP安全本地Python执行器 |
| GitHub地址 | https://github.com/maxim-saplin/mcp_safe_local_python_executor |
| 项目描述 | 标准I/O MCP服务器包装了来自Hugging Face的smolagents框架的自定义Python运行时(LocalPythonExecutor)。该运行时结合了易于设置的优点,同时提供了保护措施,并限制了运行时内允许的操作和导入。 |
| 作者 | maxim-saplin |
| 开源协议 | MIT License |
| 开源状态 | 公开状态 |
| Languages | Python |
| 支持平台 | Windows / macOS / Linux |
| 最后更新 | 2026-04-23 |
一、项目介绍
MCP安全本地Python执行器是一个让AI能够安全执行Python代码的MCP服务器。它基于Hugging Face的LocalPythonExecutor,在本地运行Python代码时提供基本的隔离和安全性,不需要Docker或虚拟机。
这个服务器提供了一个核心工具:
run_python:在安全的Python环境中执行代码
安全特性包括:
- 通过uv在Python虚拟环境中运行
- 不允许文件I/O操作
- 限制导入的模块列表
二、核心优势
安全执行
相比直接使用Python的eval(),执行Python代码更安全。
无需Docker
不需要Docker或虚拟机,设置简单。
限制导入
限制允许导入的模块列表,提高安全性。
虚拟环境
通过uv在Python虚拟环境中运行。
易于集成
通过MCP协议与Claude Desktop等客户端集成。
三、适用场景
AI代码计算
让AI执行数学计算、数据处理等Python代码。
代码验证
安全地测试LLM生成的代码。
数据转换
执行数据格式转换、统计分析。
教育演示
在安全环境中演示Python代码执行。
四、安装教程
系统要求
| 工具 | 用途 | 下载/安装方式 |
|---|---|---|
| Python | 运行环境 | [https://python.org/] (版本要求:3.8 或更高) |
| uv | Python包管理器 | pip install uv |
| MCP客户端 | 如Claude Desktop等 | 根据客户端官网下载 |
安装步骤
第一步:克隆项目
git clone https://github.com/maxim-saplin/mcp_safe_local_python_executor.git
cd mcp_safe_local_python_executor第二步:配置Claude Desktop
找到配置文件:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json
添加配置:
{
"mcpServers": {
"safe-local-python-executor": {
"command": "uv",
"args": [
"--directory",
"/path/to/mcp_local_python_executor/",
"run",
"mcp_server.py"
]
}
}
}第三步:通过Smithery安装(可选)
npx -y @smithery/cli install @maxim-saplin/mcp_safe_local_python_executor --client claude第四步:重启Claude Desktop
保存配置后,重启Claude Desktop。
五、使用示例
示例1:数学计算
用户指令:“使用Python计算5的阶乘”
AI会调用run_python工具,执行:
import math
math.factorial(5)示例2:生成质数列表
用户指令:“生成一个包含100以内的质数的列表”
AI会执行Python代码生成质数列表。
示例3:解方程
用户指令:“解这个方程(使用Python):x^2 + 5x + 6 = 0”
AI会执行Python代码计算方程的根。
示例4:数据分析
import statistics
data = [1, 2, 3, 4, 5]
mean = statistics.mean(data)
print(f"平均值: {mean}")六、允许的导入模块
服务器限制只允许导入以下模块:
- collections
- datetime
- itertools
- math
- queue
- random
- re
- stat
- statistics
- time
- unicodedata
文件I/O操作和未列出模块的导入将被禁止。
七、常见问题
问题1:导入被拒绝
解决方案:只能导入允许列表中的模块。
问题2:文件操作失败
解决方案:文件I/O操作被禁止。
问题3:虚拟环境创建失败
解决方案:确保uv已正确安装。
问题4:代码执行超时
解决方案:简化代码或优化算法。
问题5:路径配置错误
解决方案:使用绝对路径配置--directory参数。
八、总结
MCP安全本地Python执行器是一个让AI能够安全执行Python代码的MCP服务器,基于Hugging Face的LocalPythonExecutor。
这个项目的最大价值在于:
- 安全执行:比eval()更安全
- 无需Docker:设置简单
- 受限导入:只允许安全模块
- 虚拟环境:隔离执行
- MIT许可证:可自由使用
如果你需要让AI安全地执行Python代码,MCP安全本地Python执行器是一个非常实用的工具。
数学计算场景很实用。
需要配置Claude Desktop。
通过Smithery一键安装。
路径要用绝对路径。
文件I/O操作被禁止。