Volver a actualizaciones
Nuevo releaseSep 19, 2026

agent-scan v0.6.4-snapshot-6e2d290-1638

Escáner de seguridad para agentes de IA, servidores MCP y habilidades de agentes.

Compartir

Snyk Agent Scan

Descubre y escanea los componentes de agentes en tu máquina en busca de inyecciones de prompts
y vulnerabilidades (incluyendo agentes, servidores MCP, skills).

Nota: No publicamos un paquete npm para Agent Scan. Instálalo mediante uvx o como un binario independiente.

Nota: La salida de la CLI es experimental y está sujeta a cambios

Agent Scan v0.5.x (con deprecación planificada)

La salida sin procesar de esta CLI — incluyendo códigos de incidencia, nombres de campos, etiquetas de severidad y estructura de respuesta — es experimental y puede cambiar sin previo aviso entre versiones. No recomendamos crear flujos de trabajo de producción que dependan de campos de salida específicos de la CLI o códigos de incidencia.

Agent Scan v0.6 y posteriores

La salida sin procesar de esta CLI — incluyendo nombres de indicadores de riesgo, puntuaciones, nombres de campos y estructura de respuesta — es experimental y puede cambiar sin previo aviso entre versiones. No recomendamos crear flujos de trabajo de producción que dependan de campos de salida específicos de la CLI o nombres de riesgo.

Si eres un cliente empresarial que usa Snyk para gestionar el riesgo de seguridad de agentes a escala, la salida de la CLI puede no reflejar lo que se envía y se muestra en la plataforma Evo. La integración subyacente, el descubrimiento y la evaluación de riesgos que impulsan los despliegues empresariales son estables y cuentan con soporte — cualquier cambio se comunicará conforme a las prácticas estándar de productos de Snyk. Contacta con tu equipo de cuentas para obtener orientación sobre el despliegue.

NUEVO Lee nuestro informe técnico sobre las amenazas emergentes del ecosistema de skills de agentes publicado junto con Agent Scan 0.4, que añade soporte para escanear skills de agentes.

snyk-agent-scan snyk-agent-scan license snyk-agent-scan python version requirements

Salida de Agent Scan v0.5.x

[!WARNING] Agent Scan v0.5.x usa salida con códigos de incidencia. Esta línea de la CLI tiene deprecación planificada.

agent-scan-pretty

Salida de Agent Scan v0.6 y posteriores

Agent Scan v0.6 and later report showing scored MCP server and skill risks

Agent Scan te ayuda a descubrir todos los componentes de agentes instalados (harnesses, servidores MCP y skills) y los escanea en busca de amenazas comunes como inyecciones de prompts, manejo de datos sensibles o cargas maliciosas ocultas en lenguaje natural. Omite el análisis de skills usando --no-skills.

Advertencia de seguridad

⚠️ IMPORTANTE: Escanear configuraciones de MCP ejecutará los comandos definidos en ellas.

Cuando Agent Scan escanea un archivo de configuración de MCP, inicia los servidores MCP de stdio ejecutando los comandos y argumentos especificados en la configuración. Esto es necesario para recuperar las descripciones de las herramientas y realizar el análisis de seguridad.

Recomendaciones:

  • Ejecuta los escaneos dentro de un sandbox (contenedor Docker, VM o entorno desechable) al evaluar configuraciones de MCP no confiables o de terceros
  • Revisa cuidadosamente el aviso de consentimiento durante los escaneos interactivos, muestra el comando y los argumentos exactos que se ejecutarán para cada servidor
  • Usa --dangerously-run-mcp-servers solo en entornos de confianza donde hayas verificado todos los comandos de los servidores MCP

Por defecto, Agent Scan requiere el consentimiento explícito del usuario (s/n) antes de iniciar cada servidor MCP de stdio durante las ejecuciones interactivas. Esto te da control sobre lo que se ejecuta en tu sistema.

Inicio rápido

Elige una de las dos formas de ejecutar Agent Scan:

  1. Ejecuta el paquete de Python con uvx siguiendo las instrucciones a continuación.
  2. Descarga un binario independiente para tu plataforma desde GitHub Releases. Las versiones también incluyen el SBOM, sumas de verificación, sumas de verificación firmadas y archivos de código fuente.

Antes de usar cualquiera de las dos opciones:

  1. Regístrate en Snyk y obtén un token de API desde https://app.snyk.io/account (API Token → KEY → haz clic para mostrar).
  2. Establece el token como variable de entorno antes de ejecutar cualquier escaneo: ```bash export SNYK_TOKEN=your-api-token-here

Ejecutar con uvx

Ten uv instalado en tu sistema. Elige las instrucciones para tu versión de CLI.

Agent Scan v0.5.x

Los ejemplos fijan v0.5.17 como una versión concreta de v0.5.x:```bash

Scan the whole machine

uvx [email protected]

Scan a specific MCP configuration

uvx [email protected] ~/.vscode/mcp.json

Scan a single agent skill

uvx [email protected] ~/path/to/my/SKILL.md

Scan all Claude skills

uvx [email protected] ~/.claude/skills

> [!WARNING]
> v0.5.x utiliza salida de código de problema y la API de análisis `2025-09-02`. Esta línea de CLI está planificada para su deprecación.

#### Agent Scan v0.6 y posteriores```bash
# Scan the whole machine
uvx snyk-agent-scan@latest

# Scan a specific MCP configuration
uvx snyk-agent-scan@latest ~/.vscode/mcp.json

# Scan a single agent skill
uvx snyk-agent-scan@latest ~/path/to/my/SKILL.md

# Scan all Claude skills
uvx snyk-agent-scan@latest ~/.claude/skills

v0.6 y posteriores utilizan la salida basada en riesgos y la API de análisis 2026-07-10.

Ambas versiones escanean servidores MCP, herramientas, prompts, recursos y skills, y descubren automáticamente configuraciones de agentes compatibles como Claude Code/Desktop, Cursor, Gemini CLI y Windsurf.

Ejecutar con un binario independiente

Descarga el binario para tu sistema operativo y arquitectura desde la última versión de GitHub. La página de la versión también proporciona un SBOM (sbom-<version>.json), archivos de checksum y archivos de código fuente generados por GitHub. Consulta Verificación de binarios independientes para verificar tu descarga.

Aspectos destacados

  • Descubrimiento automático de configuraciones MCP, herramientas de agentes, skills
  • Escaneo de Claude, Cursor, GitHub Copilot, Windsurf, Gemini CLI, Amp, Amazon Q y otros agentes.

Agent Scan v0.5.x

Agent Scan v0.6 y posteriores

Agentes y capacidades compatibles

Agent Scan descubre automáticamente los agentes y sus capacidades (servidores MCP o skills) cuando existen sus rutas de instalación. La siguiente tabla muestra en qué sistemas operativos se escanea cada agente.

  • : al menos una ruta está definida para esa capacidad.
  • : el agente está listado para ese SO pero no tiene rutas para esa capacidad.
  • : ese agente no está incluido para ese SO.
  • Skills Las skills se pueden ignorar usando --no-skills
AgentmacOS MCPmacOS SkillsLinux MCPLinux SkillsWindows MCPWindows Skills
Windsurf
Cursor
VS Code
GitHub Copilot
Claude Desktop
Claude Code
Gemini CLI
OpenClaw
Amp
Kiro
OpenCode
Antigravity
Codex
Amazon Q✓ (WSL)

Cobertura de detección por ámbito

La matriz anterior muestra en qué sistemas operativos se escanea cada agente. Esta desglosa la detección por ámbito de configuración y tipo de componente (skills vs servidores MCP), combinados entre sistemas operativos. "Servers" significa servidores MCP.

Los cuatro ámbitos:

  • System — configuración de toda la máquina / gestionada por el administrador / empresarial que se aplica a todos los usuarios (p. ej. managed-mcp.json, archivos bajo /etc, /Library/Application Support o ProgramData).
  • User — la configuración del directorio home del usuario (se aplica a todos sus proyectos).
  • Project / workspace — configuración limitada a un proyecto o workspace abierto.
  • Extension / plugin — componentes incluidos dentro de extensiones o plugins instalados.

Leyenda: detectado · el agente lo soporta pero Agent Scan aún no lo escanea · N/A el agente no tiene dicho componente en este ámbito.

AgentSystem
skills
System
servers
User
skills
User
servers
Project / WS
skills
Project / WS
servers
Ext / plugin
skills
Ext / plugin
servers
WindsurfN/A
CursorN/AN/A
VS CodeN/AN/A
GitHub Copilot §N/AN/A
Claude DesktopN/AN/AN/AN/AN/A
Claude Code
Gemini CLIN/A
OpenClawN/AN/A✓ †N/A
AmpN/A✗ ‡
KiroN/AN/A
OpenCodeN/AN/A
AntigravityN/AN/A
Codex
Amazon QN/AN/AN/AN/AN/AN/A

† OpenClaw no tiene enumeración de proyectos abiertos: sus skills de proyecto/workspace solo se encuentran en la ruta fija ~/.openclaw/workspace/skills

‡ Amp almacena las skills de proyecto/workspace en .agents/skills (y la ruta de compatibilidad .claude/skills); hoy solo se detecta el ámbito de usuario ~/.config/agents/skills, por lo que las skills de ámbito de proyecto están soportadas pero aún no se escanean.

§ GitHub Copilot cubre la CLI y la aplicación de escritorio, que comparten el home ~/.copilot con Copilot en VS Code, y se detecta desde ese home en lugar de desde una instalación de VS Code. Las reubicaciones de COPILOT_HOME se respetan al escanear tu propio home. El ámbito de proyecto cubre los archivos .mcp.json / .github/mcp.json relativos al repositorio y los directorios .github/skills, .claude/skills y .agents/skills, para las carpetas pasadas al escaneo y los directorios que Copilot ha registrado en permissions-config.json, más sus ancestros. El ámbito de plugin cubre ~/.copilot/installed-plugins, incluidos los manifiestos plugin.json que reubican su configuración MCP o declaran raíces de skills adicionales. No se escanean: las raíces de proyecto por sesión en session-state/*/workspace.yaml. Las rutas de nivel de usuario de Copilot también se listan bajo VS Code, que lee los mismos archivos.

Verificación de binarios independientes

Usamos firma GPG en el archivo de checksums de la versión para garantizar la integridad y autenticidad de la distribución.

Guía de verificación paso a paso

  1. Descarga los recursos de la versión: Descarga el binario para tu plataforma (p. ej., agent-scan-<version>-<os>-<arch>) y el archivo de checksums firmado (sha256sums.txt.asc) desde la página de GitHub Releases en el mismo directorio.

  2. Verifica la firma GPG del archivo de checksums: Descarga la clave pública GPG en el mismo directorio, luego ejecuta: ```bash gpg --import snyk-code-signing-public.pgp gpg --verify sha256sums.txt.asc

Busca una línea en la salida que diga gpg: Good signature from "Snyk Limited <[email protected]>".

  1. Verificar la integridad del binario: Después de confirmar que la firma es válida, comprueba que el binario descargado coincide con la suma de verificación:
    • En Linux (o macOS con coreutils):
      grep agent-scan-<version>-<os>-<arch> sha256sums.txt.asc | sha256sum -c -
      
    • En macOS (usando shasum por defecto):
      grep agent-scan-<version>-<os>-<arch> sha256sums.txt.asc | shasum -a 256 -c -
      
    Esto mostrará agent-scan-<version>-<os>-<arch>: OK.

Capacidades del escáner

Agent Scan v0.5.x

Agent Scan es una herramienta de escaneo de seguridad que permite tanto escanear como inspeccionar la cadena de suministro de los componentes de agentes en tu máquina. Escanea en busca de vulnerabilidades de seguridad comunes como inyecciones de prompts, envenenamiento de herramientas, flujos tóxicos o vulnerabilidades en las habilidades de los agentes.

Agent Scan v0.6 y posteriores

Agent Scan informa de indicadores de riesgo puntuados para amenazas como la inyección de prompts, la exposición a datos no confiables o privados, capacidades destructivas y habilidades de agentes maliciosas.

Agent Scan opera en dos modos principales que pueden usarse conjuntamente o por separado:

  1. Modo de escaneo: El comando CLI snyk-agent-scan escanea la máquina actual en busca de agentes y componentes de agentes como habilidades y servidores MCP. Al finalizar, mostrará un informe completo para que el usuario lo revise.

  2. Modo en segundo plano (MDM). Agent Scan escanea la máquina a intervalos regulares en segundo plano y reporta los resultados a una instancia de Snyk Evo. Esto puede ser utilizado por los equipos de seguridad para monitorear la cadena de suministro de agentes de toda la empresa en una ubicación central. Para configurar esto, por favor contáctanos.

Cómo funciona

Escaneo

Agent Scan busca a través de los archivos de configuración de tu agente local para encontrar agentes, habilidades y servidores MCP. Para MCP, se conecta a los servidores y recupera las descripciones de las herramientas.

Consentimiento interactivo para servidores MCP

⚠️ Nota de seguridad: Escanear una configuración MCP ejecuta los comandos definidos en ella. Revisa siempre lo que se va a ejecutar antes de aprobar.

Por defecto, Agent Scan solicita el consentimiento del usuario antes de iniciar cada servidor MCP stdio durante las ejecuciones interactivas. Este flujo de consentimiento:

  • Muestra el nombre del servidor, el comando y las variables de entorno (redactadas) que se ejecutarán
  • Te permite aprobar o rechazar cada servidor individualmente
  • Evita que servidores potencialmente no confiables se ejecuten sin tu permiso explícito
  • Registra los servidores rechazados con un error user_declined (nunca se inician)

Buenas prácticas:

  • Revisa el comando y los argumentos cuidadosamente antes de aprobar
  • Al escanear configuraciones MCP no confiables o de terceros, ejecuta Agent Scan dentro de un sandbox (Docker, VM o entorno desechable)
  • Rechaza cualquier servidor con comandos desconocidos o sospechosos

Para entornos no interactivos (por ejemplo, pipelines de CI/CD), debes usar el flag --dangerously-run-mcp-servers para omitir el aviso de consentimiento e iniciar todos los servidores automáticamente. Usa este flag solo en entornos confiables donde se hayan verificado todos los comandos de los servidores MCP.

Análisis y validación

Agent Scan valida los componentes descubiertos con comprobaciones locales y la API de Agent Scan. Envía la información del componente necesaria para el análisis, incluidos los detalles de la aplicación del agente, las configuraciones y firmas de los servidores MCP, los nombres y descripciones de las herramientas y el contenido de las habilidades. Los secretos en los valores de configuración y el texto se redactan antes de la transmisión.

Al usar Agent Scan, aceptas los términos de uso de Snyk para Agent Scan.

Agent Scan no almacena ni registra ningún dato de uso, es decir, el contenido y los resultados de tus llamadas a herramientas MCP.

Parámetros de la CLI

La referencia completa de flags está en docs/cli-reference.md. La mayoría de los comandos y flags son compartidos entre v0.5.x y v0.6 y posteriores.

Comandos compartidos```text

snyk-agent-scan scan [CONFIG_FILE...] Scan MCP servers and skills (default) snyk-agent-scan inspect [CONFIG_FILE...] Inspect components without analysis snyk-agent-scan help Display help

### Opciones compartidas por ambas líneas de versión

Estas opciones existen tanto en v0.5.x como en v0.6 y posteriores. Su aplicabilidad de comandos se detalla en la referencia completa de la CLI.```text
--storage-file FILE               Path to store scan state (default: ~/.mcp-scan)
--analysis-url URL                Analysis endpoint; the default API version depends on the CLI version
--verification-H HEADER           Additional analysis request header (repeatable)
--mcp-oauth-tokens-path PATH      OAuth tokens for protected remote MCP servers
--verbose                         Enable detailed logging
--print-errors                    Show error details and tracebacks
--print-full-descriptions         Show full entity descriptions without truncation
--json                            Emit JSON; the response schema depends on the CLI version
--skip-ssl-verify                 Disable TLS certificate verification
--skills / --no-skills            Include skills (default) or skip them
--scan-all-users                  Scan all readable user home directories
--show-analysis-results           Force synchronous analysis so results display for push-key scans
--ci                              Exit non-zero when findings or operational failures remain
--server-timeout SECONDS          MCP connection timeout (default: 10)
--suppress-mcpserver-io BOOL      Suppress stdio MCP server stderr
--dangerously-run-mcp-servers     Skip consent and start configured stdio MCP servers
--control-server URL              Upload destination (repeatable)
--control-server-H HEADER         Header for the current control-server block
--control-identifier ID           Identifier for the current control-server block
--no-bootstrap                    Accepted compatibility no-op; does not change behavior
--checks-per-server NUM           Accepted compatibility no-op; does not change behavior

Agent Scan v0.5.x

[!WARNING] La versión v0.5.x está planificada para su descontinuación. Los ejemplos fijan la v0.5.17 como una versión concreta de la v0.5.x.```text --analysis-url URL Defaults to the 2025-09-02 analysis API --ignore-issues-codes CODES Comma-separated E/W security finding codes and X failure codes to ignore in CI

v0.5.x emite hallazgos de códigos de problema y JSON de `ScanPathResult` con clave de ruta. Consulte la [referencia de CLI de v0.5.x](https://github.com/snyk/agent-scan/blob/main/docs/cli-reference.md#agent-scan-v05x) y la [referencia de códigos de problema](https://github.com/snyk/agent-scan/blob/main/docs/issue-codes.md).

### Agent Scan v0.6 y posteriores```text
--analysis-url URL                Defaults to the 2026-07-10 analysis API
--ignore-risks NAMES              Comma-separated risk names to omit from output and CI evaluation
--ignore-failure-codes CODES      Comma-separated X codes to omit from CI evaluation
--show-full-discovery             List every MCP entity and skill file instead of compact scan summaries

v0.6 y posteriores emiten indicadores de riesgo puntuados y JSON de scan_path_responses. La salida de escaneo legible por humanos es compacta por defecto; --show-full-discovery la expande sin cambiar el JSON ni la salida de inspect. Consulte la referencia de CLI de v0.6 y posteriores, la referencia de riesgos y la referencia de códigos de fallo.

Ejemplos```bash

Scan all known MCP configs and agent skills

snyk-agent-scan

Scan a specific config file or skill

snyk-agent-scan ~/custom/config.json snyk-agent-scan ~/path/to/my/SKILL.md

Inspect without security analysis

snyk-agent-scan inspect

CI mode

snyk-agent-scan --ci --dangerously-run-mcp-servers

## Demo

Este repositorio incluye un servidor MCP vulnerable que demuestra los hallazgos de seguridad del Protocolo de Contexto de Modelo que Agent Scan reporta.

¿Cómo demostrar los hallazgos de seguridad de MCP?

1. Clona este repositorio
2. Crea un archivo de configuración `mcp.json` en el directorio raíz del repositorio git clonado con el siguiente contenido:```jsonc
{
  "mcpServers": {
    "Demo MCP Server": {
      "type": "stdio",
      "command": "uv",
      "args": ["run", "mcp", "run", "demoserver/server.py"],
    },
  },
}
  1. Ejecuta la versión adecuada:

    • Agent Scan v0.5.x (salida de código de problema): uvx --python 3.13 [email protected] scan mcp.json
    • Agent Scan v0.6 y posteriores (salida basada en riesgo): uvx --python 3.13 snyk-agent-scan@latest scan mcp.json

Nota: si colocas el archivo de configuración mcp.json en otra ubicación, ajusta la ruta de args dentro de la configuración del servidor MCP para reflejar la ruta al servidor MCP (demoserver/server.py), así como el comando uvx que ejecuta Agent Scan con la ruta correcta a mcp.json.

Agent Scan está cerrado a contribuciones

Agent Scan no acepta contribuciones externas en este momento.

Agradecemos sugerencias, informes de errores o solicitudes de funciones como issues de GitHub.

Configuración de desarrollo

Para ejecutar Agent Scan desde el código fuente, sigue estos pasos:```bash uv run pip install -e . uv run -m src.agent_scan.cli

## Incluir los resultados de Agent Scan en tu propio proyecto / registro

Si deseas incluir los resultados de Agent Scan en tu propio proyecto o registro, por favor [contáctanos](https://evo.ai.snyk.io/#contact-us). Existen APIs designadas para este propósito. El uso de la API estándar de Agent Scan para escaneos a gran escala se considera abuso y resultará en el bloqueo de tu cuenta.

## Documentación

- [Índice de documentación](https://github.com/snyk/agent-scan/blob/main/docs/README.md) — Documentación versionada para ambas líneas de CLI.
- [Referencia de CLI](https://github.com/snyk/agent-scan/blob/main/docs/cli-reference.md) — Comandos, flags, opciones y variables de entorno de v0.5.x y v0.6-and-later.
- [Escaneo](https://github.com/snyk/agent-scan/blob/main/docs/scanning.md) — Comportamiento y ejemplos de escaneo de v0.5.x y v0.6-and-later.
- [Salida JSON](https://github.com/snyk/agent-scan/blob/main/docs/json-output.md) — La salida con claves de ruta de v0.5.x y el esquema de respuesta de v0.6.
- [Códigos de problema](https://github.com/snyk/agent-scan/blob/main/docs/issue-codes.md) — Referencia de hallazgos de seguridad `E*` y `W*` de v0.5.x.
- [Referencia de riesgos](https://github.com/snyk/agent-scan/blob/main/docs/risks.md) — Indicadores de riesgo de seguridad, puntuaciones y campos de evidencia de v0.6.
- [Códigos de fallo](https://github.com/snyk/agent-scan/blob/main/docs/failure-codes.md) — Fallos operativos de descubrimiento, inspección y análisis de v0.6.

## Lecturas adicionales

- [Introducing MCP-Scan](https://invariantlabs.ai/blog/introducing-mcp-scan)
- [MCP Security Notification Tool Poisoning Attacks](https://invariantlabs.ai/blog/mcp-security-notification-tool-poisoning-attacks)
- [WhatsApp MCP Exploited](https://invariantlabs.ai/blog/whatsapp-mcp-exploited)
- [MCP Prompt Injection](https://simonwillison.net/2025/Apr/9/mcp-prompt-injection/)
- [Toxic Flow Analysis](https://invariantlabs.ai/blog/toxic-flow-analysis)
- [Skills Report](https://github.com/snyk/agent-scan/blob/main/.github/reports/skills-report.pdf)

## Registro de cambios

Consulta [CHANGELOG.md](https://github.com/snyk/agent-scan/blob/main/CHANGELOG.md).

Categorías