kit-mcp
Syncs the workflow kit into GitHub Copilot's environment, allowing agents and rules to be used within Copilot.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@kit-mcp list all brownfield planning agents"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
kit-mcp
Um kit de agentes, comandos e skills prontos para Claude Code, Cursor, Codex, Windsurf, Antigravity e outros — destilado da documentação oficial do Supabase, livros canônicos de engenharia, e técnicas comprovadas de orquestração agêntica.
Entregue como MCP server, modular: instale só os packs que você usa (Supabase, Observabilidade, Legacy, UI…) — o resto não entra no seu projeto. Use direto via
npx, sem instalar nada.
Bundled workflow: 86 agents · 99 commands · 103 skills · 24 gates
O que é
Quando você usa LLMs em projetos reais, o problema raramente é o modelo — é o contexto. Skills, agents e slash-commands são o jeito moderno de injetar processo, padrões canônicos e guard-rails no Claude Code (e similares) sem reescrever cada prompt.
kit-mcp é um kit curado que materializa isso em três fontes de verdade:
Documentação oficial do Supabase — RLS, branching, Edge Functions, migrations, pgTAP, Custom Claims, Postgres Roles, Storage, Realtime, Cron, pgvector e todas as outras camadas, com anti-pitfalls explícitos.
Livros canônicos — Working Effectively with Legacy Code (Feathers), Designing Data-Intensive Applications (Kleppmann), Observability Engineering (Majors/Fong-Jones/Miranda) e Google SRE Book viraram skills aplicáveis (characterization tests, consistency models, golden signals, eliminating toil).
Técnicas de harness agêntico — orquestração via slash-commands (
/discutir-fase,/planejar-fase,/executar-fase), handoff cooperativo entre agents, gates de pre-verify, replay determinístico, observabilidade do próprio fluxo agêntico.
Tudo escrito em PT-BR, com tabelas, fluxogramas, exemplos rodáveis e referências cruzadas.
Related MCP server: agent-intern
Instalar (sem instalar)
Adicione ao .mcp.json do seu projeto (ou config global do IDE):
{
"mcpServers": {
"kit-mcp": {
"command": "npx",
"args": ["-y", "@luanpdd/kit-mcp"]
}
}
}Pronto. Na próxima sessão, o IDE faz npx e expõe as 14 tools do kit-mcp. Nada instalado globalmente, sem npm install.
Registrar automaticamente
npx -y @luanpdd/kit-mcp install claude-code
# ou: cursor, codex, windsurf, antigravity, copilot, traeProjetar skills/agents/commands para o IDE ler
npx -y @luanpdd/kit-mcp sync claude-codeIsso escreve markdown em .claude/agents/, .claude/skills/, etc. O IDE lê do disco — não precisa do server vivo.
Fluxo completo de primeiro uso
npx -y @luanpdd/kit-mcp init
# 1. registra MCP server no IDE
# 2. projeta o kit
# 3. roda diagnóstico
# 4. confirma: "✓ Claude Code agora vê N skills, M agents, K commands"Content Packs — instale só o que você usa (v1.39+)
O kit é dividido em packs autossuficientes (cada um traz tudo que precisa — sem dependência
entre packs). A base (core) é sempre instalada; o resto é opcional. Não usa Supabase? Não instale
o pack supabase e nenhum recurso Supabase é projetado no seu .claude/.
Pack | O que é |
| Obrigatório. Framework de fases (discutir→planejar→executar→verificar), debugging, mapeamento. |
| Mundo Supabase completo: schema/RLS/migrations/Edge Functions/Auth/Storage/Realtime + B2B multi-tenant + auditoria de dados distribuídos. |
| OpenTelemetry, golden signals, SLO/burn-rate, toil, postmortem, PRR. |
| Characterization tests, seams, refactor seguro, duplicação (Feathers). |
| Fluência de design para IA: UI-SPEC, auditoria visual, designer. |
| Cost tracking (USD/tokens) + gerador de Dynamic Workflows. |
Ver os packs disponíveis
npx -y @luanpdd/kit-mcp pack list # catálogo: cada pack + nº de agents/skills/commands
npx -y @luanpdd/kit-mcp pack info supabase # detalhe de um pack (o que instala, deps, removível)Instalar — escolher os packs
# sem --packs = kit inteiro (padrão, sem breaking change):
npx -y @luanpdd/kit-mcp sync install claude-code
# só a base + os packs que você quer (ex.: tudo MENOS Supabase):
npx -y @luanpdd/kit-mcp sync install claude-code --packs core,observability,legacy,ui,cost-workflow
# só o essencial Supabase:
npx -y @luanpdd/kit-mcp sync install claude-code --packs core,supabaseTrocar os packs depois (incremental, v1.41+)
add/remove/store ajustam a seleção sem reinstalar tudo. A seleção fica gravada num lockfile por
IDE (<stateDir>/.kit-mcp-packs.json), então re-syncs e upgrades preservam o que você escolheu.
npx -y @luanpdd/kit-mcp pack add observability legacy # adiciona e re-sincroniza
npx -y @luanpdd/kit-mcp pack remove supabase # apaga só os arquivos exclusivos do pack
npx -y @luanpdd/kit-mcp pack store # loja interativa (checkbox; core travado)
npx -y @luanpdd/kit-mcp pack doctor # quais packs estão instalados por IDEremove é seguro: só apaga arquivos que ainda são stubs gerados pelo kit (arquivos que você editou à
mão são preservados) e nunca remove core. Vale para qualquer IDE (cursor, codex, windsurf,
antigravity, copilot, trae) — add/remove iteram sobre todos os IDEs já instalados.
O router (
kit-router) e oCLAUDE.mdagregado são gerados bundle-aware: só citam os domínios e recursos dos packs que você instalou — sem rotear para/supabaseou agents ausentes.
Consciência de uso e custo (v1.40+)
Cada agent/skill declara cost_tier: leve | medio | pesado no frontmatter — você vê o peso no
seletor da IDE antes de acionar (ex.: executor é pesado porque encadeia subagentes). As
descriptions seguem o padrão outcome-first (o que entrega + quando usar + sinal de custo). Para o
gasto real em USD/tokens, use o pack cost-workflow: npx -y @luanpdd/kit-mcp cost today.
Em runtime (v1.41+): o cost_tier aparece nas listagens (kit kit list-agents, MCP tool kit)
e no CLAUDE.md agregado; os orquestradores fazem pré-flight antes de disparar subagentes em
massa (listam quem vão chamar + o tier), controlado pelo toggle workflow.cost_awareness
(silencioso | resumo | confirmar) em /configuracoes; e o rodapé de atribuição sugere
/custo-sessao quando o turno usou recursos medio/pesado.
Comandos diários
Comando | Para quê |
| Ver tool calls do servidor em tempo real (JSONL em |
| p50/p95/p99 + error rate + sidecar status |
| Diagnóstico completo (versão, sidecar, hooks, IDE config, log dir) |
| TUI live mostrando request/response do MCP |
| Inspecionar payloads de agents gravados |
Cost tracking (v1.37+)
Suíte de telemetria de custo USD/tokens consumidos pelo Claude Code, inspirada no
ccusage com paridade numérica auditável
(delta ≤ 0.5% vs ccusage em fixture golden). Diferencial: integração nativa com
as fases do framework (cost-phase correlaciona usage com .planning/phases/<n>/).
5 MCP tools
Tool | O que faz |
| Custo do dia corrente (default UTC; |
| Custo de uma sessão ( |
| Janelas de 5h com gap-detection (compatível com ccusage |
| Custo correlacionado a uma fase do framework + |
| Estimativa prévia (heurística |
Todas retornam o shape canônico com total_usd, by_model, entry_count,
deduped_count, unknown_models, pricing_source e pricing_staleness_days.
CLI kit cost
kit cost today # tabela human-friendly
kit cost today --json # raw output do tool
kit cost session --transcript <path> # sessão de um transcript
kit cost blocks --since 2026-06-01 # janelas 5h dos últimos N dias
kit cost phase --phase 172 # custo correlacionado à fase 172
kit cost estimate "prompt de exemplo" # estimativa ex-ante
kit cost statusline # contrato statusline Claude Code
kit cost refresh-pricing # refresca snapshot LiteLLM (manual)Statusline (Claude Code)
Adicione ao ~/.claude/settings.json:
{
"statusLine": {
"type": "command",
"command": "npx -y @luanpdd/kit-mcp cost statusline"
}
}Output default compact: $0.42 sess | $1.20 day | $0.18 5h.
Override via KIT_MCP_STATUSLINE_FORMAT=verbose|json.
Bench: cold P50 ~148ms, warm P50 < 1ms (cache em os.tmpdir()).
Skill cost-tracking
Auto-trigger por keywords (custo, cost, gasto, tokens, usd, quanto gastei).
A skill tem bloco de disambiguation explícito vs burn-rate-status (SLO error budget)
e risk-budget (SRE risk) para evitar colisão de intent.
Pricing snapshot
Snapshot embedded do LiteLLM
em src/core/cost/pricing-snapshot.json (refresh weekly via GitHub Action,
sempre PR aberto para review humano — nunca auto-merge).
Limitação conhecida: o snapshot LiteLLM tem lag-behind oficial de 2-4 semanas
para modelos recém-lançados. Tools retornam pricing_staleness_days + warning
se > 30 dias. Modelo desconhecido NUNCA retorna $0 silencioso — sempre usd: null
entrada em
unknown_models[].
Persistência opt-in
Use --persist (CLI) ou persist: true (MCP tool) para gravar o output em
.planning/costs/<ts>-<tool>.json (gitignored, dev-only).
Sem novas runtime deps
Tudo offline-safe, zero deps adicionados em runtime (ccusage está em devDependencies
apenas para o golden test de paridade). Preserva o budget de 6 deps enforçado em CI.
O que a comunidade precisa saber
Dois fluxos diferentes, mesma origem
┌─────────────┐ kit sync ┌──────────────────┐
│ kit/ │ ──────────▶ │ .claude/agents/ │ IDE lê do disco
│ (npm pkg) │ (offline, │ .claude/skills/ │ na inicialização
│ │ one-shot) │ .claude/commands/│
└─────────────┘ └──────────────────┘
┌──────────────┐ spawns ┌──────────────────┐
│ Claude Code │ ────────────▶ │ kit-mcp (stdio) │ tools live via
│ (IDE host) │ stdin/stdout │ 14 tools │ JSON-RPC
└──────────────┘ ◀──────────── └──────────────────┘kit syncprojeta o conteúdo no formato nativo do IDE — funciona offline e o IDE só precisa dos arquivos.kit-mcp(MCP server) roda como subprocess do IDE e expõe 14 tools (kit,sync,reverse-sync,gates,forensics,install,metrics-snapshot,auto-install,ack-restart,cost-today,cost-session,cost-blocks,cost-phase,cost-estimate).
Sem output no terminal ao rodar kit-mcp? Não é bug. A spec MCP proíbe stdout fora do JSON-RPC. Use kit-mcp logs --follow ou o sidecar UI (porta auto-pick na faixa 7100-7199, impressa no stderr ao iniciar).
Stable API v1.0+ desde v1.13
16 releases sem breaking changes na superfície MCP. Sua config .mcp.json continua funcionando.
Princípio canônico do handoff cooperativo (v1.23+)
Agents não-Supabase planejam, agents Supabase materializam/hardenam, ninguém descarta upstream. BLOCK rígido é anti-pattern — verdicts são GO / STRENGTHEN / REWRITE com confirmação.
Defense-in-depth em 10 camadas (Supabase)
RLS + Column-Level + Custom Claims + Postgres Roles + Audit Log + LGPD + Super-admin + Realtime auth + Branching + CI/CD. Cada camada documentada com pattern canônico e anti-patterns.
Convenção PT-BR
Skills, agents e commands são em PT-BR. Termos técnicos canônicos (RLS, SLO, characterization tests) ficam em EN para preservar busca e referências.
Configuração via env vars
Var | Default | O que faz |
| unset |
|
|
| Override do log dir |
|
| Retention (0 = forever) |
| unset |
|
| unset |
|
Estrutura do kit
kit/
├── agents/ 86 agents executáveis (planner, executor, debugger, supabase-rls-hardener, …) — cada um com cost_tier
├── commands/ 99 slash-commands (/discutir-fase, /planejar-fase, /executar-fase, …)
├── skills/ 103 skills consultáveis (supabase-rls-policies, supabase-edge-functions-auth, …) — cada uma com cost_tier
├── packs/ manifestos dos Content Packs (core, supabase, observability, legacy, ui, cost-workflow)
├── framework/ workflows e templates que os agents delegam
└── hooks/ PostToolUse hooks (sidecar-tool-publisher, etc)Contribuindo
Issues e PRs: github.com/luanpdd/kit-mcp
Skills/agents são markdown puro com frontmatter YAML — editar e abrir PR
Antes de mexer em código
src/, leia o.planning/(workflow framework)
Quando NÃO usar
Você não usa Claude Code/Cursor/Codex (ou similar) nem trabalha com agents — provavelmente outro kit serve melhor
Você quer um framework genérico tipo LangChain — kit-mcp é opinionated e em PT-BR
Não usa Supabase? Ainda serve: instale
--packs core,observability,legacy,ui,cost-workflowe nenhum recurso Supabase entra. O packsupabaseé opcional, não o produto inteiro.
Licença
MIT — use, modifique, fork à vontade.
Criado por Luan PDD — engenharia, curadoria de conteúdo e direção do projeto.
Inspirado pelo vinilana/dotcontext.
Available Tools
16 toolsack-restartA
Acknowledge that the IDE session was restarted after kit:auto-install. Removes the .kit-mcp-restart-required marker so kit:doctor stops warning. Called automatically by the harness when it detects the marker after reload, or manually by the user.
Inputs: projectRoot.
auto-installA
IMPORTANT for first contact: project kit/ into the host's native layout (.claude/agents/, skills/, commands/) so 86 agents become real subagent_types in the Agent tool, 103 skills get native auto-trigger via descriptions, and 99 commands appear as /slash-commands in the IDE. Idempotent — re-running is a no-op if already in sync. Run once per project on first kit-mcp contact; restart the IDE session after to load the new agents/skills/commands. After restart, call ack-restart to clear the marker.
Inputs: force, action, target, projectRoot.
cost-blocksA
Custo Claude Code por janelas deslizantes de 5h com gap detection (entries separadas por >5h iniciam novo bloco — pattern ccusage). Retorna blocks[] com started_at, ended_at, total_usd, by_model, entry_count, is_active + shape canônico agregado. Triggers: "custo por bloco", "5h windows", "blocks cost", "ccusage blocks". Use cost-today para dia, cost-session para sessão.
Inputs: tz, persist, config_dirs, projectRoot, +1 more.
cost-estimateA
Estima custo USD de um prompt ANTES de mandar para Claude. Heurística chars/4 com range ±30% (sem tokenizer real na v1.37.0 — debt em SKILL.md). Retorna estimated_input_tokens, estimated_output_tokens, estimated_usd, estimated_usd_range:[low,high], disclaimer. Triggers: "quanto vai custar", "estimativa de prompt", "estimate cost", "price this prompt".
Inputs: text (required), model, output_ratio, chars_per_token.
cost-phaseB
Custo Claude Code correlacionado com uma fase do framework kit-mcp (.planning/phases/-*/). Cruza mtime de SPEC.md + completed_at de STATE.md + git log para inferir janela temporal. Retorna shape canônico + phase_id, phase_slug, correlation_confidence (high/medium/low/unknown). Diferencial vs ccusage: contexto de workflow. Triggers: "custo da fase", "quanto a fase X gastou", "phase cost".
Inputs: phase_id (required), persist, config_dirs, projectRoot, +1 more.
cost-sessionA
Custo Claude Code de uma sessão específica (ou da sessão ativa auto-deduzida pelo arquivo JSONL mais recente com mtime < 30min). Retorna shape canônico + session_id, started_at, last_activity_at, source_file. Triggers: "custo da sessão", "session cost", "quanto essa conversa gastou", "current session usd". Use cost-today para o dia inteiro.
Inputs: persist, session_id, config_dirs, max_idle_ms, +3 more.
cost-todayA
Custo Claude Code do dia corrente (USD + tokens por modelo) lendo JSONLs de ~/.claude/projects/. tz default UTC (paridade ccusage). Retorna shape canônico: total_usd, by_model, entry_count, deduped_count, skipped_entry_count, parse_error_count, unknown_models, pricing_source, pricing_staleness_days. Triggers: "quanto gastei hoje", "custo do dia", "spent today", "daily cost". Use cost-session para a sessão atual, cost-blocks para janelas de 5h, cost-phase para uma fase do framework.
Inputs: tz, date, persist, config_dirs, +2 more.
forensicsC
Failure dataset & replays — close the learning loop on failed agent runs.
Inputs: action (required), agent, dryRun, outcome, +3 more.
gatesC
List, fetch, or execute reusable workflow gates (regression, confidence, etc).
Inputs: action (required), id, stage, autoSpawn, +1 more.
installB
Register this kit-mcp server into an IDE's MCP config (Claude/Cursor/Codex/Antigravity/Windsurf).
Inputs: action (required), pkg, via, name, +4 more.
kitA
Browse the personal kit: 86 agents, 99 commands, 103 skills. Call this when the user mentions Supabase (RLS, branching, migrations, Edge Functions, Custom Claims, Postgres Roles, Storage, Realtime, pgvector), multi-tenant SaaS, agentic harness, characterization tests, legacy refactor, observability (SLO, golden signals, error budgets), DDIA topics (consistency, replication lag, schema evolution), SRE (postmortems, toil, PRR), CI/CD (hermetic builds, pipelines), or any workflow that benefits from the canonical patterns. Use action=search to discover, action=get to read the full prompt/skill.
Inputs: action (required), kind, name, tier, +2 more.
metrics-snapshotA
Read in-memory golden-signals metrics for this MCP server (counters + latency p50/p95/p99 per tool).
Inputs: no named parameters.
packA
Gerencia Content Packs (subconjuntos instaláveis do kit). action=list catálogo com contagens, info detalha um pack, resolve mostra o fecho de dependências, doctor reporta packs instalados por IDE, add/remove ajustam a seleção e re-sincronizam (escrevem o lockfile .kit-mcp-packs.json). Triggers: "instalar pack", "remover pack", "quais packs", "content pack".
Inputs: action (required), id, packs, target, +2 more.
projectsA
Consome o registro de projetos (PROJETOS.md na raiz, gerido pelo comando /base) em runtime. action=list retorna projeto principal + projetos conectados com status de completude por projeto; get busca um projeto pelo nome (pasta local, repositório, documentação local); doctor gera relatório de validação — campos obrigatórios, existência das pastas locais no disco e shape https?:// das URLs. Triggers: "registro de projetos", "projetos conectados", "PROJETOS.md", "/base", "projeto principal", "onde fica o projeto X".
Inputs: action (required), name, projectRoot.
reverse-syncC
Detect and apply edits made directly in an IDE back to the canonical kit/.
Inputs: action (required), target (required), only, dryRun, +3 more.
syncC
Project the kit into an IDE-specific layout (markdown references by default).
Inputs: action (required), mode, dryRun, target, +2 more.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 16 tools
Most tools have distinct purposes, but the five cost-related tools (cost-blocks, cost-estimate, cost-phase, cost-session, cost-today) could cause confusion despite scope differentiation. Descriptions help, but the domain overlap is notable.
All names use lowercase with hyphens, but the semantic pattern is inconsistent: verb-noun (ack-restart, auto-install), noun-noun (cost-blocks, metrics-snapshot), and single-word (install, kit, sync). Mixed conventions reduce predictability.
16 tools is slightly above the ideal 3–15 range but still reasonable. The set covers multiple sub-domains (cost, kit management, projects), though some tools like forensics and gates feel vague.
The cost tools provide tracking but lack budgeting or forecasting. Kit management has sync and reverse-sync but no create/update for agents/skills/commands. Projects tool is limited to listing and validation; lifecycle operations are missing.
Maintenance
Related MCP Connectors
Shared memory MCP server for Claude Code, Codex, Gemini CLI and Cursor. Cited, editable.
The project brain for AI coding agents — memory, decisions, sprints, knowledge base via MCP.
Agent-native notes, tasks, dev-docs, vaults, sync & handoffs. MCP + OpenAPI dual surface.
MCP server for generating rough-draft project plans from natural-language prompts.
Related MCP Servers
- AlicenseNot gradedqualityAmaintenanceA local-first MCP server that helps Claude Code prioritize your work by searching across your tools like GitHub and Slack.7 npmMIT
- AlicenseAqualityAmaintenanceAn MCP server that bridges Claude Code with Antigravity CLI using a Swarm Agent architecture to optimize local development workflows and minimize LLM token costs. Includes a web UI for monitoring agent workflows.29546 PyPI31MIT
- FlicenseNot gradedqualityDmaintenanceMCP server for project planning inside Claude. It tracks progress, knows your codebase, and resumes exactly where you left off every session.7 npm5-
- AlicenseAqualityDmaintenanceOne MCP that turns Claude Code into your whole dev stack by swallowing other MCP servers, delegating to Codex & Gemini on your CLI subscriptions, remembering projects in a searchable knowledge graph, and carrying setup across sessions — secret-free by design.234MIT