Token导航 LogoToken导航TokenDH.com
MCP Code Executor logo
开发工具HTTP官方级别未说明来源级核验

MCP Code Executor

MCP Server

The MCP Code Executor is an MCP server that allows LLMs to execute Python code within a specified Conda environment.

工具数

9

提示词数

0

GitHub Stars

216

资源数

0
LLM工具JavaScript代码生成

安装说明

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

作者 / 组织

bazinga012

提供方

bazinga012

最后核验

2026/5/18 04:07

快速接入

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

详细介绍

MCP代码执行器

](https://smithery.ai/server/@bazinga012/mcp_code_executor)

MCP代码执行器是一个MCP服务器,允许LLM在指定的Python环境中执行Python代码。这使得LLM能够通过访问环境中定义的库和依赖关系来运行代码。它还支持增量代码生成,以处理可能超过令牌限制的大型代码块。

特性

  • 从LLM提示执行Python代码
  • 支持增量代码生成以克服令牌限制
  • 在指定环境(Conda、virtualenv或UV-virtualenv)中运行代码
  • 需要时安装依赖项
  • 检查软件包是否已安装
  • 在运行时动态配置环境
  • 可配置代码存储目录

先决条件

  • 已安装Node.js
  • 以下之一:

- 已安装Conda,并创建了所需的Conda环境 - Python虚拟环境 - UV虚拟

设置

  1. 克隆此存储库:
git clone https://github.com/bazinga012/mcp_code_executor.git
  1. 导航到项目目录:
cd mcp_code_executor
  1. 安装Node.js依赖项:
npm install
  1. 构建项目:
npm run build

配置

要配置MCP代码执行器服务器,请将以下内容添加到MCP服务器配置文件中:

使用Node.js

{
  "mcpServers": {
    "mcp-code-executor": {
      "command": "node",
      "args": [
        "/path/to/mcp_code_executor/build/index.js" 
      ],
      "env": {
        "CODE_STORAGE_DIR": "/path/to/code/storage",
        "ENV_TYPE": "conda",
        "CONDA_ENV_NAME": "your-conda-env"
      }
    }
  }
}

使用Docker

{
  "mcpServers": {
    "mcp-code-executor": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "mcp-code-executor"
      ]
    }
  }
}
注: Dockerfile仅在venv-uv环境类型下进行了测试。其他环境类型可能需要额外的配置。

环境变量

必需变量

  • CODE_STORAGE_DIR:存储生成代码的目录

环境类型(选择一个设置)

  • 对于Conda:

- ENV_TYPE:设置为 conda - CONDA_ENV_NAME:要使用的Conda环境的名称

  • 对于标准Virtualenv:

- ENV_TYPE:设置为 venv - VENV_PATH:virtualenv目录的路径

  • 对于UV Virtualenv:

- ENV_TYPE:设置为 venv-uv - UV_VENV_PATH:UV virtualenv目录的路径

可用工具

MCP代码执行器为LLM提供以下工具:

1. execute_code

在配置的环境中执行Python代码。最适合短代码片段。

{
  "name": "execute_code",
  "arguments": {
    "code": "import numpy as np\nprint(np.random.rand(3,3))",
    "filename": "matrix_gen"
  }
}

2. install_dependencies

在环境中安装Python包。

{
  "name": "install_dependencies",
  "arguments": {
    "packages": ["numpy", "pandas", "matplotlib"]
  }
}

3. check_installed_packages

检查环境中是否已安装包。

{
  "name": "check_installed_packages",
  "arguments": {
    "packages": ["numpy", "pandas", "non_existent_package"]
  }
}

4. configure_environment

动态更改环境配置。

{
  "name": "configure_environment",
  "arguments": {
    "type": "conda",
    "conda_name": "new_env_name"
  }
}

5. get_environment_config

获取当前环境配置。

{
  "name": "get_environment_config",
  "arguments": {}
}

6. initialize_code_file

创建一个包含初始内容的新Python文件。对于可能超过令牌限制的较长代码,请将此作为第一步。

{
  "name": "initialize_code_file",
  "arguments": {
    "content": "def main():\n    print('Hello, world!')\n\nif __name__ == '__main__':\n    main()",
    "filename": "my_script"
  }
}

7. append_to_code_file

将内容附加到现有的Python代码文件中。使用此选项可将更多代码添加到使用initialize_code_file创建的文件中。

{
  "name": "append_to_code_file",
  "arguments": {
    "file_path": "/path/to/code/storage/my_script_abc123.py",
    "content": "\ndef another_function():\n    print('This was appended to the file')\n"
  }
}

8. execute_code_file

执行现有的Python文件。使用initialize_code_file和append_to_code_file构建代码后,将此作为最后一步。

{
  "name": "execute_code_file",
  "arguments": {
    "file_path": "/path/to/code/storage/my_script_abc123.py"
  }
}

9. read_code_file

读取现有Python代码文件的内容。在附加更多内容或执行文件之前,使用此功能验证文件的当前状态。

{
  "name": "read_code_file",
  "arguments": {
    "file_path": "/path/to/code/storage/my_script_abc123.py"
  }
}

用法

配置后,MCP代码执行器将允许LLM通过在指定的文件中生成文件来执行Python代码 CODE_STORAGE_DIR 并在配置的环境中运行它。

LLM可以通过在提示中引用此MCP服务器来生成和执行代码。

处理大型代码块

对于可能超过LLM令牌限制的较大代码块,请使用增量代码生成方法:

  1. 初始化文件 使用基本结构 initialize_code_file
  2. 添加更多代码 在后续通话中使用 append_to_code_file
  3. 验证文件内容 如果需要使用 read_code_file
  4. 执行完整代码 使用 execute_code_file

这种方法允许LLM编写复杂的多部分代码,而不会遇到令牌限制。

向后兼容

此软件包保持与早期版本的向后兼容性。仅指定Conda环境的早期版本的用户将继续工作,而不会对其配置进行任何更改。

贡献

欢迎投稿!请打开问题或提交拉取请求。

许可证

该项目根据MIT许可证获得许可。

目录标签

目录标签

LLM工具JavaScript代码生成developer-toolsPython执行环境本地部署增量执行虚拟环境管理

接入字段

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

HTTP

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

none

部署方式(deploymentType,部署类型)

local-only

工具数量(toolCount,工具数)

9

资源数量(resourceCount,资源数)

0

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

0

权限和风险

HTTPnonelocal-only

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

安装前确认

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

仍需确认:installCommand

来源信息

继续浏览同类 MCP