
Escáner de seguridad para servidores MCP. Evalúa autenticación, permisos, riesgos de inyección y seguridad de herramientas. El Faro de la seguridad de agentes.
El Faro de la seguridad de agentes.
Escanea cualquier servidor MCP. Obtén un boletín de calificaciones de seguridad.
Tu servidor MCP expone herramientas a agentes de IA. ¿Qué tan seguro es?
La mayoría de los servidores MCP vienen sin autenticación, sin permisos por herramienta, sin validación de entrada y con descripciones de herramientas vulnerables a inyección de instrucciones. Simplemente aún no lo sabes.
AgentsID Scanner te lo dice.
npx @agentsid/scanner -- npx @some/mcp-server
Eso es todo. Obtienes una calificación con letra y hallazgos detallados.
| Categoría | Qué Verifica | Por Qué Importa |
|---|---|---|
| Inyección | Descripciones de herramientas para 11 patrones de inyección de instrucciones | Descripciones maliciosas de herramientas pueden secuestrar el comportamiento del agente |
| Permisos | Nombres de herramientas clasificados por riesgo (destructivo, ejecución, financiero, credencial) | 50 herramientas sin control de acceso son un ataque de 50 superficies |
| Validación | Esquemas de entrada para restricciones faltantes, cadenas sin límite, parámetros solo opcionales | Sin validación = entrada arbitraria a tus manejadores de herramientas |
| Autenticación | Indicadores de autenticación en la superficie de herramientas | Herramientas sin autenticación = agentes no autenticados llamando a tus herramientas |
| Secretos | Herramientas que pueden exponer credenciales en la salida | Claves API, tokens, contraseñas filtradas en respuestas |
| Salida | Salida de archivos/datos sin filtrar | Contenidos de archivos sensibles devueltos sin redacción |
╔══════════════════════════════════════════════════════════════╗
║ AgentsID Security Scanner — Report ║
╚══════════════════════════════════════════════════════════════╝
Servidor: my-mcp-server v1.0.0
Herramientas: 23
Escaneado: 2026-03-29T12:00:00.000Z
Calificación General: D (42/100)
Calificaciones por Categoría:
inyección A
permisos F
validación D
autenticación F
salida B
Perfil de Riesgo de Herramientas:
destructivo ████ 4
ejecución ██ 2
acceso_credenciales █ 1
Hallazgos: 31
CRÍTICOS: 2
ALTOS: 8
MEDIOS: 15
BAJOS: 6
Recomendaciones:
1. Aborda los hallazgos CRÍTICOS y ALTOS de inmediato
2. Agrega controles de permisos por herramienta (agentsid.dev/docs)
3. Implementa validación de entrada en todos los parámetros de herramientas
4. Agrega autenticación a los puntos finales del servidor
# Escanea cualquier servidor MCP instalable mediante npx
agentsid-scan -- npx @modelcontextprotocol/server-filesystem ./
# Escanea un archivo de servidor local
agentsid-scan -- node my-server.mjs
# Escanea un servidor MCP de 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
Comienza en 100 puntos. Deducciones por hallazgo:
Los hallazgos MEDIO y BAJO se normalizan por cantidad de herramientas para que un problema por herramienta (por ejemplo, falta de maxLength en cada entrada) no se acumule linealmente con el tamaño del servidor. Un servidor de 50 herramientas con 50 BAJOS obtiene la misma puntuación que un servidor de 5 herramientas con 5 BAJOS. Los CRÍTICOS y ALTOS siguen siendo absolutos: las vulnerabilidades reales duelen independientemente del tamaño del servidor.
El escáner verifica las descripciones de herramientas para 11 patrones de inyección de instrucciones:
Cada herramienta se clasifica por patrón de nombre:
El escáner te dice qué está mal. Así es como solucionarlo:
npm install @agentsid/guard
AgentsID Guard valida cada llamada de herramienta contra reglas de permisos antes de la ejecución. 50 herramientas, 16 categorías, todo protegido.
npm install @agentsid/sdk
Tres líneas de middleware en tu servidor MCP. Documentación completa en agentsid.dev/docs.
import { scanStdio, scanHttp, scanToolDefinitions } from "@agentsid/scanner";
// Escanea un servidor local
const report = await scanStdio("npx @some/server", { json: true });
// Escanea un servidor remoto
const report = await scanHttp("https://mcp.example.com", { json: true });
// Escanea definiciones de herramientas directamente (sin servidor necesario)
const report = scanToolDefinitions(myToolArray, { json: true });
¿Encontraste un patrón que no estamos detectando? Abre un issue o PR. El motor de reglas está en src/rules.mjs — agregar un nuevo patrón es una regex.
Todos los 15,982 servidores calificados y buscables: agentsid.dev/registry
MIT
| Gravedad | Deducción | Normalización | Tope |
|---|
| CRÍTICO | -25 cada uno | Absoluta — siempre aplica completa | Sin tope |
| ALTO | -15 cada uno | Absoluta — siempre aplica completa | -45 máx |
| MEDIO | -8 cada uno | Dividido por √(número de herramientas) | -25 máx |
| BAJO | -3 cada uno | Dividido por √(número de herramientas) | -15 máx |
| INFO | 0 | — | — |
| Calificación | Puntuación | Significado |
|---|
| A | 90-100 | Postura de seguridad excelente |
| B | 75-89 | Buena — problemas menores |
| C | 60-74 | Aceptable — necesita mejora |
| D | 40-59 | Pobre — riesgos significativos |
| F | 0-39 | Reprobado — vulnerabilidades críticas |
| Nivel de Riesgo | Patrones | Ejemplos de Herramientas |
|---|
| 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 |
| Medio | create, update, send, write | create_issue, send_email, write_file |
| Info | read, get, list, search, describe | get_status, list_users, search_docs |