使用说明
MCP Python 解释器
一个模型上下文协议(MCP)服务器,它允许大型语言模型(LLMs)与Python环境进行交互,读写文件,执行Python代码,并管理开发工作流。
特点/特性
- 环境管理列出并使用不同的Python环境(系统环境和conda环境)
- 代码执行在任何可用环境中运行Python代码或脚本
- 包管理列出已安装的包并安装新的包
- 文件操作:
- 读取任何类型的文件(文本、源代码、二进制)
- 编写文本文件和二进制文件
- Python 提示符用于常见Python任务(如函数创建和调试)的模板
安装
您可以使用 pip 安装 MCP Python 解释器:
pip install mcp-python-interpreter
或者使用紫外线:
uv install mcp-python-interpreter
与Claude桌面版的使用
- 安装 Claude Desktop(中文可译为“Claude桌面版”或保持原名“Claude Desktop”,具体根据语境和需求选择)
- 打开Claude桌面版,点击菜单,然后选择设置
- 转到“开发者”选项卡并点击“编辑配置”
- 在你的(内容/列表/等)中添加以下内容
claude_desktop_config.json:
{
"mcpServers": {
"mcp-python-interpreter": {
"command": "uvx",
"args": [
"mcp-python-interpreter",
"--dir",
"/path/to/your/work/dir",
"--python-path",
"/path/to/your/python"
],
"env": {
"MCP_ALLOW_SYSTEM_ACCESS": 0
},
}
}
}
对于Windows:
{
"mcpServers": {
"python-interpreter": {
"command": "uvx",
"args": [
"mcp-python-interpreter",
"--dir",
"C:\\path\\to\\your\\working\\directory",
"--python-path",
"/path/to/your/python"
],
"env": {
"MCP_ALLOW_SYSTEM_ACCESS": "0"
},
}
}
}
- 重启Claude桌面版
- 现在你应该在聊天界面中看到MCP工具的图标
这个(或“它”) --dir 参数是 所需的;要求的 并指定了所有文件将被保存和执行的位置。这有助于通过将MCP服务器隔离到特定目录来维护安全性。
先决条件
- 确保你已经
uv已安装。如未安装,请使用以下命令进行安装:curl -LsSf https://astral.sh/uv/install.sh | sh - 对于Windows:
powershell -ExecutionPolicy Bypass -Command "iwr -useb https://astral.sh/uv/install.ps1 | iex"
可用工具
Python 解释器提供了以下工具:
环境与包管理
- 列出Python环境列出所有可用的Python环境(系统环境和conda环境)
- 列出已安装的软件包列出特定环境中安装的包
- 安装软件包在特定环境中安装一个Python包
代码执行
- 运行Python代码在特定环境中执行Python代码
- 运行Python文件在特定环境中执行一个Python文件
文件操作
- 读取文件读取任何文件类型的文件内容,同时考虑文件大小和安全限制
- 支持带语法高亮的文本文件
- 显示二进制文件的十六进制表示
- 写文件创建或覆盖包含文本或二进制内容的文件
- 编写Python文件创建或覆盖一个专门的Python文件
- 列出目录列出目录中的Python文件
可用资源
- **python://environments 翻译为中文是:“Python://环境(或环境列表)”**列出所有可用的Python环境
- python://packages/{env_name} 翻译为中文是:“Python://包管理/{环境名称}” 或者更自然地表达为:“Python 包管理地址:{环境名称}”。这里,“python://”可能表示的是一个特定于Python的包管理或存储库的协议或前缀,“packages”指的是包集合或包管理,而“{env_name}”则是一个占位符,代表具体的环境名称列出特定环境中的已安装包
- python://file/{file_path} 翻译为中文是:“Python://文件/{文件路径}” 或者更自然地表达为:“Python 协议访问文件路径 {file_path}”。不过,通常我们不会直接这样翻译文件协议的表述,而是根据上下文来解释其含义,即使用 Python 访问某个文件路径获取Python文件的内容
- **python://目录/{目录路径}**列出目录中的所有Python文件
提示
- Python函数模板生成一个Python函数的模板
- 重构Python代码帮助重构Python代码
- 调试Python错误帮助调试一个Python错误
示例用法
以下是一些示例,展示您可以要求Claude使用此MCP服务器执行的操作:
- “显示我系统上所有可用的Python环境”
- “在我的conda-base环境中运行这段Python代码:print('Hello, world!')”
- “创建一个名为‘hello.py’的新Python文件,其中包含一个说‘你好’的函数”
- “读取我的‘data.json’文件的内容”
- “使用这些设置编写一个新的配置文件……”
- “列出我系统Python环境中安装的所有包”
- “在我的系统Python环境中安装requests包”
- “使用以下参数运行 data_analysis.py:--input=data.csv --output=results.csv”
文件处理能力
MCP Python 解释器现已支持全面的文件操作:
- 读取最大1MB的文本文件和二进制文件
- 编写文本文件和二进制文件
- 源代码文件的语法高亮
- 二进制文件的十六进制表示
- 严格的文件路径安全性(仅限于工作目录内)
安全考虑事项
这台MCP服务器可以访问您的Python环境和文件系统。主要的安全功能包括:
- 隔离的工作目录
- 文件大小限制
- 阻止在工作目录外部进行写入操作
- 明确的覆盖保护
对于你不完全理解的代码或文件操作,一定要谨慎执行。
许可证
麻省理工学院(MIT)