MCP Python Executor

MCP Python Executor

MCP Python Executor 是一个用于执行Python代码、管理包以及在安全约束和可配置限制下监控资源的安全服务器。

简介

MCP Python 执行器是一个安全的服务,用于执行 Python 代码和管理包,具有资源监控和可配置限制功能。

基本配置

通过 MCP 设置中的环境变量配置服务:

{
  "mcpServers": {
    "mcp-python-executor": {
      "command": "node",
      "args": ["path/to/python-executor/build/index.js"],
      "env": {
        "PREINSTALLED_PACKAGES": "numpy pandas matplotlib scikit-learn",
        "MAX_MEMORY_MB": "512",
        "EXECUTION_TIMEOUT_MS": "30000",
        "MAX_CONCURRENT_EXECUTIONS": "5"
      }
    }
  }
}

主要功能

执行 Python 代码

使用 execute_python 工具运行代码:

# 内联代码示例
{
  "code": "print('Hello, World!')\nfor i in range(3): print(i)",
  "inputData": ["optional", "input", "data"]
}

# 或使用脚本文件
{
  "scriptPath": "/path/to/your_script.py",
  "inputData": ["optional", "input", "data"]
}

安装 Python 包

通过 install_packages 工具添加新包:

{
  "packages": ["package1", "package2"]
}

环境变量说明

  • PREINSTALLED_PACKAGES: 启动时预安装的包(空格分隔)
  • MAX_MEMORY_MB: 每次执行的内存限制(默认:512)
  • EXECUTION_TIMEOUT_MS: 执行超时(毫秒,默认:30000)
  • MAX_CONCURRENT_EXECUTIONS: 最大并发执行数(默认:5)
  • LOG_LEVEL: 日志级别(debug|info|error,默认:info)
  • LOG_FORMAT: 日志格式(json|text,默认:json)

安全与限制

服务在安全约束下运行,包括内存限制、执行时间限制和并发执行限制,以确保稳定性和安全性。