你是否曾经希望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
开源状态公开状态
LanguagesPython
支持平台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 或更高)
uvPython包管理器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。

这个项目的最大价值在于:

  1. 安全执行:比eval()更安全
  2. 无需Docker:设置简单
  3. 受限导入:只允许安全模块
  4. 虚拟环境:隔离执行
  5. MIT许可证:可自由使用

如果你需要让AI安全地执行Python代码,MCP安全本地Python执行器是一个非常实用的工具。

标签: 开发者工具

已有 34 条评论

    1. KevinKeep KevinKeep

      只允许安全模块导入。

    2. LisaLink LisaLink

      支持datetime和statistics。

    3. MikeMCP MikeMCP

      比eval()安全很多。

    4. NinaNote NinaNote

      和直接执行Python相比,这个更安全。

    5. OscarOpen OscarOpen

      希望未来能支持更多安全模块。