Redmine MCP Server for Cline

Integra-se com o Redmine para gerenciar projetos e tarefas por meio da extensão Cline para VS Code.

Documentação

Redmine MCP Server for Cline

Este é um servidor MCP (Model Context Protocol) personalizado que se integra ao Redmine, permitindo que você interaja com seus projetos e issues do Redmine por meio da extensão Cline do VS Code.

Pré-requisitos

  • Node.js: Você precisa ter o Node.js (versão 18 ou mais recente) instalado no seu sistema.
  • Instância do Redmine: Você precisa de uma instância do Redmine em execução com a API REST habilitada.
  • Chave de API do Redmine: Você precisa de uma chave de API para sua conta de usuário do Redmine. Você pode encontrá-la nas configurações da sua conta do Redmine (geralmente em "Minha conta" -> "Chave de acesso à API").
  • Cline: Você precisa ter a extensão Cline do VS Code instalada e configurada.

Instalação

  1. Clone o repositório:
    git clone https://github.com/ilask/Redmine-MCP.git
    cd Redmine-MCP
    
  2. Instale as dependências:
    npm install
    

Configuração

  1. Defina as variáveis de ambiente: Crie um arquivo .env na raiz do diretório do projeto e adicione o seguinte, substituindo os placeholders pelo seu hostname e chave de API reais do Redmine:

    REDMINE_HOST=your-redmine-host.com
    REDMINE_API_KEY=your-redmine-api-key
    

    Importante: Não envie seu arquivo .env para o controle de versão! Ele contém informações sensíveis. O arquivo .gitignore incluído neste repositório deve impedir que ele seja commitado.

Adicionando ao Cline

  1. Abra as Configurações do Cline: No VS Code, abra a extensão Cline e vá para a aba Servidor MCP.

  2. Edite as Configurações do MCP: Clique em "Editar Configurações do MCP" para abrir o arquivo cline_mcp_settings.json.

  3. Adicione o servidor: Adicione a seguinte entrada ao objeto mcpServers, substituindo o caminho args pelo caminho absoluto do arquivo server.js no seu sistema:

    {
      "mcpServers": {
        "redmine-server": {
          "command": "node",
          "args": ["C:\\Users\\yourusername\\path\\to\\Redmine-MCP\\server.js"],
          "disabled": false,
          "autoApprove": []
        }
      }
    }
    

    Importante: Certifique-se de usar barras invertidas duplas (\\) no caminho no Windows.

  4. Salve: Salve o arquivo cline_mcp_settings.json. O Cline deve detectar automaticamente as alterações e iniciar o servidor.

Recursos e Ferramentas Disponíveis

Recursos

  • redmine://projects/{project_id}: Este recurso representa um projeto do Redmine. Substitua {project_id} pelo ID real de um projeto na sua instância do Redmine. Você pode usar a ferramenta access_mcp_resource no Cline para ler os detalhes de um projeto. Por exemplo:

    <access_mcp_resource>
    <server_name>redmine-server</server_name>
    <uri>redmine://projects/123</uri>
    </access_mcp_resource>
    

(Substitua 123 por um ID de projeto válido). Isso retornará os detalhes do projeto em JSON.

Ferramentas

  • create_issue: Esta ferramenta permite criar uma nova issue no Redmine. Ela aceita os seguintes parâmetros:

    • project_id (string, obrigatório): O ID do projeto onde a issue deve ser criada.
    • subject (string, obrigatório): O assunto da issue.
    • description (string, obrigatório): A descrição da issue.

    Você pode usar a ferramenta use_mcp_tool no Cline para chamar esta ferramenta. Por exemplo:

    <use_mcp_tool>
    <server_name>redmine-server</server_name>
    <tool_name>create_issue</tool_name>
    <arguments>
    {
      "project_id": "456",
      "subject": "My New Issue",
      "description": "This is a test issue created via Cline."
    }
    </arguments>
    </use_mcp_tool>
    

    (Substitua 456 por um ID de projeto válido). Isso criará uma nova issue no projeto especificado e retornará os detalhes da issue em JSON.

Solução de Problemas

  • Erro de conexão fechada: Se você vir um erro como "MCP error -1: Connection closed", certifique-se de que suas variáveis de ambiente REDMINE_HOST e REDMINE_API_KEY estão configuradas corretamente. Além disso, verifique se sua instância do Redmine está acessível a partir do seu computador.
  • Verifique os logs do servidor: Se você encontrar problemas, verifique a saída do servidor no terminal do VS Code para ver mensagens de erro. O servidor registra erros no console.