In this article
脆弱性を早期に検出:Snyk MCPチートシート

Snyk MCP ServerはSnyk Studioの強力なツールで、AIワークフローにセキュリティスキャンを統合します。AIモデルは、脆弱性や古いライブラリ、安全でない手法を含むコードを生成することがよくあります。こうした問題を放置すると、アプリケーションに混入してセキュリティリスクを高めたり、開発者が修正に時間を費やしたりすることになります。Snykは、AI支援プロセスにセキュリティを組み込むことで、こうした事態を防ぎます。
MCPは、AIツールがSnykなどのプラットフォームと通信し、コンテキストやアクションを利用できるようにするオープンスタンダードです。Snyk CLIに含まれるSnyk MCP Serverを使うと、AIエージェントからSnykのスキャン機能に直接アクセスできます。この仕組みにより、AIアシスタントが自律的にセキュリティスキャンを実行し、コードの生成や提案と同時に脆弱性を特定できます。AI開発の早い段階でセキュリティチェックを取り入れることで、問題が深刻化する前に検出できます。また、Snyk MCP Serverは脆弱性を大規模に修正するセキュリティワークフローにも対応しています。
SnykのMCPサポートは、既存のSnyk IDEプラグインとシームレスに連携します。IDEプラグインがコーディング中の開発者にリアルタイムでフィードバックを提供する一方、MCP ServerはAI生成コードまでセキュリティカバレッジを拡大します。この強力な組み合わせにより、手書きのコードとAI生成コードの両方を徹底的に検査し、AI主導の開発を安全に進める基盤を実現します。
MCP Serverは継続的に改善しており、1つのチートシートでは到底紹介しきれないほど多くの機能を備えています。MCP Serverの詳細については、Snyk MCP Serverのドキュメントをご覧ください。
インストール
Snyk MCP ServerはSnyk CLIに含まれています。使用するには、インストールページの手順に従って、Snyk CLI v1.1298.0以降をダウンロードしてインストールしてください。追加の依存関係は必要ありません。Snykでは、常に最新バージョンのCLIを使用することを推奨しています。
Snyk CLIをインストールしたら、次のコマンドでMCP Serverを起動できます。snyk mcp -t <transport type>
コーディングアシスタントのAIツールでMCP Serverを設定するには、MCP Serverの詳細をJSON設定に追加します。
以下のコマンドでは、Snyk CLIのフルパスを指定することをおすすめします。
"servers": {
"SnykMCP": {
"command": "snyk",
"args": ["mcp", "-t", "stdio"]
}
}また、システムにnpm(Node Package Manager)がインストールされている場合は、npx(Node Package eXecute)を使ってSnyk MCP Serverを実行することもできます。
"servers": {
"SnykMCP": {
"command": "npx",
"args": ["-y", "snyk@lastest",
"mcp", "-t", "stdio"]
}
}Snyk MCP Serverは、ローカルファイルへのアクセスを確保するため、Snyk CLIを使ってシステム上で実行するローカルMCP Serverとして設計されています。そのため、Snykはホスト型のリモート版MCP Serverを提供していません。
トランスポートの種類
Snyk MCPは、stdioとSSEの2種類のトランスポートに対応しています。1つ目のstdio(標準入出力)は、プロセスの標準入力ストリームと標準出力ストリームを利用し、MCP Serverとホストがローカルで通信するための高速かつ軽量で直接的な方法です。SSE(Server-Sent Events)はローカルHTTPイベントストリームを使用します。通常はリモートまたはネットワーク通信向けに設計されていますが、ここでは同じマシン上で動作します。主な違いは、stdioがローカル通信でよりシンプルかつ効率的なのに対し、SSEはHTTPレイヤーを利用する点です。Snyk MCPはローカル利用を想定しているため、推奨するトランスポートモードはstdioです。
stdioの場合:$ snyk mcp -t stdio
sseの場合: $ snyk mcp -t sse
セットアップ
Snyk MCPを使用する前に、Snykアカウントにログインして認証する必要があります。アカウントをお持ちでない場合は、こちらから無料アカウントを作成できます。認証が完了すると、コーディングアシスタントまたはエージェントでSnyk MCPの機能を利用できます。
すでにSnyk CLIで認証済みの場合は、その認証をそのまま利用できます。未認証の場合、Snyk MCP Serverは/snyk_auth関数を自動的に呼び出し、ブラウザーウィンドウを開いてアカウントにログインできるようにします。
多くのコーディングアシスタントでは、次のように呼び出してSnyk MCPの認証関数を手動で実行することもできます。
/snyk_auth
プロンプト
コードをスキャンして安全にデプロイできることを確認するには、次のプロンプトを使用できます。
Scan this project for code security & dependency vulnerabilities and security issues
コーディングアシスタントまたはエージェントで動作しているモデルによっては、Snyk MCPを自動的に認識し、指定されたコードベースに応じたスキャンを開始します。主にSnyk CodeによるSASTスキャン、Snyk Open SourceによるSCA依存関係分析、場合によってはSnyk Containerによるスキャンが実行されます。
ただし、アシスタントによってはSnyk MCPを使わず、独自の学習データでコードを分析しようとする場合があります。これを防ぐため、プロンプトに「with Snyk」と明記することをおすすめします。
Scan this project for code security & dependency vulnerabilities and security issues with Snyk
ルール
一部のコーディングアシスタントでは、全体またはプロジェクトごとにルールや追加指示を設定できます。たとえば、Claude Code、Amazon Q、Github Copilot、Cursorではこの機能を利用できます。コードが生成されるたびにSnyk MCPスキャナーを使用するよう、エージェント型システムにルールを追加することをおすすめします。
ルールの例を以下に示します。
- Always run Snyk Code scanning tool for new first-party code generated.
- Always run the Snyk SCA scanning tool for new dependencies or dependency updates.
- If any security issues are found based on newly introduced or modified code or dependencies, attempt to fix the issues using the results context from Snyk.
- Rescan the code after fixing the issues to ensure that the issues were fixed and that there are no newly introduced issues.
- Repeat this process until no issues are found.
Please note that all systems describe the rules slightly differently. Check our quick guides and your system's documentation for more detailed information.
機能
Snyk MCP ServerはSnyk CLIを活用し、AIエージェントにさまざまな機能を提供します。すべての機能の概要については、Snyk Studioのドキュメントをご覧ください。MCPの最新機能を確認できます。
主要なセキュリティスキャン機能として、オープンソース依存関係の脆弱性を検出するsnyk_sca_scanと、独自コードのセキュリティ上の欠陥を評価するsnyk_code_scanがあります。インフラストラクチャとコンテナの保護には、Infrastructure as Codeの構成を検査するsnyk_iac_scanと、コンテナイメージの脆弱性を特定するsnyk_container_scanを使用します。
MCPは、既存のソフトウェア部品表(SBOM)ファイルを分析するsnyk_sbom_scanや、AI部品表を作成するsnyk_aibomなど、ソフトウェアサプライチェーン管理ツールも提供します。snyk_versionなどのユーティリティ関数でバージョン情報を表示でき、snyk_logoutでセッションを終了できます。
snyk_trust(スキャン前にフォルダーを信頼する)やsnyk_auth(ログインする)などの関数は手動でも実行できますが、通常は必要に応じて自動的に動作します。ただし、ブラウザーが開いてユーザーの入力を求められる場合があります。
また、snyk_sca_scanを実行する際、プロジェクトの依存関係ツリーを正確に取得するために、GradleやMavenなどのサードパーティーツールをマシン上で直接使用する必要がある場合がある点にも注意してください。
トラブルシューティング
Snyk MCPをスムーズに利用し、よくある問題をすばやく解決するために、確認すべき主な項目と設定を紹介します。
最新のSnyk CLIバージョンを使用する: MCP連携は活発に開発されています。Snyk CLIの最新バージョンを使用していることを確認してください。互換性の要件はv1.1298.0以降です。
基本的なリポジトリスキャン(重要な診断手順): MCPの問題と判断する前に、ターミナルから直接Snyk CLIでプロジェクトをスキャンできることを確認してください。直接スキャンが失敗する場合(例:
/path/to/your/snykClitest)、まず認証または設定の根本的な問題を解決してください。APIトークンで認証する:環境の制約によりブラウザーベースのログインに失敗する場合は、APIトークンを環境変数として設定して認証します。
SNYK_TOKEN=<TOKEN>組織IDを指定する:複数の組織に所属するSnykアカウントを使用している場合は、スキャン結果が正しい場所に表示されるよう、対象の組織IDを明示的に設定してください。
SNYK_CFG_ORG=<YOUR_ORG_ID>デバッグログを有効にする:問題の診断に必要な詳細な出力を得るには、デバッグフラグ(
-dまたは--debug)を付けてMCP Serverを実行します。$ snyk mcp -t stdio -dフォルダーの信頼を無効にする:自動フォルダー信頼機能(
snyk_trust)がヘッドレスまたは非対話型のワークフローに影響する場合は、次のフラグを使って無効にします。$ snyk mcp -t stdio --disable-trust環境変数の引き継ぎを確認する:
SNYK_TOKEN、SNYK_CFG_ORG、プロキシ設定など、必要なすべての環境変数がSnyk MCP Serverのプロセスに正しく引き継がれていることを確認してください。MCPの応答を一時ファイルに書き込む:応答が大きいと問題が発生するクライアントもあります。その場合、MCP Serverは応答を一時ファイルに保存し、LLMに
-oフラグを使って読み込ませることができます。例:$ snyk mcp -t stdio -o=ostemp or $ snyk mcp -t stdio -o=/path/to/absolute/folder。
SSEトランスポートの高度な設定やCLIパスの権限など、詳しい情報については、公式ガイドSnyk MCP Serverのトラブルシューティングをご覧ください。
クイックスタートガイド
SnykのMCPインテグレーションをすぐに使い始められるよう、現在広く利用されているAIコーディングアシスタントやエージェント型開発ツールを対象とした、実践的なクイックスタートガイドを用意しています。各ガイドでは、アシスタントをSnyk Developer Guardrailsに接続する方法を説明し、チームが選ぶツールにかかわらず、安全なワークフローを適用できるようにします。
次のような多くのツール向けにクイックスタートガイドを用意しています。
Amazon Q
Claude Code
Cursor
Gemini Code Assist
GitHub Copilot
JetBrains AI Assistant
Qodo
Windsurf
その他多数…
各ガイドでは、MCPインテグレーションの設定方法、接続の検証方法、セキュリティを考慮した結果をすぐに受け取る方法を説明しています。ガイドの全リストはSnyk Studioのドキュメントをご覧ください。
AI主導のパイプライン全体で一貫したセキュリティコントロールをオーケストレーションし、この戦略的フレームワークでAppSecプログラムを成熟させる方法をお探しですか?今すぐチートシートをダウンロードしましょう。
チートシート
Snykで実現するオーケストレーション、ガバナンス、レポート:AI時代のAppSec成熟化
この戦略的フレームワークで、AI主導のパイプライン全体に一貫したセキュリティ制御を適用し、AppSecプログラムを成熟させる方法をご紹介します。