
Scanner de segurança para servidores MCP. Avalia autenticação, permissões, riscos de injeção e segurança de ferramentas. O Farol da segurança de agentes.
O farol da segurança de agentes.
Escaneie qualquer servidor MCP. Obtenha um boletim de segurança.
Seu servidor MCP expõe ferramentas a agentes de IA. Quão seguro ele é?
A maioria dos servidores MCP não possui autenticação, permissões por ferramenta, validação de entrada e têm descrições de ferramentas vulneráveis a injeção de prompt. Você só não sabe disso ainda.
O AgentsID Scanner revela.
npx @agentsid/scanner -- npx @some/mcp-server
É isso. Você recebe uma nota e descobertas detalhadas.
| Categoria | O Que Verifica | Por Que Importa |
|---|---|---|
| Injeção | Descrições de ferramentas para 11 padrões de injeção de prompt | Descrições maliciosas podem sequestrar o comportamento do agente |
| Permissões | Nomes de ferramentas classificados por risco (destrutivo, execução, financeiro, credencial) | 50 ferramentas sem controle de acesso são 50 superfícies de ataque |
| Validação | Esquemas de entrada sem restrições, strings ilimitadas, parâmetros opcionais apenas | Sem validação = entrada arbitrária nos manipuladores da ferramenta |
| Autenticação | Indicadores de autenticação na superfície da ferramenta | Ferramentas sem autenticação = agentes não autenticados chamando suas ferramentas |
| Segredos | Ferramentas que podem expor credenciais na saída | Chaves de API, tokens, senhas vazadas em respostas |
| Saída | Saída de arquivos/dados sem filtro | Conteúdo sensível de arquivos retornado sem redação |
╔══════════════════════════════════════════════════════════════╗
║ AgentsID Security Scanner — Report ║
╚══════════════════════════════════════════════════════════════╝
Server: my-mcp-server v1.0.0
Tools: 23
Scanned: 2026-03-29T12:00:00.000Z
Overall Grade: D (42/100)
Category Grades:
injection A
permissions F
validation D
auth F
output B
Tool Risk Profile:
destructive ████ 4
execution ██ 2
credential_access █ 1
Findings: 31
CRITICAL: 2
HIGH: 8
MEDIUM: 15
LOW: 6
Recommendations:
1. Address CRITICAL and HIGH findings immediately
2. Add per-tool permission controls (agentsid.dev/docs)
3. Implement input validation on all tool parameters
4. Add authentication to server endpoints
# Escaneie qualquer servidor MCP instalável via npx
agentsid-scan -- npx @modelcontextprotocol/server-filesystem ./
# Escaneie um arquivo de servidor local
agentsid-scan -- node my-server.mjs
# Escaneie um servidor MCP Python
agentsid-scan -- python -m my_mcp_server
agentsid-scan --url https://mcp.example.com/mcp
agentsid-scan --json -- npx @some/mcp-server > report.json
agentsid-scan --env API_KEY=xxx --env DB_URL=postgres://... -- node server.mjs
Começa em 100 pontos. Deduções por descoberta:
Descobertas MEDIUM e LOW são normalizadas pelo número de ferramentas para que um problema por ferramenta (ex.: falta de maxLength em cada entrada) não se acumule linearmente com o tamanho do servidor. Um servidor com 50 ferramentas e 50 LOWs pontua o mesmo que um servidor com 5 ferramentas e 5 LOWs. CRITICAL e HIGH permanecem absolutos — vulnerabilidades reais doem independentemente do tamanho do servidor.
O scanner verifica descrições de ferramentas para 11 padrões de injeção de prompt:
Toda ferramenta é classificada por padrão de nome:
O scanner mostra o que está errado. Veja como corrigir:
npm install @agentsid/guard
AgentsID Guard valida toda chamada de ferramenta contra regras de permissão antes da execução. 50 ferramentas, 16 categorias, todas protegidas.
npm install @agentsid/sdk
Três linhas de middleware no seu servidor MCP. Documentação completa em agentsid.dev/docs.
import { scanStdio, scanHttp, scanToolDefinitions } from "@agentsid/scanner";
// Escaneie um servidor local
const report = await scanStdio("npx @some/server", { json: true });
// Escaneie um servidor remoto
const report = await scanHttp("https://mcp.example.com", { json: true });
// Escaneie definições de ferramentas diretamente (sem servidor necessário)
const report = scanToolDefinitions(myToolArray, { json: true });
Encontrou um padrão que não estamos detectando? Abra uma issue ou PR. O motor de regras está em src/rules.mjs — adicionar um novo padrão é uma regex.
Todos os 15.982 servidores pontuados e pesquisáveis: agentsid.dev/registry
MIT
| Severidade | Dedução | Normalização | Limite |
|---|
| CRITICAL | -25 cada | Absoluta — sempre aplica total | Sem limite |
| HIGH | -15 cada | Absoluta — sempre aplica total | Máx -45 |
| MEDIUM | -8 cada | Dividida por √(número de ferramentas) | Máx -25 |
| LOW | -3 cada | Dividida por √(número de ferramentas) | Máx -15 |
| INFO | 0 | — | — |
| Nota | Pontuação | Significado |
|---|
| A | 90-100 | Postura de segurança excelente |
| B | 75-89 | Boa — problemas menores |
| C | 60-74 | Aceitável — precisa melhorar |
| D | 40-59 | Ruim — riscos significativos |
| F | 0-39 | Reprovada — vulnerabilidades críticas |
| Nível de Risco | Padrões | Exemplos de Ferramentas |
|---|
| Crítico | execute, shell, admin, sudo, payment | shell_run, admin_reset, process_payment |
| Alto | delete, remove, drop, deploy, credential | delete_user, deploy_prod, get_api_key |
| Médio | create, update, send, write | create_issue, send_email, write_file |
| Informativo | read, get, list, search, describe | get_status, list_users, search_docs |