mcp-implementation-security-review
Ajuda seu agente a revisar o código de segurança de servidores e clientes MCP. Ele verifica se há vulnerabilidades comuns para proteger seus sistemas.
O que ela faz
Esta ferramenta verifica o código de segurança de servidores e clientes que usam o protocolo MCP. Ela procura por problemas comuns de segurança, como autenticação fraca, falhas na validação de dados e vulnerabilidades que podem permitir a execução de código malicioso.
Quando usar
- ✓Antes de lançar um servidor MCP.
- ✓Ao revisar a segurança de um cliente MCP.
- ✓Para garantir que o código segue as melhores práticas de segurança.
Exemplo do que pedir para a IA
“Revise a segurança deste código de servidor MCP.”
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
A ferramenta analisa o código comparando-o com uma lista de verificações de segurança. Ela identifica onde os problemas estão e gera um relatório com detalhes.
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-implementation-security-reviewOu baixe só o arquivo:
curl -L https://raw.githubusercontent.com/github/awesome-copilot/main/skills/mcp-implementation-security-review/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.
Revisão de Segurança da Implementação MCP
Processo
Etapa 1 — Classificar o alvo
- Verificar versão do protocolo MCP 2025-03-26 ou posterior (atual: 2025-11-25). Marcar versões mais antigas como uma constatação, mas continuar a revisão.
- Determinar se o alvo é um servidor ou cliente.
- Classificar o transporte como exposto à rede ou apenas local usando a referência de transporte abaixo.
- Registrar transporte, versão do protocolo e se existem sessões.
Critério de conclusão: Tipo de alvo, status do protocolo e transporte são identificados.
Etapa 2 — Filtrar falsos positivos
- Aplicar os Filtros de Falso Positivo antes de abrir constatações.
- Manter documentação apenas quando descrever o comportamento do servidor do próprio repositório, implantação, transporte ou postura de autenticação.
- Para repositórios de framework/SDK, limitar as constatações à configuração padrão e à superfície da API pública.
Critério de conclusão: Evidências restantes estão em código dentro do escopo, documentação de propriedade do repositório ou comportamento da API pública.
Etapa 3 — Verificar controles de linha de base
- Para servidores expostos à rede, verificar MCP-01 a MCP-05.
- Para servidores locais/STDIO, não marcar os controles de linha de base como PASSAR/FALHAR; fornecer notas de melhores práticas e continuar para a revisão de RCE.
- Para clientes, revisar apenas o manuseio de tokens/sessões explicitamente visível no código do cliente; não aplicar a linha de base do servidor, a menos que o usuário solicite revisão de risco do lado do cliente.
Critério de conclusão: Cada controle aplicável tem um status suportado.
Etapa 4 — Verificar vetores de RCE
- Revisar todos os 7 vetores de RCE.
- Marcar cada vetor como SEGURO, EM RISCO ou N/A.
- Preferir evidências diretas em vez de inferências; a tabela de Vetores de RCE abaixo enumera os padrões a serem procurados.
Critério de conclusão: Cada ferramenta relevante tem um resultado de RCE ou N/A explícito.
Etapa 5 — Verificar OWASP MCP Top 10
- Avaliar todos os 10 riscos OWASP abaixo.
- Se um controle da Etapa 3 já cobrir totalmente um risco OWASP, referenciar esse resultado em vez de reavaliar.
- Para servidores locais/STDIO, marcar riscos OWASP dependentes de rede (MCP07, MCP09) como N/A.
- Marcar cada risco como PASSAR, FALHAR ou NECESSITA INVESTIGAÇÃO.
Critério de conclusão: Todos os 10 riscos OWASP têm resultados suportados por evidências observáveis ou referenciados da Etapa 3.
Etapa 6 — Relatório
- Usar o Formato de Saída de Conformidade abaixo.
- Incluir referências de arquivo/linha em cada justificativa.
- Separar constatações de código de acompanhamentos manuais.
- Se a evidência estiver incompleta, usar NECESSITA INVESTIGAÇÃO e nomear o artefato ausente.
Critério de conclusão: O relatório inclui controles, RCE, OWASP opcional e ações.
Referência
Regras de decisão
- Servidor exposto à rede: Aplicar todos os 5 controles, em seguida, executar RCE e verificações OWASP solicitadas.
- Servidor local/STDIO: Fornecer apenas orientação de melhores práticas para os 5 controles; ainda executar RCE porque a entrada da ferramenta pode ser executada localmente.
- Cliente: Revisar o manuseio de tokens recebidos e a recusa em confiar em IDs de sessão fornecidos pelo servidor; não forçar controles de servidor, a menos que solicitado.
- Proxy reverso ou exposição de contêiner: Se o tráfego puder alcançar o servidor por uma rede, tratá-lo como exposto à rede, mesmo que a ligação interna seja localhost.
- Evidência incerta: Não adivinhe. Marcar NECESSITA INVESTIGAÇÃO e dizer o que deve ser verificado manualmente.
- Cobertura de autenticação ambígua: Middleware de autenticação existe, mas não está claro se ele cobre endpoints MCP → marcar NECESSITA INVESTIGAÇÃO.
- Transporte indeterminável: Se o transporte não puder ser estabelecido a partir do código, marcar para revisão manual e não assumir STDIO — a padronização para STDIO pularia incorretamente os controles do servidor.
Classificação de transporte
Exposto à rede (aplicar todos os controles):
| Padrão | Transporte |
|---|---|
transport="http" ou transport="sse" |
HTTP/SSE |
StreamableHttpServerTransport |
HTTP (TS/JS) |
SSEServerTransport |
SSE (TS/JS) |
WithHttpTransport() |
HTTP (C#) |
host="0.0.0.0" |
Ligação de todas as interfaces |
Express .listen(port) com rotas MCP |
HTTP (padrão 0.0.0.0) |
EXPOSE em Dockerfile + servidor MCP |
Exposto à rede |
Apenas local (melhores práticas apenas):
| Padrão | Transporte |
|---|---|
StdioServerTransport |
STDIO (TS/JS) |
WithStdioServerTransport() |
STDIO (C#) |
transport="stdio" |
STDIO |
mcp.run() sem argumentos (Python FastMCP) |
Padrão STDIO |
.vscode/mcp.json com chave command e sem URL |
Processo filho STDIO |
Armadilhas de ligação de host:
…
Perguntas frequentes
O que é MCP?
MCP (Model Context Protocol) é um protocolo para comunicação entre diferentes partes de um sistema, especialmente em aplicações de IA.
O que são 'vetores de RCE'?
RCE significa 'Remote Code Execution' (Execução Remota de Código). São falhas de segurança que permitem que um invasor execute comandos no seu servidor.
O que é 'OWASP MCP Top 10'?
É uma lista das 10 principais ameaças de segurança específicas para o protocolo MCP, baseada nas listas de vulnerabilidades mais conhecidas da OWASP.
Detalhes
Descrição original do autor
Review the implementation source code of MCP (Model Context Protocol) servers, clients, and tool handlers against a security baseline — authentication, sessions, rate limiting, input-schema validation, official-SDK usage, RCE vectors, and the OWASP MCP Top 10 — producing a report with file/line evidence. Use this skill when: - Reviewing an MCP server implementation for security before release - Ch
repo: github/awesome-copilot
Popularidade
- Estrelas no GitHub
- 40 mil
- Posição no ranking
- #5225
- 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