Token导航 LogoToken导航TokenDH.com
MCP Python Repl logo
运维云端stdio官方级别未说明来源级核验

MCP Python Repl

MCP Server

一个提供持久化Python REPL的服务,支持多会话、沙盒保护和超时保护,适用于需要跨多次调用执行Python代码的LLM代理。

工具数

12

提示词数

0

GitHub Stars

0

资源数

0
Python代码执行云端部署

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

aazizisoufiane

提供方

aazizisoufiane

最后核验

2026/5/17 20:23

运行时

Python

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

uv run mcp-python-repl

详细介绍

🐍 mcp python repl

A. 生产级 MCP服务器提供具有多会话支持、沙盒和超时保护的持久Python REPL。

为需要在多个回合中执行Python代码的LLM代理构建 在调用之间持续存在的变量.

✨ 特性

特性描述
多会话具有唯一ID的隔离会话--运行并行工作流
持久命名空间变量在会话内的调用中存活
超时保护可配置的执行超时(Unix上的SIGALRM)
沙箱可选模式阻止危险模块(subprocess, socket等等)
软件包安装动态安装pip包(首选 uv 速度)
文件执行快跑 .py 持久会话中的文件
双重运输stdio(本地)和可流式传输的http(远程)
全面反省列出变量,获取历史记录,检查服务器状态
基于Env的配置所有设置通过 REPL_* 环境变量

🚀 快速开始

使用克劳德桌面/光标(stdio)

添加到MCP配置中:

{
  "mcpServers": {
    "python-repl": {
      "command": "uvx",
      "args": ["mcp-python-repl"]
    }
  }
}

使用uv(本地开发)

# Clone and run
git clone https://github.com/soufiane-aazizi/mcp-python-repl.git
cd mcp-python-repl
uv run mcp-python-repl

HTTP传输(远程/多客户端)

REPL_TRANSPORT=streamable-http REPL_PORT=8000 uv run mcp-python-repl

🛠️ 工具

代码执行

工具说明
repl_run_code使用持久命名空间执行Python代码
repl_run_file执行a .py 会话中的文件
repl_install_package安装pip包(使用 uv 如果可用)

命名空间管理

工具说明
repl_list_namespace列出会话中的所有变量
repl_get_variable获取变量的完整值
repl_set_variable从JSON中注入变量
repl_delete_variable删除特定变量
repl_clear_namespace清除会话中的所有变量

会话管理

工具说明
repl_list_sessions列出所有活动会话
repl_delete_session删除会话及其数据

调试

工具说明
repl_get_history获取会话的执行历史记录
repl_server_status服务器配置、Python版本、会话计数

🔄 毅力是如何发挥作用的

Call 1:  repl_run_code(code="data = [1,2,3]; total = sum(data); result = total")
         → returns: {"result": 6, "session_id": "a1b2c3d4e5f6", "new_variables": ["data", "total"]}

Call 2:  repl_run_code(code="doubled = [x*2 for x in data]; result = doubled", session_id="a1b2c3d4e5f6")
         → returns: {"result": [2,4,6], "new_variables": ["doubled"]}
重要提示:result 变量用于将输出返回给调用者。确实如此 坚持。请改用命名变量。

⚙️ 配置

所有设置均可通过环境变量进行配置:

变量默认值描述
REPL_TIMEOUT30最大执行时间(秒)
REPL_MAX_SESSIONS50最大并发会话数
REPL_SESSION_TTL120会话到期时间(分钟)
REPL_MAX_OUTPUT1048576最大stdout/stderr捕获量(字节)
REPL_SANDBOXfalse启用沙盒(true/false)
REPL_TRANSPORTstdio运输: stdiostreamable-http
REPL_HOST127.0.0.1HTTP主机(使用HTTP传输时)
REPL_PORT8000HTTP端口(使用HTTP传输时)
REPL_WORKDIRcwd执行工作目录

沙盒模式

REPL_SANDBOX=true,以下模块被阻止:

subprocess, shutil, ctypes, socket, http.server, xmlrpc, ftplib, smtplib, telnetlib, webbrowser

以下内置组件已被移除: exec, eval, compile, __import__ (替换为受限版本)。

🧪 发展

# Install dev dependencies
uv sync --extra dev

# Run tests
uv run pytest -v

# Lint
uv run ruff check src/ tests/

# Test with MCP Inspector
npx @modelcontextprotocol/inspector uv run mcp-python-repl

📦 项目结构

mcp-python-repl/
├── src/mcp_python_repl/
│   ├── __init__.py       # Package metadata
│   ├── config.py         # Env-based configuration
│   ├── session.py        # Multi-session manager with TTL
│   ├── executor.py       # Python code executor (timeout + sandbox)
│   └── server.py         # MCP server with all tools
├── tests/
│   └── test_core.py      # Unit + integration tests
├── pyproject.toml        # uv/hatch project config
├── LICENSE               # MIT
└── README.md

📄 许可证

麻省理工学院——见 许可证.

目录标签

目录标签

Python代码执行云端部署PythonREPL本地部署多会话支持沙盒保护超时保护

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

session

运行时(runtime,运行环境)

Python

工具数量(toolCount,工具数)

12

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdiosession部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP