返回市场
python_mcp服务器

python_mcp服务器

作者:Alec243555 星标更新:2024-12-05

项目介绍

python_local MCP 服务器

提供一个交互式 Python REPL(读取-求值-打印循环)环境的 MCP 服务器。

组件

资源

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

  • 使用自定义的 repl:// URI 方案来访问会话历史
  • 每个会话的历史可以作为 text/plain 资源查看
  • 历史记录显示每次执行的输入代码及其对应的输出

工具

该服务器实现了一个工具:

  • python_repl: 在持久会话中执行 Python 代码
    • 接受 code(要执行的 Python 代码)和 session_id 作为必需参数
    • 为每个会话维护独立的状态
    • 支持表达式和语句
    • 捕获并返回 stdout/stderr 输出

配置

安装

Claude Desktop

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

<details> <summary>开发/未发布服务器配置</summary> ```json "mcpServers": { "python_local": { "command": "uv", "args": [ "--directory", "/path/to/python_local", "run", "python_local" ] } } ``` </details> <details> <summary>已发布服务器配置</summary> ```json "mcpServers": { "python_local": { "command": "uvx", "args": [ "python_local" ] } } ``` </details>

开发

构建与发布

为了准备分发的包:

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

这将在 dist/ 目录下创建源码和 wheel 分布。

  1. 发布到 PyPI:
uv publish

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

  • Token: --tokenUV_PUBLISH_TOKEN
  • 或用户名/密码: --username/UV_PUBLISH_USERNAME--password/UV_PUBLISH_PASSWORD

调试

由于 MCP 服务器通过标准 I/O 运行,调试可能会很困难。为了获得最佳的调试体验,我们强烈建议使用 MCP Inspector

您可以使用以下命令通过 npm 启动 MCP Inspector:

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

启动后,Inspector 将显示一个可以在浏览器中访问的 URL 来开始调试。