
agent-scan v0.6.4-snapshot-6e2d290-1638
AIエージェント、MCPサーバー、エージェントスキル向けのセキュリティスキャナー。
Snyk Agent Scan
マシン上のエージェントコンポーネントを検出してスキャンし、プロンプトインジェクション
や脆弱性を検出します(エージェント、MCP サーバー、スキルを含む)。
注: Agent Scan の npm パッケージは公開していません。
uvxまたはスタンドアロンバイナリとしてインストールしてください。
注: CLI 出力は実験的であり、変更される可能性があります
Agent Scan v0.5.x(非推奨予定)
この CLI の生出力 — 問題コード、フィールド名、重大度ラベル、レスポンス構造を含む — は実験的であり、リリース間で予告なく変更される可能性があります。特定の CLI 出力フィールドや問題コードに依存する本番ワークフローの構築は推奨しません。
Agent Scan v0.6 以降
この CLI の生出力 — リスク指標名、スコア、フィールド名、レスポンス構造を含む — は実験的であり、リリース間で予告なく変更される可能性があります。特定の CLI 出力フィールドやリスク名に依存する本番ワークフローの構築は推奨しません。
Snyk を使用してエージェントのセキュリティリスクを大規模に管理しているエンタープライズのお客様の場合、CLI 出力は Evo プラットフォームに送信・表示される内容を反映していない可能性があります。エンタープライズ展開を支える基盤となる統合、検出、リスク評価は安定しておりサポートされています — 変更がある場合は標準的な Snyk 製品慣行に沿って通知されます。展開に関するガイダンスについてはアカウントチームにお問い合わせください。
NEW エージェントスキルエコシステムの新たな脅威に関するテクニカルレポートを公開しました。これは Agent Scan 0.4 と同時に公開され、エージェントスキルのスキャンサポートが追加されています。
Agent Scan v0.5.x の出力
[!WARNING] Agent Scan v0.5.x は問題コード出力を使用します。この CLI ラインは非推奨が予定されています。
Agent Scan v0.6 以降の出力
Agent Scan は、インストールされているすべてのエージェントコンポーネント(ハーネス、MCP サーバー、スキル)を検出し、プロンプトインジェクション、機密データの取り扱い、自然言語に隠されたマルウェアペイロードなどの一般的な脅威をスキャンするのに役立ちます。スキルの分析を無視するには --no-skills を使用します。
セキュリティ警告
⚠️ 重要: MCP 設定のスキャンはコマンドを実行したり、外部へのネットワークリクエストを行ったりする可能性があります。
ツールの説明を取得するために、Agent Scan は設定内のコマンドを実行して stdio MCP サーバーを起動し、設定されたヘッダーを使用して設定済みのリモート MCP サーバー URL に接続します。
推奨事項:
- 信頼できない、またはサードパーティの MCP 設定を評価する場合は、サンドボックス内でスキャンを実行する(Docker コンテナ、VM、または使い捨て環境)
- 対話型スキャン中は同意プロンプトを注意深く確認する。各サーバーのコマンドまたはリモート URL が表示されます
--dangerously-run-mcp-serversは、すべての MCP サーバーコマンドとリモート URL を検証済みの信頼できる環境でのみ使用するリモート MCP リクエストは、リンクローカルアドレスまたは既知のクラウドメタデータエンドポイント(
169.254.0.0/16、fe80::/10、fd00:ec2::254、および100.100.100.200)に解決される宛先を拒否します。ループバックおよびプライベートアドレスは、ローカルおよび内部 MCP サーバー用に引き続き許可されます。HTTP リダイレクトはフォローされません。DNS は各リクエストの前に検証されますが、接続時に再度解決されるため、DNS リバインディングのウィンドウが残ります。デフォルトでは、Agent Scan はフォアグラウンドの対話型実行中に、検出された各 MCP サーバーに接続する前に明示的なユーザーの同意(y/n)を要求します。バックグラウンドおよびプッシュキースキャンは、フリートカバレッジのためにリモートサーバーの検査を自動的に継続しますが、
--dangerously-run-mcp-serversが設定されていない限り stdio サーバーは起動しません。
クイックスタート
Agent Scan を実行するには、次の 2 つの方法のいずれかを選択します:
- 以下の手順に従って
uvxで Python パッケージを実行する。 - GitHub Releases からお使いのプラットフォーム用のスタンドアロンバイナリをダウンロードする。リリースには SBOM、チェックサム、署名済みチェックサム、ソースコードアーカイブも含まれます。
いずれかのオプションを使用する前に:
- Snyk にサインアップし、https://app.snyk.io/account から API トークンを取得します(API Token → KEY → クリックして表示)。
- スキャンを実行する前にトークンを環境変数として設定します:
export SNYK_TOKEN=your-api-token-here
uvx で実行
システムに uv がインストールされている必要があります。お使いの CLI バージョンに応じた手順を選択してください。
Agent Scan v0.5.x
以下の例では、具体的な v0.5.x リリースとして v0.5.17 を固定しています:
# 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 は issue-code 出力と
2025-09-02分析 API を使用しています。この CLI ラインは非推奨が予定されています。
Agent Scan v0.6 以降
# 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以降はリスクベースの出力と 2026-07-10 分析APIを使用します。
両バージョンともMCPサーバー、ツール、プロンプト、リソース、スキルをスキャンし、Claude Code/Desktop、Cursor、Gemini CLI、Windsurfなどのサポート対象エージェント設定を自動検出します。
スタンドアロンバイナリでの実行
最新のGitHub Releaseから、お使いのオペレーティングシステムとアーキテクチャ用のバイナリをダウンロードしてください。リリースページでは、SBOM(sbom-<version>.json)、チェックサムファイル、GitHubが生成したソースコードアーカイブも提供されています。ダウンロードの検証方法についてはスタンドアロンバイナリの検証を参照してください。
ハイライト
- MCP設定、エージェントツール、スキルの自動検出
- Claude、Cursor、GitHub Copilot、Windsurf、Gemini CLI、Amp、Amazon Q、その他のエージェントのスキャン。
Agent Scan v0.5.x
- MCPサーバーとエージェントスキル全体で15種類以上の異なるセキュリティリスクを検出:
Agent Scan v0.6以降
- MCPサーバーとエージェントスキル全体で14種類の異なるセキュリティリスクを検出:
- MCP: プロンプトインジェクション、信頼できないコンテンツ、プライベートデータ、破壊的な機能
- スキル: プロンプトインジェクション、疑わしいダウンロード、悪意のあるコード、認証情報の取り扱い、シークレット検出、その他
サポート対象エージェントと機能
Agent Scanは、エージェントのインストールパスが存在する場合、エージェントとその機能(MCPサーバーまたはスキル)を自動検出します。以下の表は、各エージェントがどのオペレーティングシステムでスキャンされるかを示しています。
- ✓: その機能に対して少なくとも1つのパスが定義されている。
- ✗: そのエージェントはそのOS向けにリストされているが、その機能のパスがない。
- —: そのエージェントはそのOSには含まれていない。
- スキル スキルは
--no-skillsを使用することで無視できます。