Skip to Content
ReferênciaFerramentas MCP

Ferramentas MCP

Referência completa de todas as 22 ferramentas MCP do SpecForge — parâmetros, uso e exemplos.

O SpecForge expõe 22 ferramentas MCP organizadas em cinco categorias. Essas ferramentas estão disponíveis para qualquer agente de código compatível com MCP (Claude Code, Cursor, VS Code com Copilot, Gemini CLI, etc.) uma vez que o servidor MCP do SpecForge esteja configurado.

Consultas

Seis ferramentas para ler dados do projeto, buscar tickets e gerar relatórios. São somente leitura — nunca modificam sua especificação.

get

Recupera uma única entidade por tipo e ID.

ParâmetroTipoObrigatórioDescrição
type"project" | "specification" | "epic" | "ticket" | "implementation_session"SimTipo de entidade a recuperar
idstringSimID da entidade
specificationIdstringNãoContexto da especificação (obrigatório para épicos e tickets)
{ "type": "ticket", "id": "tkt_abc123", "specificationId": "spec_xyz789" }

Retorna o objeto completo do ticket incluindo título, descrição, passos, critérios de aceite, dependências, status, complexidade, prioridade, tags e expectativas de arquivo.


list

Lista entidades de um tipo dado com filtros opcionais.

ParâmetroTipoObrigatórioDescrição
type"projects" | "specifications" | "epics" | "tickets"SimTipo de entidade a listar
projectIdstringNãoFiltrar por projeto (obrigatório para especificações)
specificationIdstringNãoFiltrar por especificação (obrigatório para épicos e tickets)
epicIdstringNãoFiltrar tickets por épico
{ "type": "tickets", "specificationId": "spec_xyz789", "epicId": "epic_456" }

Retorna um array de todos os tickets pertencentes ao épico especificado.


Busca unificada em tickets com consultas full-text e filtros estruturados.

ParâmetroTipoObrigatórioDescrição
querystringNãoBusca full-text em títulos e descrições de tickets
filesstring[]NãoFiltrar por caminhos de arquivo esperados
tagsstring[]NãoFiltrar por tags
statusstring[]NãoFiltrar por status: "pending", "ready", "active", "done"
complexitystring[]NãoFiltrar por complexidade: "small", "medium", "large", "xlarge"
prioritystring[]NãoFiltrar por prioridade: "low", "medium", "high", "critical"
limitnumberNãoMáximo de resultados a retornar
offsetnumberNãoOffset de paginação
fieldsstring[]NãoCampos específicos a incluir nos resultados
{ "query": "authentication middleware", "status": ["ready", "pending"], "priority": ["high", "critical"], "limit": 10 }

✅ Combine files com tags para encontrar todos os tickets tocando uma parte específica do seu codebase. Por exemplo, files: ["src/auth/**"] com tags: ["security"].


get_next_actionable_tickets

Retorna tickets em status ready com todas as dependências satisfeitas, ordenados por prioridade e complexidade.

ParâmetroTipoObrigatórioDescrição
specificationIdstringSimEspecificação a consultar
projectIdstringNãoContexto do projeto
limitnumberNãoMáximo de tickets a retornar
{ "specificationId": "spec_xyz789", "limit": 5 }

Este é o ponto de entrada principal para agentes decidindo no que trabalhar a seguir. No Agent Teams, o orquestrador chama isso para atribuir tickets a workers.


get_blocked_tickets

Retorna tickets em status pending junto com os motivos pelos quais estão bloqueados.

ParâmetroTipoObrigatórioDescrição
specificationIdstringSimEspecificação a consultar

Cada ticket bloqueado inclui suas dependências não resolvidas e quaisquer motivos de bloqueio externo.


get_report

Gera relatórios analíticos em diferentes escopos e intervalos de tempo.

ParâmetroTipoObrigatórioDescrição
type"implementation" | "time" | "blockers" | "work" | "implementation_analysis"SimTipo de relatório
scope"project" | "specification" | "epic"SimEscopo do relatório
scopeIdstringSimID da entidade de escopo
startDatestringNãoData inicial para relatórios com intervalo de tempo (ISO 8601)
endDatestringNãoData final para relatórios com intervalo de tempo (ISO 8601)
Tipo de RelatórioDescrição
implementationResumo de progresso com percentuais de conclusão e trabalho restante
timeAnálise de rastreamento de tempo com horas estimadas vs. reais
blockersAnálise detalhada de bloqueadores com cadeias de dependência
workHistórico de work sessions e log de atividade
implementation_analysisAnálise profunda de qualidade e padrões de implementação

Ciclo de Vida

Nove ferramentas que conduzem especificações através de planejamento, implementação e revisão. São as ferramentas centrais do fluxo de trabalho.

start_planning_session

Abre uma sessão de planejamento para uma especificação, habilitando mudanças estruturais.

ParâmetroTipoObrigatórioDescrição
specificationIdstringSimEspecificação a planejar

A especificação deve estar em estado draft, planning, specifying ou validating.


action_planning_session

Realiza operações dentro de uma sessão de planejamento ativa. Esta é a ferramenta principal para construir especificações — ela lida com 18 operações distintas.

ParâmetroTipoObrigatórioDescrição
specificationIdstringSimEspecificação sendo planejada
operationstringSimOperação a realizar (veja tabela abaixo)

Parâmetros adicionais dependem da operação.

Operações de Estrutura

OperaçãoDescrição
set_metadataAtualizar título, descrição ou tags da especificação
create_epicCriar um novo épico com título, descrição e ordenação
update_epicModificar um épico existente
create_ticketCriar um ticket dentro de um épico
update_ticketModificar um ticket existente
delete_epicRemover um épico e seus tickets
delete_ticketRemover um único ticket

Operações de Vinculação

OperaçãoDescrição
add_dependenciesDefinir links de dependência entre tickets
remove_dependencyRemover um link de dependência
create_blueprintCriar um novo documento de blueprint
link_blueprintVincular um blueprint a um épico
update_blueprintModificar um blueprint existente
delete_blueprintRemover um blueprint
unlink_blueprintDesvincular um blueprint de um épico

Operações de Consulta e Controle

OperaçãoDescrição
get_ticketRecuperar um ticket dentro do contexto da sessão
advance_phaseAvançar manualmente a fase da especificação
get_statusObter status atual da sessão de planejamento
gpsObter um resumo de planejamento com indicadores de progresso

Exemplo — Criando um ticket:

{ "specificationId": "spec_xyz789", "operation": "create_ticket", "epicId": "epic_456", "title": "Implement JWT token generation", "description": "Create a service that generates signed JWT access tokens with configurable expiration.", "complexity": "medium", "priority": "high", "steps": [ "Create JwtService class in src/auth/jwt.service.ts", "Implement generateAccessToken method with RS256 signing", "Add token expiration configuration via environment variables", "Write unit tests for token generation and validation" ], "acceptanceCriteria": [ "Tokens are signed with RS256 algorithm", "Token expiration is configurable", "Invalid tokens are rejected with clear error messages" ] }

ℹ️ A especificação transiciona automaticamente entre os estados planning, specifying e validating baseado nas operações que você realiza. Você não gerencia essas transições manualmente.


complete_planning_session

Encerra a sessão de planejamento e dispara o gate de Planning Review.

ParâmetroTipoObrigatórioDescrição
specificationIdstringSimEspecificação para completar o planejamento

Se o gate de Planning Review está habilitado e a especificação passa, ela avança para ready.


start_work_session

Inicia trabalho de implementação em um ticket específico.

ParâmetroTipoObrigatórioDescrição
ticketIdstringSimTicket para trabalhar (deve estar em status ready)

Transiciona o ticket de ready para active. Retorna o contexto completo do ticket: passos de implementação, critérios de aceite, expectativas de arquivo, outputs de dependência e blueprints vinculados.


action_work_session

Registra progresso, resultados e descobertas durante a implementação.

ParâmetroTipoObrigatórioDescrição
ticketIdstringSimTicket ativo
stepsobject[]NãoAtualizações de conclusão de passos
acceptanceCriteriaobject[]NãoResultados de critérios de aceite
testResultsobject[]NãoResultados de execução de testes
notesstringNãoNotas de implementação
filesobject[]NãoMudanças de arquivo feitas
discoveryobjectNãoNovas informações descobertas durante implementação
blockReasonstringNãoReportar um bloqueador externo
{ "ticketId": "tkt_abc123", "steps": [ { "index": 0, "completed": true }, { "index": 1, "completed": true } ], "files": [ { "path": "src/auth/jwt.service.ts", "action": "created" }, { "path": "src/auth/jwt.service.test.ts", "action": "created" } ], "notes": "Used jose library instead of jsonwebtoken for Edge Runtime compatibility." }

complete_work_session

Finaliza trabalho em um ticket com um resumo e resultados de validação.

ParâmetroTipoObrigatórioDescrição
ticketIdstringSimTicket ativo
summarystringSimResumo do trabalho realizado
filesobject[]NãoLista final de mudanças de arquivo
actualHoursnumberNãoHoras gastas na implementação
validationobjectNãoResultados de validação: tests, lint, typeCheck, build

Transiciona o ticket de active para done. Tickets dependentes são recalculados e podem se tornar ready.


start_review_session

Inicia uma sessão de Implementation Review para uma especificação.

ParâmetroTipoObrigatórioDescrição
specificationIdstringSimEspecificação a revisar (deve estar em estado ready_for_review)

action_review_session

Endereça achados durante uma sessão de review ativa.

ParâmetroTipoObrigatórioDescrição
specificationIdstringSimEspecificação sendo revisada
reviewSessionIdstringSimID da sessão de review ativa
findingsAddressedobject[]SimLista de achados e como foram endereçados

complete_review_session

Conclui o Implementation Review.

ParâmetroTipoObrigatórioDescrição
specificationIdstringSimEspecificação sendo revisada
reviewSessionIdstringSimID da sessão de review
summarystringSimResumo do review
confirmAllDismissedbooleanNãoConfirmar que todos os achados restantes são intencionalmente descartados

Mutações

Quatro ferramentas para criar, modificar e vincular dados do projeto.

create_specification

Cria uma nova especificação dentro de um projeto.

ParâmetroTipoObrigatórioDescrição
projectIdstringSimProjeto onde criar a especificação
titlestringSimTítulo da especificação
descriptionstringSimDescrição detalhada do que construir

reopen_specification

Reabre uma especificação completada ou revisada para trabalho adicional.

ParâmetroTipoObrigatórioDescrição
specificationIdstringSimEspecificação a reabrir

reset_work_session

Reseta tickets completados de volta a um estado trabalhável.

ParâmetroTipoObrigatórioDescrição
specificationIdstringSimContexto da especificação
ticketIdsstring[]SimTickets a resetar
optionsobjectNãoOpções de reset (ex.: limpar arquivos, limpar notas)

⚠️ Resetar tickets limpa dados de work session. Commits e PRs vinculados são preservados, mas conclusões de passos, notas e resultados de critérios de aceite são removidos. O reset cascateia para tickets dependentes.


Associa um pull request a um ticket completado.

ParâmetroTipoObrigatórioDescrição
ticketIdstringSimTicket a vincular
prNumbernumberSimNúmero do pull request
prUrlstringSimURL completa do pull request
titlestringSimTítulo do PR
authorstringSimAutor do PR
repoUrlstringSimURL do repositório

Orquestração

Duas ferramentas para entender e navegar o grafo de dependência.

get_critical_path

Calcula a cadeia de dependência mais longa em uma especificação — a sequência de tickets que determina o tempo mínimo para conclusão.

ParâmetroTipoObrigatórioDescrição
specificationIdstringSimEspecificação a analisar

Retorna uma lista ordenada de tickets formando o caminho crítico, junto com o esforço total estimado.


get_dependency_tree

Renderiza a árvore de dependência completa upstream e downstream para uma especificação.

ParâmetroTipoObrigatórioDescrição
specificationIdstringSimEspecificação a analisar

Retorna uma estrutura de árvore mostrando todos os tickets, suas dependências e status atuais. Útil para visualizar a forma geral do trabalho e identificar gargalos.


Utilitário

feedback

Submeta feedback, reporte problemas ou sugira melhorias.

ParâmetroTipoObrigatórioDescrição
operation"submit" | "list" | "get"SimOperação de feedback
categorystringNãoCategoria do feedback (para submit)
summarystringNãoResumo do feedback (para submit)
severitystringNãoSeveridade do problema (para submit)
toolstringNãoQual ferramenta o feedback se refere (para submit)

Veja Também