Python REPL服务器

一个提供交互式Python REPL环境的MCP服务器,支持多会话管理和代码执行。

  • by Alec2435
  • Python
  • 本地部署
  • 54 星标
  • 更新于
在 GitHub 查看 Alec2435/python_mcp

使用说明

python_local MCP服务器

提供交互式Python REPL(读取-评估-打印循环)环境的MCP服务器。

组件

资源

服务器提供对REPL会话历史的访问:

  • 自定义 repl:// 用于访问会话历史的URI方案
  • 每个会话的历史记录都可以作为文本/纯文本资源查看
  • 历史记录显示每次执行的输入代码和相应输出

工具

服务器实现了一个工具:

  • python_repl:在持久会话中执行Python代码
    • 拿 code (要执行的Python代码)和 session_id 根据所需参数
    • 为每个会话保持单独的状态
    • 支持表达式和语句
    • 捕获并返回stdout/stderr输出

配置

安装

克劳德桌面

在MacOS上: ~/Library/Application\ Support/Claude/claude_desktop_config.json 在Windows上: %APPDATA%/Claude/claude_desktop_config.json

Development/Unpublished Servers Configuration ```json "mcpServers": { "python_local": { "command": "uv", "args": [ "--directory", "/path/to/python_local", "run", "python_local" ] } } ```
Published Servers Configuration ```json "mcpServers": { "python_local": { "command": "uvx", "args": [ "python_local" ] } } ```

发展

建筑与出版

准备分发包裹:

  1. 同步依赖关系并更新锁文件:
uv sync
  1. 构建包分发:
uv build

这将在 dist/ 目录。

  1. 发布到PyPI:
uv publish

注意:您需要通过环境变量或命令标志设置PyPI凭据:

  • 令牌: --token 或 UV_PUBLISH_TOKEN
  • 或用户名/密码: --username/UV_PUBLISH_USERNAME 和 --password/UV_PUBLISH_PASSWORD

调试

由于MCP服务器在stdio上运行,调试可能具有挑战性。为了达到最佳调试效果 经验,我们强烈建议使用 MCP检查员.

您可以通过以下方式启动MCP检查器 npm 使用此命令:

npx @modelcontextprotocol/inspector uv --directory /path/to/python_local run python-local

启动后,检查器将显示一个URL,您可以在浏览器中访问该URL以开始调试。