MCP Code Executor
Исполнитель кода MCP
MCP Code Executor — это сервер MCP, который позволяет LLM выполнять код Python в указанной среде Python. Это позволяет LLM запускать код с доступом к библиотекам и зависимостям, определенным в среде. Он также поддерживает инкрементальную генерацию кода для обработки больших блоков кода, которые могут превышать ограничения токенов.
Функции
Выполнение кода Python из подсказок LLM
Поддержка инкрементальной генерации кода для преодоления ограничений токенов
Запустить код в указанной среде (Conda, virtualenv или UV virtualenv)
Устанавливайте зависимости при необходимости
Проверьте, установлены ли уже пакеты
Динамически настраивать среду во время выполнения
Настраиваемый каталог хранения кодов
Related MCP server: PRIMS – Python Runtime Interpreter MCP Server
Предпосылки
Node.js установлен
Один из следующих вариантов:
Conda установлена с созданием желаемой среды Conda
Виртуальное окружение Python
УФ виртуальное окружение
Настраивать
Клонируйте этот репозиторий:
git clone https://github.com/bazinga012/mcp_code_executor.gitПерейдите в каталог проекта:
cd mcp_code_executorУстановите зависимости Node.js:
npm installСоздайте проект:
npm run buildКонфигурация
Чтобы настроить сервер MCP Code Executor, добавьте следующее в файл конфигурации серверов 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"
}
}
}
}Использование Докера
{
"mcpServers": {
"mcp-code-executor": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"mcp-code-executor"
]
}
}
}Примечание: Dockerfile был протестирован только с типом среды venv-uv. Другие типы среды могут потребовать дополнительной настройки.
Переменные среды
Требуемые переменные
CODE_STORAGE_DIR: Каталог, в котором будет сохранен сгенерированный код.
Тип среды (выберите одну настройку)
Для Конды:
ENV_TYPE: Установить значениеcondaCONDA_ENV_NAME: Имя используемой среды Conda
Для стандартного Virtualenv:
ENV_TYPE: Установить наvenvVENV_PATH: Путь к каталогу virtualenv
Для UV Virtualenv:
ENV_TYPE: Установитьvenv-uvUV_VENV_PATH: Путь к каталогу UV virtualenv
Доступные инструменты
MCP Code Executor предоставляет следующие инструменты для 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 Code Executor позволит LLM выполнять код Python, генерируя файл в указанном CODE_STORAGE_DIR и запуская его в настроенной среде.
LLM могут генерировать и выполнять код, ссылаясь на этот сервер MCP в своих подсказках.
Обработка больших блоков кода
Для более крупных блоков кода, которые могут превысить ограничения токенов LLM, используйте подход инкрементной генерации кода:
Инициализируйте файл с базовой структурой, используя
initialize_code_fileДобавьте больше кода в последующие вызовы с помощью
append_to_code_fileПри необходимости проверьте содержимое файла с помощью
read_code_fileВыполните весь код с помощью
execute_code_file
Такой подход позволяет LLM писать сложный, многокомпонентный код, не сталкиваясь с ограничениями токенов.
Обратная совместимость
Этот пакет поддерживает обратную совместимость с более ранними версиями. Пользователи предыдущих версий, которые указали только среду Conda, продолжат работать без каких-либо изменений в своей конфигурации.
Внося вклад
Вклады приветствуются! Пожалуйста, откройте тему или отправьте запрос на извлечение.
Лицензия
Данный проект лицензирован по лицензии MIT.
Maintenance
Related MCP Servers
- Alicense-qualityDmaintenanceAn interactive Python code execution environment that allows users and LLMs to safely execute Python code and install packages in isolated Docker containers.Last updated40Apache 2.0
- Alicense-qualityFmaintenanceEnables LLM agents to execute arbitrary Python code in secure, isolated sandbox environments with automatic dependency management and file handling. Each code execution runs in a fresh virtual environment that gets destroyed after completion, providing safe and reproducible Python code execution.Last updated29MIT
- Flicense-qualityDmaintenanceEnables LLMs to execute Python code in isolated sandboxes with file operations and MCP integration, supporting multi-round execution and plot capture.Last updated1
- FlicenseAqualityDmaintenanceEnables LLMs to interact with Python environments, execute code, manage files, and handle packages through the Model Context Protocol.Last updated9
Related MCP Connectors
Operate your Linux servers from your LLM. Every action runs through an auditable allowlist.
Build, validate, and deploy multi-agent AI solutions from any AI environment.
Runtime permission, approval, and audit layer for AI agent tool execution.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/bazinga012/mcp_code_executor'
If you have feedback or need assistance with the MCP directory API, please join our Discord server