O Model Context Protocol (MCP) é um padrão aberto, criado pela Anthropic e mantido como especificação pública, que define como aplicações de IA se conectam a fontes de dados e ferramentas externas. Funciona como uma interface universal — similar ao que o USB fez para periféricos — permitindo que Large Language Models (LLMs) interajam diretamente com APIs, bancos de dados e serviços, mantendo o contexto da conversa. A especificação é open-source e conta com SDKs oficiais em TypeScript e Python, além de uma lista crescente de servidores e clientes compatíveis.
No contexto do desenvolvimento de software, MCPs eliminam a necessidade de alternar entre o assistente de IA e interfaces web de gerenciamento: o desenvolvedor descreve em linguagem natural o que precisa (criar um projeto, mover uma issue, consultar métricas de qualidade) e o LLM executa a operação diretamente na plataforma. Isso reduz fricção, acelera fluxos repetitivos e permite que tarefas de gestão de projeto, deploy e monitoramento sejam integradas ao mesmo ambiente onde o código é escrito — IDE, terminal ou chat.
O Embrapa I/O disponibiliza os seguintes MCP Servers que permitem interagir por meio de linguagem natural com diferentes ferramentas e funcionalidades da plataforma:
- MCP do Dashboard: provê acesso a todas as funcionalidades reunidas no Painel de Controle da plataforma.
- MCP de Logs (Grafana Loki): provê tools para consultar logs centralizados das aplicações, com controle de acesso por projeto, via Grafana Loki.
- MCP do Kanban do GitLab: provê tools para interagir (criar/editar/apagar/correlacionar) os milestones e as issues dos projetos, registrados no Kanban do GitLab da plataforma.
MCP do Dashboard
O MCP Server do Embrapa I/O é um middleware inteligente entre clientes de IA e a API da plataforma que implementa o Model Context Protocol (MCP), permitindo que assistentes de IA como Claude, Gemini, Copilot e Cursor interajam diretamente — criando projetos, configurando builds, monitorando deploys e muito mais — tudo via linguagem natural.
Conectar
A URL de conexão do MCP Server é:
A autenticação é feita via OAuth 2.1 com PKCE. Ao conectar, o fluxo de login abrirá automaticamente no browser para autenticação por e-mail (OTP).
Funcionalidades
O servidor expõe 37 tools e 8 prompts guiados organizados nos seguintes domínios:
Perfil do Usuário — Consulta e atualização do perfil na plataforma, incluindo nome de exibição utilizado em todas as interfaces e listagens de equipe.
Gestão de Projetos — Criação de projetos (ativos digitais) com provisionamento automático de GitLab, Sentry, Matomo e SonarQube. Classificação por ecossistemas produtivos (agricultura, pecuária, florestal, aquicultura, indústria) ou corporativo. Gerenciamento de repositórios de suporte (documentação pública, Swagger, identidade visual, binários para lojas, TWA). Arquivamento de projetos com confirmação por PIN via e-mail.
Aplicações e Builds — Criação de aplicações a partir de boilerplates pré-configurados do catálogo, com fork automático no GitLab e 4 branches (main, alpha, beta, release). Configuração completa de builds (cluster, variáveis de ambiente, volumes, URLs públicas e aliases/subdomínios), com validação automática de aderência entre codebase e configuração. Histórico de alterações de variáveis para auditoria. Remoção de builds com confirmação por PIN.
Operações de Build — Reiniciar instâncias, remover deploy sem apagar configuração, solicitar backup de dados persistentes, e ativar/desativar sanitização periódica (limpeza e otimização mensal). Revalidação de builds que falharam na validação anterior. Consulta de saúde dos containers (status, uptime, alertas).
Gestão de Equipe — Definição da equipe completa de um projeto com dois papéis: Arquiteto da Solução (Maintainer — gerencia configuração, deploy em produção e backup) e Membro da Equipe (Developer — codifica e faz deploy em alpha/beta).
Portas de Rede — Alocação e liberação de portas nos clusters da plataforma, necessárias para expor builds via URLs e subdomínios.
Integrações e Qualidade — Acesso às métricas de qualidade de código via SonarQube (manutenibilidade, confiabilidade, segurança e Quality Gate), rastreamento de erros via Sentry (exceções em runtime categorizadas por severidade e versão) e analytics de acesso via Matomo (sessões, páginas visitadas e comportamento dos usuários).
Catálogos da Plataforma — Listagem de boilerplates disponíveis (Node.js, Laravel, Vue.js, WordPress, entre outros) com detalhes de stack, documentação e licença. Listagem de clusters disponíveis para deploy (capacidade, aliases e configurações SMTP) e orquestradores suportados.
Monitoramento Consolidado — Visão agregada por aplicação combinando Matomo, Sentry e SonarQube em uma única consulta. Saúde de builds específicas (project/app@stage) em clusters compartilhados: status do deploy, uptime, histórico de versões deployadas e vulnerabilidades de segurança (CVEs) detectadas pelo Trivy nos containers — complementar à análise estática do SonarQube, cobrindo dependências de runtime, imagens base e bibliotecas do SO.
Deploy Externo (Releaser) — Geração do arquivo builds.json para deploy e atualização contínua em servidores fora da rede de clusters da plataforma. Coleta automática de equipe, variáveis de ambiente, Sentry DSN e Matomo ID a partir da API ou de arquivos locais do codebase, com geração de secrets e passwords randômicos.
Prompts Guiados — 8 fluxos interativos para operações comuns: visão geral dos projetos, criação de projeto passo-a-passo, criação de aplicação, deploy via git tag, diagnóstico de problemas de build, gestão de equipe, status de deploy e relatório de saúde do projeto.
Exemplos de Prompts
Abaixo, exemplos do que pode ser solicitado em linguagem natural a um assistente de IA conectado a este MCP:
Mostre uma visão geral de todos os meus projetos no Embrapa I/O, com status das builds.
Crie um novo projeto chamado "AgroVision" no ecossistema pecuária.
Adicione uma aplicação ao projeto agrovision usando o boilerplate de Node.js.
Configure a build alpha do agrovision/api no cluster compartilhado com a variável
de ambiente DATABASE_URL apontando para o MongoDB de homologação.
Faça o deploy da aplicação agrovision/api em alpha — crie a tag a partir da main.
A build alpha do agrovision/api está falhando. Faça um diagnóstico completo:
verifique saúde do container, configuração, variáveis e logs do Sentry.
Gere um relatório de saúde do projeto agrovision: qualidade de código,
bugs rastreados, analytics de acesso e status de cada build.
Adicione o usuário joao.silva@embrapa.br como Developer no projeto agrovision.
Liste os boilerplates disponíveis que suportam Vue.js.
Gere o builds.json para deploy externo do agrovision/pwa em um servidor próprio.
Configuração em IDEs e CLIs
Claude Desktop
A forma mais prática. Ao adicionar pelo Claude Desktop, o servidor fica disponível automaticamente no Claude Code.
- Abra o Claude Desktop;
- Vá em Configurações → Conectores → Adicionar conector personalizado; e
- Informe a URL:
https://mcp.embrapa.io.
Ao conectar, uma janela de login abrirá para autenticação via e-mail (OTP).
Dica! Se adicionado pelo Claude Desktop, ao digitar
/mcpno Claude Code o servidor aparecerá como “claude.ai Embrapa I/O” e poderá ser utilizado normalmente.
Claude Code
Via linha de comando:
claude mcp add --scope user --transport http io https://mcp.embrapa.io
Gemini CLI
gemini mcp add -s user -t http io https://mcp.embrapa.io
Caso necessário, a configuração manual pode ser feita em ~/.gemini/settings.json:
{
"mcpServers": {
"io": {
"httpUrl": "https://mcp.embrapa.io",
"oauth": {
"authorizationUrl": "https://mcp.embrapa.io/oauth/authorize",
"tokenUrl": "https://mcp.embrapa.io/oauth/token",
"registrationUrl": "https://mcp.embrapa.io/oauth/register",
"scopes": ["mcp:full"]
}
}
}
}
VS Code (GitHub Copilot)
No VS Code com a extensão GitHub Copilot, adicione em .vscode/mcp.json (por projeto) ou nas User Settings:
{
"servers": {
"io": {
"type": "http",
"url": "https://mcp.embrapa.io"
}
}
}
Ou via Command Palette: MCP: Add Server → HTTP → colar a URL. O VS Code com Copilot suporta OAuth 2.1 nativamente.
Google Antigravity
Adicione em ~/.gemini/antigravity/mcp_config.json:
{
"mcpServers": {
"io": {
"serverUrl": "https://mcp.embrapa.io/"
}
}
}
Cursor
Adicione em ~/.cursor/mcp.json:
{
"mcpServers": {
"io": {
"url": "https://mcp.embrapa.io"
}
}
}
OpenAI Codex CLI
codex mcp add io --url https://mcp.embrapa.io
Atenção! O Codex CLI possui um bug conhecido (#10332) com refresh tokens OAuth — ele tenta reutilizar um refresh token já consumido, causando erro “your refresh token was already used”. Caso ocorra, use autenticação via bearer token:
codex mcp add io --url https://mcp.embrapa.io --bearer-token-env-var EMBRAPA_MCP_TOKEN export EMBRAPA_MCP_TOKEN="<access_token>"O access token pode ser obtido fazendo login por outro cliente (ex: Claude Desktop) ou via fluxo OAuth manual.
OpenCode CLI
opencode mcp add io --url https://mcp.embrapa.io
JetBrains (IntelliJ, WebStorm, PyCharm)
Acesse Settings → Tools → AI Assistant → MCP Servers, clique em ”+” → HTTP / SSE e informe a URL https://mcp.embrapa.io.
Windsurf
Adicione em ~/.codeium/windsurf/mcp_config.json:
{
"mcpServers": {
"io": {
"serverUrl": "https://mcp.embrapa.io",
"headers": {
"Authorization": "Bearer <ACCESS_TOKEN>"
}
}
}
}
Atenção! Windsurf não suporta OAuth nativo para MCP. É necessário obter um access token manualmente e configurá-lo no header.
Zed
Adicione em ~/.config/zed/settings.json:
{
"context_servers": {
"io": {
"settings": {
"url": "https://mcp.embrapa.io",
"headers": {
"Authorization": "Bearer <ACCESS_TOKEN>"
}
}
}
}
}
Atenção! Zed não suporta OAuth nativo. Requer access token manual.
Compatibilidade
| Cliente | OAuth Nativo | Configuração |
|---|---|---|
| Claude Desktop | ✅ | UI → Conectores |
| Claude Code | ✅ | claude mcp add |
| Gemini CLI | ✅ | gemini mcp add |
| VS Code + Copilot | ✅ | .vscode/mcp.json |
| Antigravity | ✅ | Config de MCP Servers |
| Codex CLI | ⚠️ | codex mcp add (bug com refresh token) |
| Cursor | ✅ | ~/.cursor/mcp.json |
| OpenCode | ✅ | opencode mcp add |
| JetBrains | ✅ | Settings → AI Assistant → MCP |
| Windsurf | ❌ | Bearer token manual |
| Zed | ❌ | Bearer token manual |
Referência Técnica
Tools (37)
Perfil do Usuário
| Tool | Descrição |
|---|---|
get_my_profile |
Retorna perfil do usuário autenticado (nome, e-mail, papel e vínculos externos). |
update_my_name |
Atualiza o nome de exibição do usuário em todas as interfaces da plataforma. Requer confirmação explícita. |
Projetos e Ecossistemas
| Tool | Descrição |
|---|---|
list_my_projects |
Lista todos os projetos do usuário com apps, equipe (nomes, e-mails e papéis), ecossistemas e status das builds. O campo archive é sempre false (projetos arquivados não aparecem). |
create_project |
Cria um novo projeto com provisionamento automático (GitLab, Sentry, Matomo, SonarQube). O identificador unix (slug) é irreversível. Salvaguarda: limitado a 1 criação por sessão + cooldown de 5 minutos por usuário. Requer vínculo Embrapa. |
update_ecosystems |
Atualiza a classificação de ecossistemas de um projeto. O ecossistema corporate é mutuamente exclusivo. Requer Maintainer. |
request_project_archive |
Inicia o arquivamento de um projeto. Envia PIN de confirmação por e-mail. Operação significativa: desativa builds, repos e remove equipe. Requer Maintainer. |
confirm_project_archive |
Confirma o arquivamento com o PIN recebido. Ação irreversível. |
Aplicações e Configuração de Builds
| Tool | Descrição |
|---|---|
create_app |
Cria uma aplicação a partir de um boilerplate do catálogo. Faz fork no GitLab com 4 branches (main, alpha, beta, release). O nome unix do app (máx. 10 caracteres) é irreversível. Requer Maintainer. |
get_build_config |
Obtém a configuração de uma build (project/app@stage): cluster, variáveis, volumes, URLs e aliases. Requer Maintainer. |
save_build_config |
Salva a configuração completa de uma build. Após salvar, a plataforma dispara validação automática (não chamar revalidate_build). Antes de salvar, recomenda-se verificar se a branch do estágio está atualizada com a main. Requer Maintainer. |
get_variable_history |
Histórico de alterações das variáveis de ambiente de uma build (cada alteração incrementa a versão). Requer vínculo Embrapa. |
request_build_removal |
Solicita remoção completa de uma build (configuração + instância). Envia PIN por e-mail. Diferente de undeploy_build (que preserva a configuração). Requer Maintainer. |
confirm_build_removal |
Confirma remoção permanente com o PIN recebido. |
Operações de Build
| Tool | Descrição |
|---|---|
revalidate_build |
Reenvia uma build para revalidação. Funciona apenas para builds com status INVALID ou INACTIVATED. Não usar logo após save_build_config (validação já é automática). |
restart_build |
Reinicia a instância de uma build no cluster (com opção de upgrade de imagem). Requer Maintainer. |
undeploy_build |
Remove a instância sem apagar a configuração. A build pode ser redeployada depois. Requer Maintainer. |
request_backup |
Dispara backup dos dados persistentes de uma build. Requer Maintainer. |
get_build_health |
Obtém o status de saúde dos containers (monitorados pelo autômato Doctor a cada minuto): running, stopped, unhealthy, uptime e alertas. Requer Maintainer. |
get_sanitize_status |
Consulta se a sanitização periódica está ativa, data da última execução e próxima agendada. Requer Maintainer. |
start_sanitize |
Ativa sanitização periódica (mensal) — executa o serviço sanitize do stack para limpeza e otimização. Requer Maintainer. |
stop_sanitize |
Desativa a sanitização periódica. Requer Maintainer. |
Equipe
| Tool | Descrição |
|---|---|
update_team |
Define a equipe completa de um projeto, substituindo todos os membros atuais. Papéis: Maintainer (Arquiteto da Solução — requer @embrapa) e Developer (Membro da Equipe). Deve conter ao menos um Maintainer. Requer Maintainer. |
Portas de Rede
| Tool | Descrição |
|---|---|
allocate_port |
Reserva uma porta no cluster para uma build. Obrigatório antes de configurar URLs e aliases em save_build_config. Requer Maintainer. |
release_ports |
Libera todas as portas alocadas para uma build, devolvendo-as ao pool do cluster. Liberar portas de uma build em execução pode torná-la inacessível. Requer Maintainer. |
Integrações e Qualidade
| Tool | Descrição |
|---|---|
get_code_quality |
Métricas do SonarQube para todas as apps de um projeto: manutenibilidade, confiabilidade, segurança, vulnerabilidades e Quality Gate. |
get_bug_tracking |
Dados do Sentry para todas as apps de um projeto: erros e exceções categorizados por severidade, frequência e versão. Inclui DSN de cada app. |
get_analytics |
Dados do Matomo para todas as apps de um projeto: acessos, sessões, páginas visitadas e comportamento dos usuários. Inclui ID e token Matomo. |
Repositórios de Suporte
| Tool | Descrição |
|---|---|
get_support_repos |
Lista os repositórios de suporte ativos nos projetos do usuário: web (docs.embrapa.io), api (api.embrapa.io), doc, art, bin e twa. |
update_support_repos |
Ativa ou desativa repositórios de suporte. Ao ativar, o autômato Genesis cria o repo no GitLab e configura deploy automático quando aplicável. Requer Maintainer. |
Catálogos da Plataforma
| Tool | Descrição |
|---|---|
list_boilerplates |
Lista todos os boilerplates (modelos de aplicação) do catálogo. Cada item tem: unix (para uso em create_app), label e description. |
get_boilerplate_info |
Detalhes de um boilerplate: stack, linguagem/framework, referências, mantenedores e configurações do .embrapa/settings.json. |
get_boilerplate_repos |
README e LICENSE de um boilerplate do catálogo. |
list_clusters |
Lista os clusters (servidores remotos) disponíveis: domínio, capacidade, aliases (subdomínios), faixa de portas e configurações SMTP. |
list_orchestrators |
Lista os orquestradores suportados (Docker Compose e Docker Swarm). |
Monitoramento Consolidado
| Tool | Descrição |
|---|---|
app_info |
Visão agregada de uma aplicação combinando três fontes: Matomo (analytics), Sentry (bugs) e SonarQube (qualidade de código). |
build_info |
Saúde de uma build específica: status do deploy, cluster, URLs, aliases, histórico de versões, uptime e CVEs/vulnerabilidades detectadas pelo Trivy nos containers (complementar ao SonarQube — cobre dependências de runtime, imagens base e bibliotecas do SO). |
Deploy Externo (Releaser)
| Tool | Descrição |
|---|---|
generate_releaser_config |
Gera o arquivo builds.json para deploy via Releaser em servidores externos. Coleta equipe, variáveis, Sentry DSN e Matomo ID da API ou de arquivos locais (.env.io/.env). Gera secrets e passwords randômicos para campos sensíveis. |
Prompts Guiados (8)
Os prompts são fluxos interativos pré-definidos que guiam o usuário através de operações comuns.
| Prompt | Descrição |
|---|---|
overview_my_projects |
Gera uma visão geral organizada de todos os projetos do usuário, agrupados por status, com indicação de apps e pontos de atenção. |
create_new_project |
Guia passo-a-passo para criação de projeto: nome, slug, ecossistemas, verificação de disponibilidade e provisionamento. |
setup_new_app |
Guia para adicionar um app a um projeto existente: escolha de boilerplate, criação, configuração de build (cluster, portas, variáveis, volumes) e primeiro deploy. |
deploy_app |
Guia o processo completo de deploy via git tag: verifica status da build, identifica a última tag, cria a nova tag no formato correto do estágio (alpha, beta, release) e monitora o deploy. |
deploy_status |
Verifica o status de uma build específica e apresenta relatório consolidado: status atual, cluster, URLs, aliases, alertas e próximo passo recomendado. |
troubleshoot_build |
Diagnóstico sistemático de problemas: verifica saúde, configuração, histórico de variáveis e sanitização. Identifica a causa provável e sugere correções. |
team_management |
Gestão interativa da equipe: adicionar, remover ou alterar papel de membros, com verificação de papel do usuário e confirmação antes de cada operação. |
project_health_report |
Relatório consolidado de saúde: qualidade de código (SonarQube), bugs (Sentry), analytics (Matomo), status de cada build e recomendações priorizadas. |
MCP de Logs (Grafana Loki)
O MCP Server de Logs conecta assistentes de IA à stack centralizada de observabilidade do Embrapa I/O, permitindo consultar logs de todas as aplicações da plataforma via linguagem natural. O servidor opera sobre o Grafana Loki e implementa controle de acesso por projeto — cada usuário só visualiza logs das aplicações às quais tem acesso na plataforma.
Conectar
A URL de conexão do MCP Server é:
A autenticação é feita via OAuth 2.1 com PKCE. Ao conectar, o fluxo de login abrirá automaticamente no browser para autenticação por e-mail (OTP) — o mesmo mecanismo utilizado pelo MCP do Dashboard.
Funcionalidades
O servidor expõe 6 tools focadas em consulta e análise de logs:
Navegação de Projetos — Lista os projetos do usuário que possuem logs disponíveis no Loki, com detalhamento de aplicações e stages de deploy. O controle de acesso é baseado nos projetos vinculados ao usuário na plataforma — a mesma permissão do Dashboard.
Consulta de Logs — Busca flexível de logs com filtros por projeto, aplicação, stage, nível de log (ERROR, WARN, INFO), texto livre e período temporal. Suporta tail em tempo real (últimas N linhas) e busca direcionada por erros, exceções e stack traces.
Estatísticas — Volume total de logs e taxa de erros por projeto, com distribuição por stage. Útil para identificar aplicações problemáticas ou verificar a saúde geral de um projeto.
Exemplos de Prompts
Abaixo, exemplos do que pode ser solicitado em linguagem natural a um assistente de IA conectado a este MCP:
Quais projetos meus têm logs disponíveis?
Mostre os últimos 50 logs do pasto-certo/api em release.
Busque erros no projeto arena nas últimas 24 horas.
Tem algum ECONNREFUSED nos logs do fertiliza/backend em alpha?
Qual a taxa de erros do projeto publica nas últimas 24 horas?
Liste os logs do embrapa-io/grafana com nível ERROR na última hora.
Faça um diagnóstico do projeto mecaniza: verifique erros recentes em todas
as aplicações e me diga se tem algo preocupante.
Configuração em IDEs e CLIs
A configuração segue o mesmo padrão descrito na seção Configuração em IDEs e CLIs do MCP do Dashboard. Basta substituir a URL por https://mcp.log.embrapa.io. Exemplos:
Claude Desktop ou Web — Configurações → Conectores → Adicionar conector personalizado → informar https://mcp.log.embrapa.io.
Claude Code:
Dica! Ao configurar o conector no Claude Desktop/Web ele ficará disponível automaticamente no Claude Code.
claude mcp add --scope user --transport http loki https://mcp.log.embrapa.io
Gemini CLI:
gemini mcp add -s user -t http loki https://mcp.log.embrapa.io
VS Code (GitHub Copilot) — adicionar em ~/.vscode/mcp.json:
{
"servers": {
"loki": {
"type": "http",
"url": "https://mcp.log.embrapa.io"
}
}
}
Google Antigravity — adicionar em ~/.gemini/antigravity/mcp_config.json:
"loki": {
"serverUrl": "https://mcp.log.embrapa.io"
}
A partir destas configurações de referência, pode-se extrapolar para outros clientes com suporte à MCP com poucos ajustes.
Dica! Os três MCPs podem ser utilizados simultaneamente. Com todos conectados, é possível consultar a configuração de uma build no Dashboard, verificar os logs no Loki e criar uma issue no Kanban — tudo em uma única conversa.
Referência Técnica
Tools (6)
Navegação
| Tool | Descrição |
|---|---|
list_projects |
Lista os projetos do usuário que possuem logs no Loki, incluindo aplicações e stages com dados disponíveis. O escopo é resolvido via API do backend com o JWT do usuário — mesma permissão do Dashboard. |
list_builds |
Lista as aplicações e stages de deploy de um projeto específico que possuem logs disponíveis no Loki. |
Consulta de Logs
| Tool | Descrição |
|---|---|
query_logs |
Consulta logs de um projeto no Grafana Loki. Filtros: aplicação, stage (alpha, beta, release), nível de log (ERROR, WARN), texto livre e período (1h, 24h, 7d). Retorna timestamp, linha de log e labels (serviço, container, host). |
tail_logs |
Exibe as últimas N linhas de log de um projeto (equivalente a tail). Útil para verificar rapidamente o que está acontecendo em tempo real. |
search_errors |
Busca por erros, exceções, stack traces e falhas de conexão nos logs de um projeto. Suporta padrão adicional para filtrar erros específicos (ex: ECONNREFUSED, timeout, 500, OutOfMemory). |
Estatísticas
| Tool | Descrição |
|---|---|
log_stats |
Mostra estatísticas de volume e taxa de erros dos logs de um projeto: total de linhas, distribuição por stage e percentual de erros. Útil para visão rápida da saúde de um projeto. |
MCP do Kanban do GitLab
O MCP Server do Kanban conecta assistentes de IA diretamente ao GitLab da plataforma, permitindo gerenciar issues, milestones, labels e relações entre tarefas via linguagem natural. O servidor opera sobre a API do GitLab e expõe as operações como tools MCP, transformando o assistente de IA em um gerente de projeto integrado ao Kanban.
Conectar
A URL de conexão do MCP Server é:
A autenticação é feita pelo OAuth do próprio GitLab. Ao conectar, o fluxo de login abrirá automaticamente no browser para autenticação na instância do GitLab da plataforma.
Funcionalidades
O servidor expõe 36 tools organizadas nos seguintes domínios:
Issues — Ciclo completo de gestão de issues: criação com título, descrição, labels, milestone e responsáveis; consulta individual ou listagem com filtros avançados (estado, labels, milestone, responsável, datas, tipo); atualização de qualquer campo (título, descrição, labels, estado, milestone, responsáveis, peso, confidencialidade, tipo); exclusão; e listagem das issues atribuídas ao usuário autenticado.
Relações entre Issues — Criação de vínculos entre issues de um mesmo projeto ou entre projetos diferentes, com três tipos de relação: relates_to (relacionada), blocks (bloqueia) e is_blocked_by (bloqueada por). Consulta e remoção de vínculos existentes.
Notas e Discussões — Adição de comentários em issues e merge requests. Criação de notas em threads de discussão existentes, edição de notas e marcação como resolvidas/não-resolvidas. Listagem de todas as discussões de uma issue.
Labels — Criação, consulta, atualização (nome, cor, descrição, prioridade) e exclusão de labels em projetos. Suporte a labels herdados de grupos ancestrais.
Milestones — Criação, consulta, edição (título, descrição, datas, estado) e exclusão de milestones. Promoção de milestone de projeto para grupo. Consulta de issues e merge requests associados a um milestone. Eventos de burndown para acompanhamento de progresso.
Projetos e Membros — Consulta de detalhes de projetos e listagem de projetos acessíveis (com filtros por visibilidade, linguagem, funcionalidades habilitadas). Listagem de projetos dentro de um grupo. Consulta de membros de um projeto (com suporte a herança de grupo).
Namespaces e Iterações — Consulta e listagem de namespaces (grupos e usuários), verificação de existência de namespace. Listagem de iterações de grupo com filtros por estado e período.
Exemplos de Prompts
Abaixo, exemplos do que pode ser solicitado em linguagem natural a um assistente de IA conectado a este MCP:
Quais são as minhas issues abertas no GitLab?
Liste todas as issues do projeto controlpec/pwa com label "Doing".
Crie uma issue no projeto controlpec/api com título "Implementar endpoint de relatórios",
label "To Do" e atribua ao usuário matheus.amorim.
Mova todas as issues com label "To Do" do projeto controlpec/pwa para "Doing".
Crie um milestone "Sprint 2026-Q2" no projeto controlpec/pwa
com início em 2026-04-01 e término em 2026-06-30.
Mostre o progresso do milestone 1.26.12: quantas issues abertas vs. fechadas,
e quais merge requests estão associados.
Adicione um comentário na issue #3 do controlpec/pwa informando que
o layout foi validado pelo Sânzio na reunião de hoje.
Crie um vínculo de bloqueio: a issue #1 (plano de contas) bloqueia a issue #2
(filtro por texto) no projeto controlpec/pwa.
Feche todas as issues com label "Doing" atribuídas a simoes.leonardo
no projeto controlpec/pwa.
Liste os membros do projeto controlpec/pwa e seus níveis de acesso.
Configuração em IDEs e CLIs
A configuração segue o mesmo padrão descrito na seção Configuração em IDEs e CLIs do MCP do Dashboard. Basta substituir a URL por https://mcp.git.embrapa.io. Exemplos:
Claude Desktop ou Web — Configurações → Conectores → Adicionar conector personalizado → informar https://mcp.git.embrapa.io.
Claude Code:
Dica! Ao configurar o conector no Claude Desktop/Web ele ficará disponível automaticamente no Claude Code.
claude mcp add --scope user --transport http git-kanban https://mcp.git.embrapa.io
Gemini CLI:
gemini mcp add -s user -t http git-kanban https://mcp.git.embrapa.io
VS Code (GitHub Copilot) — adicionar em ~/.vscode/mcp.json:
{
"servers": {
"git-kanban": {
"type": "http",
"url": "https://mcp.git.embrapa.io"
}
}
}
Google Antigravity - adicionar em ~/.gemini/antigravity/mcp_config.json
"git-kanban": {
"serverUrl": "https://mcp.git.embrapa.io"
}
A partir destas configurações de referência, pode-se extrapolar para outros clientes com suporte à MCP com poucos ajustes.
Dica! Os três MCPs podem ser utilizados simultaneamente. Com todos conectados, é possível consultar o status de uma build no Dashboard, verificar os logs no Loki e criar uma issue no Kanban — tudo em uma única conversa.
Referência Técnica
Tools (36)
Issues
| Tool | Descrição |
|---|---|
my_issues |
Lista issues atribuídas ao usuário autenticado. Filtros: estado, labels, milestone, projeto, datas e busca textual. |
list_issues |
Lista issues com filtros avançados: projeto, estado, labels, milestone, responsável, autor, tipo (issue, incident, test_case, task), datas e escopo (created_by_me, assigned_to_me, all). |
get_issue |
Detalhes de uma issue específica: título, descrição, estado, labels, milestone, responsáveis, peso, datas e referências. |
create_issue |
Cria uma issue com título, descrição, labels, milestone, responsáveis e tipo. |
update_issue |
Atualiza qualquer campo de uma issue: título, descrição, labels, estado (close/reopen), milestone, responsáveis, peso, confidencialidade, tipo e data de entrega. |
delete_issue |
Remove uma issue permanentemente de um projeto. |
Relações entre Issues
| Tool | Descrição |
|---|---|
create_issue_link |
Cria vínculo entre duas issues (mesmo projeto ou entre projetos). Tipos: relates_to, blocks, is_blocked_by. |
get_issue_link |
Consulta detalhes de um vínculo específico entre issues. |
list_issue_links |
Lista todos os vínculos de uma issue. |
delete_issue_link |
Remove um vínculo entre issues. |
Notas e Discussões
| Tool | Descrição |
|---|---|
create_note |
Adiciona um comentário a uma issue ou merge request. |
create_issue_note |
Adiciona uma nota a um thread de discussão existente em uma issue. |
update_issue_note |
Edita o conteúdo de uma nota existente. Permite marcar como resolvida ou não-resolvida. |
list_issue_discussions |
Lista todas as discussões (threads) de uma issue com paginação. |
Labels
| Tool | Descrição |
|---|---|
list_labels |
Lista labels de um projeto, com opção de incluir labels de grupos ancestrais e contagem de issues/merge requests. |
get_label |
Detalhes de um label específico (por ID ou nome). |
create_label |
Cria um label com nome, cor (hex), descrição e prioridade. |
update_label |
Atualiza nome, cor, descrição ou prioridade de um label existente. |
delete_label |
Remove um label de um projeto. |
Milestones
| Tool | Descrição |
|---|---|
list_milestones |
Lista milestones de um projeto com filtros: estado (active/closed), título, IIDs, datas e milestones de grupos ancestrais. |
get_milestone |
Detalhes de um milestone específico. |
create_milestone |
Cria um milestone com título, descrição, data de início e data de entrega. |
edit_milestone |
Atualiza título, descrição, datas ou estado (close/activate) de um milestone. |
delete_milestone |
Remove um milestone de um projeto. |
promote_milestone |
Promove um milestone de nível de projeto para nível de grupo. |
get_milestone_issue |
Lista issues associadas a um milestone. |
get_milestone_merge_requests |
Lista merge requests associados a um milestone com paginação. |
get_milestone_burndown_events |
Eventos de burndown de um milestone para acompanhamento de progresso. |
Projetos e Membros
| Tool | Descrição |
|---|---|
get_project |
Detalhes de um projeto: nome, visibilidade, URLs, branches, funcionalidades habilitadas e permissões. |
list_projects |
Lista projetos acessíveis com filtros: visibilidade, membership, linguagem, ordenação e funcionalidades. |
list_group_projects |
Lista projetos de um grupo com filtros adicionais: subgrupos, nível de acesso mínimo e estatísticas. |
list_project_members |
Lista membros de um projeto com nível de acesso, incluindo membros herdados do grupo. Filtros por nome, username e IDs. |
Namespaces e Iterações
| Tool | Descrição |
|---|---|
list_namespaces |
Lista namespaces acessíveis (grupos e usuários) com filtros de busca e propriedade. |
get_namespace |
Detalhes de um namespace por ID ou caminho completo. |
verify_namespace |
Verifica se um caminho de namespace existe no GitLab. |
list_group_iterations |
Lista iterações de um grupo com filtros: estado (opened, upcoming, current, closed), busca por título e datas. |