Snyk Agent Scan

Scan AI agent components (MCP servers, skills) for prompt injections and vulnerabilities

Source repo
snyk/agent-scan
Stars
★ 3.1k
Last updated
3d ago
License
Apache-2.0
Primary language
Python

At a glance

How it runs
CLI
Works with
Platform-specificChatGPT · Claude Code
Cost
Free, no paid service needed
Setup effort
Low · running in minutes
You'll need
Python 3.8+uvSnyk API tokenShell / CLINetwork accessLocal filesystem
Typical use
Security teams scanning MCP configs in CI/CD pipelines to prevent prompt injection
Not a fit if
  • Teams that need fully offline scanning: component data is sent to the Snyk API
  • Teams needing stable CLI output for production pipelines: output is experimental
  • Developers wanting to contribute code: the project is closed to external contributions
Source review
72/100 · Some gaps

What does this agent do, and when should you use it?

Snyk Agent Scan is a CLI tool that automatically discovers and scans locally installed AI agent components, including MCP servers and skills, for common security threats like prompt injection, tool poisoning, and malware payloads. It supports multiple agents (Claude Code, Cursor, Windsurf, etc.) across macOS, Linux, and Windows. The tool offers two modes: CLI scanning and background MDM mode for periodic scans reported to Snyk Evo. Requires a Snyk API token, with a security warning that scanning MCP configs executes defined commands. CLI output is experimental and may change.

Agent Scan auto-discovers agent configurations (e.g., Claude Code, Cursor, Windsurf, Gemini CLI), reads MCP config files (like mcp.json, .vscode/mcp.json), connects to stdio MCP servers to retrieve tool descriptions, and scans skill files (like SKILL.md). It runs local checks and invokes the Agent Scan API for validation, detecting 15+ risk types including prompt injection (E001), tool poisoning (E001), tool shadowing (E002), toxic flows, malware payloads (E006), etc. Output defaults to rich text, with --json option. Commands include scan, inspect, and help, with flags --no-skills, --dangerously-run-mcp-servers.

  1. Security teams scanning MCP configs in CI/CD pipelines to prevent prompt injection
  2. Developers quickly scanning ~/.claude/skills to find malicious payloads in skills
  3. macOS users scanning all agent components on the machine for a system-wide inventory
  4. Enterprises using background MDM mode to continuously monitor agent supply chain and report to Snyk Evo
  5. Security researchers evaluating third-party MCP configs in a sandbox to avoid executing malicious commands
  6. Analysts inspecting a specific MCP config file for tool poisoning and toxic flows

How do you install or deploy this agent?

  1. Sign up at Snyk and get an API token (https://app.snyk.io/account). 2. Install uv (https://docs.astral.sh/uv/getting-started/installation/). 3. Set environment variable SNYK_TOKEN. 4. Run uvx snyk-agent-scan@latest directly, or download a standalone binary from GitHub Releases.

How do you use this agent?

Run uvx snyk-agent-scan@latest to scan the entire machine. You can also specify paths: uvx snyk-agent-scan@latest ~/.vscode/mcp.json for a single config, uvx snyk-agent-scan@latest ~/my/SKILL.md for a single skill, uvx snyk-agent-scan@latest ~/.claude/skills for a directory. Interactive runs prompt before starting each MCP server; non-interactive environments require --dangerously-run-mcp-servers. Use --json for JSON output.

What are this agent's strengths and limitations?

Pros
  • Auto-discovers a wide range of agents (Claude Code, Cursor, Windsurf, etc.) and skills
  • Detects 15+ specific risks such as prompt injection, tool poisoning, and malware payloads
  • Cross-platform support for macOS, Linux, and Windows
  • Background MDM mode for centralized enterprise monitoring
  • Standalone binaries with signed checksums for integrity verification
Limitations
  • Requires a Snyk API token and relies on Snyk API for verification
  • Scanning MCP configs executes commands, posing security risks; sandboxing is recommended
  • CLI output is experimental and subject to change, not suitable for production dependencies
  • No external contributions accepted; only GitHub issues for feedback
  • Large-scale API usage may be considered abuse and result in account blocking

How does this agent compare with similar options?

This tool is offered by Snyk and is related to Invariant Labs' MCP-Scan, but no direct competitors are named in the documentation.

Key facts side by side with the most closely related agents.

Agent Source review Form / cost Stars Updated Language Full support on
Snyk Agent Scan This agent 72 · Some gaps CLIFree ★ 3.1k 3d ago Python ChatGPT · Claude Code
pigo 68 · Some gaps CLIFree + model costs ★ 481 1mo ago Go OpenAI API · Claude API
Genie 67 · Some gaps CLIFree + model costs ★ 345 today TypeScript Codex · Claude Code
zot Coding Agent 59 · Major gaps CLIFree + model costs ★ 350 today Go OpenAI API · Claude API

How does FollowAgents rate this agent?

FollowAgents source review · FARS-2.1
Some gaps
72/ 100 5-point scale 3.6 / 5
This review covers the source as of Aug 09, 2026. The project has shipped 6 stable release(s) since, which have not been re-reviewed. The score and verdict describe the reviewed version only. Recent releases ↓
Trust 19/29
Reliability 9/14
Adaptability 14/18
Convention 15/18
Effectiveness 10/13
Verifiability 5/8
Why each dimension lost points
Trust19 / 29 · 3.3/5

Evidence shows: default interactive scans require explicit user consent (y/n) for each stdio MCP server, showing command and arguments; provides --dangerously-run-mcp-servers flag but explicitly warns to use only in trusted environments; documentation states scanning executes commands in MCP configs and recommends sandboxing; data flow transparency: documentation states skills, agent applications, tool names, and descriptions are shared with Snyk, but claims no usage data is stored or logged; sensitive data handling: detects hardcoded secrets and credential handling issues, but does not explain how discovered sensitive data is handled; dependency security: pyproject.toml pins rich version and overrides several transitive dependencies for security fixes, but no evidence of dependency vulnerability scanning; external effects: scanning executes MCP server commands, potentially causing external effects, but controlled via user consent and warnings; rollback: no rollback or undo mechanism provided; source attribution: publisher unverified, but documentation provides GPG signature verification steps. Deductions: rollback mechanism absent, data flow transparency partial (no API call details), sensitive data handling partial (no post-scan data disposition).

Reliability9 / 14 · 3.2/5

Evidence shows: README and documentation are consistent; CLI parameters and commands clearly defined; dependencies listed in pyproject.toml, but no guarantee of dependency availability; failure messages: documentation mentions error handling (e.g., user_declined error), but no detailed failure message examples. Deductions: dependency availability unverified, failure message details insufficient.

Adaptability14 / 18 · 3.9/5

Evidence shows: clearly lists supported agents and OS matrix, and detection scope; capability boundaries: documentation states which agents and scopes are scanned and which are not; trigger precision: CLI parameters allow specifying config files, directories, or skills, and provide options like --no-skills; environment fit: supports multiple OS and Python versions, provides uvx and binary run methods. Deductions: capability boundaries not fully detailed for all agents, trigger precision not exhaustive.

Convention15 / 18 · 4.2/5

Evidence shows: clear information architecture with README, docs directory, CHANGELOG; detailed install notes including uvx and binary methods; naming stability: CLI output marked experimental and subject to change; examples and FAQ: multiple examples and demo provided; known limitations: documentation mentions specific limitations for some agents (e.g., Amp project-scope skills not scanned); license: Apache-2.0, LICENSE file present; versioning and changelog: CHANGELOG.md exists, version in pyproject.toml; maintenance responsibility: documentation states no external contributions accepted, but issues welcome. Deductions: naming stability deducted due to experimental output, maintenance responsibility lacks clear update path.

Effectiveness10 / 13 · 3.8/5

Evidence shows: output usability: provides JSON and rich text output, documentation explains JSON schema; marginal value: provides security scanning functionality, detects multiple risks, has technical report; cost-benefit: requires Snyk API token, may involve cost, but no pricing information provided. Deductions: cost-benefit lacks specific cost information, output usability lacks output examples.

Verifiability5 / 8 · 3.1/5

Evidence shows: claim traceability: README and documentation describe features in detail, but no specific test results; cross-source corroboration: provides technical report and blog links, but no independent verification; fact-inference separation: documentation distinguishes feature descriptions and warnings, but does not explicitly separate facts and inferences. Deductions: claim traceability lacks test evidence, cross-source corroboration lacks independent verification.

Risks and how to mitigate them
  • Scanning MCP configs executes commands defined in them, posing security risks; always run in a sandbox and review consent prompts carefully.
  • CLI output is experimental and subject to change; do not rely on specific fields.
  • Publisher identity is unverified; verify binary signatures and checksums before use.
Evidence confidence: Low Reviewed Aug 09, 2026 Reviewed revision ea959964ce47 New commits since this review; the score may not cover them
See the full review method →

Recent releases

Latest entries from the project's GitHub Releases. Notes are quoted from upstream as written, not rewritten or tested by FollowAgents.

  1. v0.6.9-snapshot-adf1ec0-1777 Agent Scan v0.6.9-snapshot-adf1ec0-1777 Pre-release
  2. v0.6.8 Agent Scan v0.6.8
  3. v0.6.7 Agent Scan v0.6.7

FAQ

Do I need a Snyk account?
Yes, you need to register and obtain an API token for verification calls.
Does scanning run MCP servers?
Yes, scanning MCP configs starts stdio MCP servers, so run in a sandbox and watch the consent prompt.
What format is the report?
By default, a rich text report; with --json you get JSON. Output is not stable across versions.
Which operating systems are supported?
macOS, Linux, and Windows, but support varies per agent; see the matrix in the README.
View on GitHub ↗ Install ↓

Compare agents like this one

The same FARS review applied across the shortlist this agent qualifies for.

Related agents