Executor de Código Mcp

Criado porbazinga012bazinga012

O Executor de Código MCP é um servidor MCP que permite que LLMs executem código Python dentro de um ambiente Conda especificado.

Visão geral

O que é o Executor de Código MCP?

O ### Executor de Código MCP é um servidor especializado projetado para executar código Python dentro de um ambiente Conda específico. Ele serve como uma ponte para Modelos de Linguagem Grande (LLMs) executarem scripts Python de forma contínua, garantindo que as dependências e ambientes necessários sejam gerenciados corretamente. Esta ferramenta é particularmente útil para desenvolvedores e pesquisadores que precisam testar e executar trechos de código em um ambiente controlado.

Recursos do Executor de Código MCP

  • Gerenciamento de Ambiente Conda: Configura e gerencia automaticamente ambientes Conda para garantir que todas as dependências sejam atendidas para a execução do código Python.
  • Integração com LLMs: Permite que LLMs executem código Python, facilitando a utilização de capacidades de IA em tarefas de codificação.
  • Repositório Público: O código está disponível em um repositório público, permitindo contribuições e colaborações da comunidade.
  • Interface Amigável: Projetado com a usabilidade em mente, tornando fácil para os usuários executarem código sem um profundo conhecimento técnico.
  • Código Aberto: O projeto é de código aberto, incentivando desenvolvedores a contribuir e aprimorar suas capacidades.

Como Usar o Executor de Código MCP

  1. Clone o Repositório: Comece clonando o repositório do Executor de Código MCP do GitHub.

    git clone https://github.com/bazinga012/mcp_code_executor.git
    
  2. Instale as Dependências: Navegue até o diretório clonado e instale as dependências necessárias usando o Conda.

    cd mcp_code_executor
    conda env create -f environment.yml
    conda activate mcp_env
    
  3. Execute o Servidor: Inicie o servidor do Executor de Código MCP para começar a executar código Python.

    python server.py
    
  4. Execute o Código: Use a API ou interface fornecida para enviar código Python para execução. O servidor cuidará da execução dentro do ambiente Conda especificado.

  5. Verifique os Resultados: Recupere a saída do código executado através da interface ou resposta da API.

Perguntas Frequentes

Quais linguagens de programação o Executor de Código MCP suporta?

Atualmente, o Executor de Código MCP é projetado especificamente para Python. No entanto, atualizações futuras podem incluir suporte para outras linguagens.

O Executor de Código MCP é gratuito para usar?

Sim, o Executor de Código MCP é de código aberto e gratuito para usar. Você pode encontrar o código-fonte no GitHub.

Como posso contribuir para o projeto Executor de Código MCP?

Você pode contribuir fazendo um fork do repositório, fazendo suas alterações e enviando um pull request. Contribuições da comunidade são bem-vindas e incentivadas.

Quais são os requisitos do sistema para executar o Executor de Código MCP?

Você precisará de um sistema que suporte Conda e Python. Os requisitos específicos podem ser encontrados no arquivo environment.yml no repositório.

Posso usar o Executor de Código MCP para aplicações em produção?

Embora o Executor de Código MCP seja projetado principalmente para testes e desenvolvimento, ele pode ser adaptado para uso em produção com as configurações e otimizações adequadas.

Detalhe

MCP Code Executor

smithery badge

The MCP Code Executor is an MCP server that allows LLMs to execute Python code within a specified Python environment. This enables LLMs to run code with access to libraries and dependencies defined in the environment. It also supports incremental code generation for handling large code blocks that may exceed token limits.

<a href="https://glama.ai/mcp/servers/45ix8xode3"><img width="380" height="200" src="https://glama.ai/mcp/servers/45ix8xode3/badge" alt="Code Executor MCP server" /></a>

Features

  • Execute Python code from LLM prompts
  • Support for incremental code generation to overcome token limitations
  • Run code within a specified environment (Conda, virtualenv, or UV virtualenv)
  • Install dependencies when needed
  • Check if packages are already installed
  • Dynamically configure the environment at runtime
  • Configurable code storage directory

Prerequisites

  • Node.js installed
  • One of the following:
    • Conda installed with desired Conda environment created
    • Python virtualenv
    • UV virtualenv

Setup

  1. Clone this repository:
git clone https://github.com/bazinga012/mcp_code_executor.git
  1. Navigate to the project directory:
cd mcp_code_executor
  1. Install the Node.js dependencies:
npm install
  1. Build the project:
npm run build

Configuration

To configure the MCP Code Executor server, add the following to your MCP servers configuration file:

Using 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"
      }
    }
  }
}

Using Docker

{
  "mcpServers": {
    "mcp-code-executor": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "mcp-code-executor"
      ]
    }
  }
}

Note: The Dockerfile has been tested with the venv-uv environment type only. Other environment types may require additional configuration.

Environment Variables

Required Variables
  • CODE_STORAGE_DIR: Directory where the generated code will be stored
Environment Type (choose one setup)
  • For Conda:

    • ENV_TYPE: Set to conda
    • CONDA_ENV_NAME: Name of the Conda environment to use
  • For Standard Virtualenv:

    • ENV_TYPE: Set to venv
    • VENV_PATH: Path to the virtualenv directory
  • For UV Virtualenv:

    • ENV_TYPE: Set to venv-uv
    • UV_VENV_PATH: Path to the UV virtualenv directory

Available Tools

The MCP Code Executor provides the following tools to LLMs:

1. execute_code

Executes Python code in the configured environment. Best for short code snippets.

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

2. install_dependencies

Installs Python packages in the environment.

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

3. check_installed_packages

Checks if packages are already installed in the environment.

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

4. configure_environment

Dynamically changes the environment configuration.

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

5. get_environment_config

Gets the current environment configuration.

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

6. initialize_code_file

Creates a new Python file with initial content. Use this as the first step for longer code that may exceed token limits.

{
  "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

Appends content to an existing Python code file. Use this to add more code to a file created with 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

Executes an existing Python file. Use this as the final step after building up code with initialize_code_file and append_to_code_file.

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

9. read_code_file

Reads the content of an existing Python code file. Use this to verify the current state of a file before appending more content or executing it.

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

Usage

Once configured, the MCP Code Executor will allow LLMs to execute Python code by generating a file in the specified CODE_STORAGE_DIR and running it within the configured environment.

LLMs can generate and execute code by referencing this MCP server in their prompts.

Handling Large Code Blocks

For larger code blocks that might exceed LLM token limits, use the incremental code generation approach:

  1. Initialize a file with the basic structure using initialize_code_file
  2. Add more code in subsequent calls using append_to_code_file
  3. Verify the file content if needed using read_code_file
  4. Execute the complete code using execute_code_file

This approach allows LLMs to write complex, multi-part code without running into token limitations.

Backward Compatibility

This package maintains backward compatibility with earlier versions. Users of previous versions who only specified a Conda environment will continue to work without any changes to their configuration.

Contributing

Contributions are welcome! Please open an issue or submit a pull request.

License

This project is licensed under the MIT License.

Configuração do Servidor

{
  "mcpServers": {
    "mcp-code-executor": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "ghcr.io/metorial/mcp-container--bazinga012--mcp_code_executor--mcp-code-executor",
        "node ./build/index.js"
      ],
      "env": {
        "CODE_STORAGE_DIR": "code-storage-dir",
        "CONDA_ENV_NAME": "conda-env-name"
      }
    }
  }
}

Informações do Projeto

Autor
bazinga012
Criado em
Jun 25, 2025
Estrela
153
Idioma
JavaScript
Etiquetas
-

Executor de Código M... Alternativa

Para algumas alternativas a Executor de Código M... que você pode precisar, fornecemos sites divididos por categoria.

MCP Terminal é um servidor de controle de terminal baseado no MCP (Protocolo de Contexto do Modelo), projetado especificamente para integração com modelos de linguagem de grande porte (LLM) e assistentes de IA. Ele oferece uma interface padronizada que permite que a IA execute comandos de terminal e obtenha resultados de saída.

Um poderoso servidor de Protocolo de Contexto de Modelo (MCP) que oferece uma solução completa para acesso público à web.

Servidor MCP aprimorado para feedback interativo do usuário e execução de comandos no desenvolvimento assistido por IA, com suporte a interface dupla (UI Web e Aplicativo Desktop) com detecção inteligente de ambiente e compatibilidade entre plataformas.

Um servidor MCP completo do Elasticsearch

Este servidor MCP somente leitura permite que você se conecte aos dados de Email a partir do Claude Desktop através dos Drivers JDBC da CData. Servidores gratuitos (beta) de leitura/escrita disponíveis em https://www.cdata.com/solutions/mcp

Servidor MCP Oficial Firecrawl - Adiciona poderosas capacidades de web scraping ao Cursor, Claude e qualquer outro cliente LLM.

Tempo
@modelcontextprotocol

O Servidor MCP de Tempo é um servidor do Protocolo de Contexto de Modelo que fornece capacidades de conversão de tempo e fuso horário. Ele permite que LLMs obtenham informações sobre a hora atual e realizem conversões de fuso horário usando nomes de fuso horário da IANA, com detecção automática do fuso horário do sistema.

Ver Mais >>