Taiga MCP Server
Servidor MCP conectando assistentes de IA ao Taiga - projetos, épicos, histórias de usuário, tarefas, issues, sprints, wiki e mais.
Documentação
Taiga MCP Server
Conecte o Claude, Cursor, Windsurf ou qualquer outro assistente de IA compatível com MCP à sua ferramenta de gerenciamento de projetos Taiga — leia e atualize épicos, histórias de usuário, tarefas, problemas, sprints, comentários e páginas wiki apenas conversando, em linguagem natural. Nenhuma codificação é necessária para usá-lo.
Em palavras simples: MCP (Model Context Protocol) é um padrão que permite que um assistente de IA use ferramentas externas com segurança — como ler seus arquivos ou navegar na web. Este pacote é essa "ferramenta" para o Taiga: é a ponte que permite que seu assistente de IA veja e altere coisas na sua conta do Taiga quando você pedir.
Pacote no npm: @madebyclowd/taiga-mcp-server
Não é um produto oficial do Taiga. Esta é uma integração independente e de código aberto.
Sumário
- O que eu posso fazer com isso?
- Antes de começar
- Instalação
- Configure com Claude Desktop, Claude Code, Cursor ou Windsurf
- Executando como um servidor HTTP compartilhado
- Todas as configurações (variáveis de ambiente)
- O que é coberto e como lida com problemas
- Perguntas frequentes
- Contribuindo / executando os testes
- Segurança
- Licença
O que eu posso fazer com isso?
Depois de conectado, você pode pedir ao seu assistente de IA coisas como:
- "Mostre-me todos os bugs abertos no projeto Website."
- "Crie uma tarefa chamada 'Corrigir botão de login' no sprint atual."
- "Mova a história de usuário #482 para a coluna de QA."
- "Resuma o que mudou no épico #12 esta semana."
- "Pesquise na wiki nossos passos de implantação."
Você não digita nenhum código ou chamada de API — você apenas pergunta, em frases normais, e o assistente faz o resto.
Nos bastidores, o assistente faz isso chamando este servidor, que conversa com a API real do Taiga usando seu próprio login do Taiga. Ele só faz o que sua conta do Taiga já tem permissão para fazer — não pode ver ou alterar nada para o qual você já não tenha permissão no próprio Taiga.
Ele suporta:
- Projetos, épicos, histórias de usuário, tarefas, problemas, sprints (marcos), páginas wiki, comentários (incluindo edição/exclusão), anexos (incluindo download), membros do projeto, votação/observação, busca por ref (
#436→ o item certo), criação em lote e pesquisa. Se está no Taiga, há uma boa chance de que isso cubra. - Atribua pessoas por e-mail ou nome completo em vez de procurar um ID numérico de usuário — o servidor descobre quem você quer dizer a partir da lista de membros do projeto.
- Cada resposta informa ao assistente de IA se há mais resultados aguardando (paginação) e permite que ele peça uma versão mais curta ou mais completa dos dados (uma configuração
verbosity:minimal/standard/full). Em termos simples: pedir "liste meu backlog" não vai despejar uma parede de dados brutos na sua conversa e consumir a memória do assistente sobre o que você estava falando — ele recebe apenas o suficiente para responder. - Consultas baratas de IDs de filtro (
user_story_filters_data,task_filters_data,issue_filters_data) em vez de percorrer uma lista completa apenas para encontrar um status ou ID de tag válido. - Cada ferramenta é claramente rotulada como somente leitura, segura para repetir ou algo que altera dados — para que seu assistente de IA (e você) possa identificar rapidamente o que é inofensivo de executar e o que merece uma segunda olhada antes de confirmar.
- Uma ferramenta alternativa de "solicitação bruta" para o raro endpoint da API do Taiga que ainda não tem uma ferramenta dedicada (webhooks, importação/exportação e recursos semelhantes de nível administrativo).
Antes de começar
Você precisa de:
- Uma conta Taiga — seja no Taiga Cloud ou em uma instância Taiga auto-hospedada.
- Node.js versão 22.11 ou mais recente, ou versão 24 ou mais recente.
- Um assistente de IA que suporte MCP — Claude Desktop, Claude Code, Cursor, Windsurf ou qualquer outro cliente compatível com MCP.
Você não precisa instalar ou executar nada relacionado ao Taiga — isso se conecta à sua conta Taiga existente pela internet (ou pela URL da sua instância auto-hospedada).
Instalação
Você não precisa instalar isso manualmente. Seu assistente de IA fará o download e o executará automaticamente na primeira vez que for usado, via npx. Se preferir instalar você mesmo:
# Run it once, without installing anything permanently
npx -y @madebyclowd/taiga-mcp-server
Ou instale globalmente, usando o gerenciador de pacotes que você já usa — você só precisa de um destes:
pnpm add -g @madebyclowd/taiga-mcp-server
# or
npm install -g @madebyclowd/taiga-mcp-server
Configure com Claude Desktop, Claude Code, Cursor ou Windsurf
Todas essas ferramentas usam o mesmo tipo de arquivo de configuração, geralmente um arquivo JSON com uma seção mcpServers. Adicione isso ao seu:
Opção A: usando um token de acesso do Taiga (recomendado)
Esta é a opção mais segura — sua senha nunca é armazenada em lugar nenhum.
- Faça login no Taiga no seu navegador.
- Obtenha seu token de autenticação (no Taiga Cloud, isso está disponível nas configurações da sua conta ou na API; para Taiga auto-hospedado, pergunte ao seu administrador como os tokens são emitidos).
- Adicione isso à sua configuração:
{
"mcpServers": {
"taiga": {
"command": "npx",
"args": ["-y", "@madebyclowd/taiga-mcp-server"],
"env": {
"TAIGA_BASE_URL": "https://api.taiga.io",
"TAIGA_TOKEN": "your-taiga-auth-token"
}
}
}
}
Opção B: usando seu nome de usuário e senha
{
"mcpServers": {
"taiga": {
"command": "npx",
"args": ["-y", "@madebyclowd/taiga-mcp-server"],
"env": {
"TAIGA_BASE_URL": "https://api.taiga.io",
"TAIGA_USERNAME": "your-username",
"TAIGA_PASSWORD": "your-password"
}
}
}
}
Usando Taiga auto-hospedado? Basta alterar TAIGA_BASE_URL para a URL da sua própria instância, por exemplo https://taiga.mycompany.com.
Depois de salvar a configuração, reinicie seu assistente de IA (ou recarregue suas conexões MCP). Ele agora deve mostrar as ferramentas do Taiga como disponíveis.
Executando como um servidor HTTP compartilhado
A configuração acima (chamada "stdio") executa uma cópia privada do servidor apenas para você, no seu próprio computador. Se você quiser executar um servidor compartilhado ao qual uma equipe possa se conectar pela rede, use o modo HTTP.
A diferença importante: no modo HTTP, o login do Taiga de ninguém é armazenado no servidor. Cada pessoa que se conecta envia seu próprio token do Taiga em cada solicitação, então cada um mantém suas próprias permissões e trilha de auditoria do Taiga — ninguém precisa compartilhar uma conta.
# Start the HTTP server — same package, a different command it exposes
npx -y --package=@madebyclowd/taiga-mcp-server -- taiga-mcp-server-http
Cada cliente se conecta enviando seu token do Taiga em um cabeçalho HTTP padrão:
POST /mcp HTTP/1.1
Host: your-server:3000
Content-Type: application/json
Authorization: Bearer <your-taiga-auth-token>
Se você estiver expondo este servidor na internet (não apenas na sua própria máquina ou rede local), leia a nota HTTP_ALLOWED_ORIGINS na tabela de configurações abaixo — o padrão é permissivo de propósito para facilitar o uso local/em equipe, e você deve restringi-lo para uma implantação pública.
Todas as configurações (variáveis de ambiente)
Usadas por ambos os modos
| Configuração | Obrigatório? | O que faz | Padrão |
|---|---|---|---|
TAIGA_BASE_URL | Sim | O endereço da API do Taiga para conectar. | https://api.taiga.io |
LOG_LEVEL | Não | Quanto o servidor registra em log (error, info, debug, etc.). | info |
TAIGA_REQUIRE_ELICITATION | Não | true/1 para exigir uma confirmação humana real em cada exclusão. Com isso ativado, um cliente MCP conectado que não suporte confirmação interativa (elicitation) nunca poderá excluir nada — sem solução alternativa de duas chamadas confirm: true. Deixe desativado para o comportamento padrão, onde esses clientes ainda podem excluir por meio desse padrão de duas chamadas. | não definido (fallback permitido) |
Apenas para o modo normal (stdio)
| Configuração | Obrigatório? | O que faz |
|---|---|---|
TAIGA_TOKEN | Um destes três é obrigatório | Seu token de acesso do Taiga. Preferido em relação a nome de usuário/senha. |
TAIGA_USERNAME | Obrigatório se você não estiver usando um token | Seu nome de usuário do Taiga. |
TAIGA_PASSWORD | Obrigatório se você não estiver usando um token | Sua senha do Taiga. |
Apenas para o modo servidor HTTP
No modo HTTP, o servidor em si não armazena nenhum login do Taiga — cada cliente conectado envia seu próprio token, então nenhuma das configurações abaixo é sobre credenciais.
| Configuração | Obrigatório? | O que faz | Padrão |
|---|---|---|---|
HTTP_PORT | Não | Em qual porta de rede o servidor escuta. | 3000 |
HTTP_ALLOWED_ORIGINS | Não | Lista separada por vírgulas de sites permitidos a conectar de um navegador (CORS). Se não definido, qualquer site é permitido — ok para uso local/em equipe, mas defina isso explicitamente se você estiver expondo o servidor publicamente. | não definido (qualquer site permitido) |
HTTP_SESSION_TTL_MS | Não | Por quanto tempo uma conexão ociosa permanece aberta antes de ser fechada automaticamente, em milissegundos. | 1800000 (30 minutos) |
HTTP_MAX_SESSIONS | Não | O número máximo de conexões que o servidor manterá abertas ao mesmo tempo, para manter o uso de memória limitado. | 1000 |
O que é coberto e como lida com problemas
Descrição simples do que acontece nos bastidores, para que você saiba o que esperar:
- Ele usa suas próprias permissões do Taiga. Se você não consegue ver ou editar algo no próprio aplicativo web do Taiga, este servidor também não consegue — ele faz as mesmas chamadas de API que seu navegador faria.
- Sua senha/token nunca é gravada em disco ou registrada em logs. Ela é mantida apenas em memória enquanto o servidor está em execução.
- Se duas pessoas editarem o mesmo item ao mesmo tempo, o Taiga normalmente rejeitaria o segundo salvamento. Este servidor busca automaticamente a versão mais recente e tenta salvar novamente uma vez, em vez de simplesmente falhar.
- Se o Taiga limitar temporariamente a taxa de requisições, o servidor espera e tenta novamente automaticamente, em vez de desistir imediatamente.
- Erros são retornados de forma estruturada (qual campo estava errado e por quê) em vez de um genérico "algo deu errado" — isso ajuda o assistente de IA a realmente entender e corrigir o problema em vez de adivinhar.
- Testado contra a API real do Taiga, não apenas respostas simuladas — a suíte de testes automatizados inclui testes que rodam contra um projeto Taiga real, além dos testes offline usuais.
- Publicado com npm provenance — um registro assinado que comprova que o pacote publicado foi construído a partir deste repositório GitHub exato, não modificado ou enviado de outro lugar.
Mudança significativa em 1.0.0
Cada ferramenta em formato de lista (*_list, comment_list, attachment_list, epic_related_user_stories, search) agora retorna { items, pagination } em vez de um array simples. Se você tem código que analisa uma dessas respostas diretamente como um array, leia .items em vez disso. pagination é { count, current_page, has_next }. Este é o ponto em que os formatos de resposta da superfície de ferramentas são considerados estáveis — foi testado cuidadosamente, inclusive ao vivo contra a API real do Taiga, mas ainda não teve uso real por outras pessoas, então, se você encontrar um problema, por favor relate-o.
Perguntas frequentes
O que é Taiga? Taiga é uma ferramenta de gerenciamento de projetos, semelhante ao Jira ou Linear — usada para acompanhar épicos, histórias de usuário, tarefas, bugs e sprints.
O que é MCP / Model Context Protocol? É um padrão que permite que assistentes de IA (como o Claude) se conectem a ferramentas externas e fontes de dados de forma consistente, em vez de cada integração ser construída sob medida. Este pacote implementa esse padrão para o Taiga.
Como conecto o Claude (ou Cursor, Windsurf) ao Taiga? Adicione este pacote à configuração MCP do seu assistente com seu token do Taiga — veja Configuração acima. Funciona da mesma forma para qualquer cliente compatível com MCP, não apenas o Claude.
Isso é feito pela equipe do Taiga? Não. Este é um projeto independente e de código aberto, não afiliado ou endossado pela Taiga/Kaleidos.
Preciso executar meu próprio servidor? Não, para uso pessoal normal. Seu assistente de IA inicia e para este servidor automaticamente em segundo plano. Você só precisa executá-lo você mesmo como um servidor autônomo se estiver configurando para uma equipe (veja modo HTTP).
Isso funciona com Taiga auto-hospedado ou apenas com Taiga Cloud?
Ambos. Basta apontar TAIGA_BASE_URL para sua própria instância.
É seguro dar minha senha do Taiga para isso? Você não precisa — um token de acesso do Taiga (Opção A acima) é a forma recomendada, e sua senha nunca é envolvida. Se você usar nome de usuário/senha, ela é mantida apenas em memória, nunca gravada em disco ou registrada em logs.
Ele pode fazer coisas que não tenho permissão para fazer no Taiga? Não. Ele usa sua própria conta do Taiga e está limitado exatamente às mesmas permissões que você já tem.
Contribuindo / executando os testes
# Install dependencies
pnpm install
# Build
pnpm build
# Lint, format check, type-check
pnpm lint
pnpm format
pnpm typecheck
# Run the offline test suite
pnpm test
# Check dependencies for known security issues
pnpm audit
# Run the live test suite against a real Taiga project (see docs/testing.md)
pnpm test:integration
Veja docs/testing.md para saber como configurar o projeto de teste ao vivo.
Segurança
Veja SECURITY.md para saber como relatar privadamente um problema de segurança.
Licença
MIT.