mcp-release-qa
Faz seu agente testar um servidor MCP antes de ser lançado. Ele verifica se tudo funciona como esperado e documenta os resultados.
O que ela faz
Verifica se um servidor de IA (chamado MCP) está pronto para ser usado pelo público. Ele testa se o servidor funciona como esperado, se as informações sobre ele estão corretas e se ele responde bem a erros.
Quando usar
- ✓Quando você está prestes a lançar um novo servidor de IA.
- ✓Ao revisar um servidor de IA que já existe.
- ✓Para garantir que a documentação de um servidor de IA corresponde ao seu funcionamento real.
Exemplo do que pedir para a IA
“Verifique se o servidor de IA 'meu-servidor-legal' está funcionando corretamente antes do lançamento.”
Quer saber mais? Abra as seções abaixo.
Como usar
O jeito mais fácil: copie a mensagem abaixo e cole no Claude, ChatGPT, Cursor ou outra IA. Ela lê a skill e segue as instruções.
Link da skill
Mensagem pronta para colar
Como funciona
O sistema executa o servidor de IA, interage com ele como um usuário faria, verifica se ele responde corretamente e se as informações sobre ele (como o que ele faz e como usá-lo) estão certas.
Instalação
Jeito mais fácil: copie o link da skill e cole no Claude, ChatGPT ou Cursor pedindo para seguir as instruções.
No terminal (Claude Code, Codex, Cursor), na pasta do projeto:
npx skills add github/awesome-copilot --skill mcp-release-qaOu baixe só o arquivo:
curl -L https://raw.githubusercontent.com/github/awesome-copilot/main/skills/mcp-release-qa/SKILL.md -o SKILL.mdConteúdo técnico (SKILL.md)
Tradução do texto original do autor no GitHub. Os comandos e códigos estão como no original.
QA de Lançamento do MCP
Teste o servidor que os usuários executarão. Uma revisão de esquema ou um teste unitário aprovado não são evidências de tempo de execução.
Esta habilidade complementa a revisão de segurança. Ela foca no comportamento do protocolo, desvios no contrato publicado, correção de transporte e evidências de lançamento reproduzíveis.
Regras
- Execute verificações contra um processo de servidor novo, construído a partir da revisão candidata.
- Mantenha
initialize,notifications/initialized, descoberta e invocação na mesma sessão. Um novo processo é uma nova sessão STDIO. - Trate registros de origem como verdade de implementação e documentação pública como um contrato que deve corresponder a eles.
- Registre comandos exatos e respostas brutas. Não substitua evidências ausentes por "parece correto".
- Não invoque ferramentas com capacidade de mutação contra dados de produção. Use fixtures, um sandbox, ou pare e nomeie o ambiente de teste seguro ausente.
- Derive o inventário de capacidade esperado da origem candidata em cada execução.
1. Estabelecer a superfície de lançamento
Identifique:
- commit candidato e comando de build;
- ponto de entrada e transporte do servidor: STDIO, HTTP Streamable ou SSE;
- versões do protocolo MCP suportadas;
- arquivos de origem que registram ferramentas, recursos, modelos de recursos e prompts;
- catálogos gerados, manifestos, tabelas README e instruções de instalação;
- comandos existentes de protocolo, integração e smoke-test.
Prefira comandos nativos do repositório. Inspecione package.json, pyproject.toml, Makefile, fluxos de trabalho de CI e instruções de contribuidor antes de inventar um harness de teste.
2. Iniciar um servidor limpo
Construa o candidato e inicie o ponto de entrada documentado com configuração segura para testes. Capture:
- o comando exato;
- SHA do commit;
- nomes de variáveis de ambiente, com valores redigidos;
- stdout, stderr e status de saída;
- o endpoint ou transporte de processo filho usado pelo cliente.
Para STDIO, stdout é apenas para o protocolo. Logs, banners e traces de pilha pertencem ao stderr. Para transportes HTTP, registre o status, cabeçalhos MCP relevantes e o tratamento do identificador de sessão sem imprimir credenciais.
Se o servidor não puder ser iniciado a partir de suas instruções documentadas, relate isso como uma falha de lançamento e preserve o erro de inicialização literalmente.
3. Exercitar uma sessão completa
Execute esta sequência através de um cliente MCP real ou do harness de integração do repositório:
initializecom uma versão de protocolo que o servidor afirma suportar.- Confirme a versão negociada e as capacidades anunciadas.
- Envie
notifications/initialized. - Chame
ping. - Chame cada método de descoberta suportado:
tools/listresources/listresources/templates/listprompts/list
- Exercite pelo menos um item representativo somente leitura de cada classe de capacidade anunciada.
- Siga a paginação até que nenhum cursor permaneça quando um método de lista for paginado.
Não envie requisições pós-inicialização através de processos separados de uso único. Isso testa acidentalmente várias sessões incompletas em vez de uma sessão válida.
4. Provar paridade de inventário
Construa quatro inventários a partir de evidências atuais:
| Superfície | Evidência |
|---|---|
| Origem | Definições registradas de ferramentas, recursos, modelos e prompts |
| Tempo de execução | Resultados dos métodos de descoberta ao vivo |
| Metadados gerados | Catálogos, manifestos ou índices gerados |
| Documentação | README, páginas de referência e saída de instalação |
Compare por identificador estável. Relate:
- entradas de origem ausentes em tempo de execução;
- entradas em tempo de execução ausentes em metadados ou documentação;
- nomes, descrições, argumentos, URIs ou parâmetros de prompt desatualizados;
- comandos de instalação documentados que não iniciam o servidor candidato.
Regenere arquivos derivados com o comando de build do próprio repositório, e falhe se a árvore de trabalho ainda contiver alterações geradas inexplicadas.
5. Verificar contratos publicados
Para cada item descoberto, verifique a definição em tempo de execução contra sua origem:
Ferramentas
- Nome e descrição são estáveis e específicos.
inputSchemadefine tipos, campos obrigatórios, enums e limites onde necessário.- Propriedades desconhecidas são rejeitadas quando o contrato da ferramenta é fechado.
- Anotações de mutação, idempotência, somente leitura e mundo aberto correspondem ao comportamento.
- Chamadas bem-sucedidas conformam-se a
outputSchemaquando uma é publicada. - Erros são erros de protocolo ou falhas estruturadas da ferramenta, não traces de pilha vazados.
Recursos e modelos
- URIs e tipos MIME correspondem às definições registradas.
- Recursos estáticos são legíveis.
- Parâmetros de modelo são validados antes da resolução.
…
Perguntas frequentes
Por que não basta apenas testar o código?
Testar o código (testes unitários) é importante, mas não garante que o servidor funcionará corretamente quando os usuários reais o utilizarem. Este teste verifica o comportamento real do servidor.
O que é 'MCP'?
MCP é um tipo de protocolo, um conjunto de regras para a comunicação entre programas de computador. Neste caso, refere-se a um servidor de IA que usa esse protocolo.
O que são 'caminhos de falha'?
São situações em que algo dá errado, como um comando incorreto ou um erro interno. Testar esses caminhos garante que o servidor lide com erros de forma adequada e informe o usuário claramente.
Detalhes
Descrição original do autor
Verify an MCP server before release by exercising a real protocol session, comparing runtime capabilities with source and documentation, testing failure paths, and recording reproducible evidence. Use when shipping or reviewing an MCP server, tool, resource, prompt, catalog, or install path.
repo: github/awesome-copilot
Popularidade
- Estrelas no GitHub
- 40 mil
- Posição no ranking
- #5226
- Licença
- MIT
- Atualizada em
- 15/10/2026
Comentários
- …
Mais skills deste repositório
acquire-codebase-knowledge
Ajuda seu agente a entender e documentar um projeto de código existente. É útil para novas pessoas entrarem no projeto ou para ter uma visão geral da arquitetura.
github/awesome-copilot
acreadiness-assess
Faz seu agente avaliar a prontidão de um projeto para IA e gerar um relatório. É útil para entender o quão bem um projeto está preparado para usar ferramentas de IA.
github/awesome-copilot
acreadiness-generate-instructions
Ajuda seu agente a criar instruções para ferramentas de IA baseadas em uma avaliação. É útil para melhorar a forma como a IA interage com o código e fecha lacunas identificadas.
github/awesome-copilot
acreadiness-policy
Faz seu agente ajudar a definir ou aplicar políticas para avaliação de projetos de IA. É útil para padronizar a forma como os projetos são avaliados e garantir conformidade.
github/awesome-copilot
Skills parecidas
agent-architecture-audit
Faz seu agente verificar se tudo está funcionando corretamente. Ele encontra e conserta problemas em sistemas de IA, garantindo que funcionem como esperado.
affaan-m/ECC
agent-eval
Ajuda seu agente a comparar diferentes ferramentas de programação de IA. Ele mede qual é mais rápido, barato e confiável para realizar tarefas específicas.
affaan-m/ECC
agent-harness-construction
Faz seu agente entender melhor como realizar tarefas. Ele otimiza as ferramentas e instruções que o agente usa para aumentar suas chances de sucesso.
affaan-m/ECC