Snyk API & Web MCP Server について
Snyk API & Web MCP Server は、AI コーディングツールを Snyk API & Web に接続し、スキャン対象の設定、DAST スキャン、検出結果のトリアージを行います。MCP クライアントで API と Web のセキュリティテストを管理するチーム向けで、ログインフローを伴う Web 対象の設定にも対応します。
主な機能
- 01API と Web のスキャン対象設定
- 02DAST スキャンの実行
- 03スキャン検出結果の管理
- 04Web ログインフローの設定
活用シーン
- 01OpenAPI や Postman の定義から API 対象を作成
- 02認証が必要な Web アプリのスキャン設定
- 03スキャン検出結果のトリアージ
MCP 対応
この MCP サーバーは、互換クライアントに Snyk API & Web の対象設定、スキャン、検出結果管理を提供します。Web ログインの記録には playwright-cli または Playwright MCP によるブラウザー自動化が必要です。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
51掲載時のツール一覧 · 2 週間前に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| data | any | いいえ | |
| json | any | いいえ | |
| path | string | はい | |
| method | string | はい | |
| params | any | いいえ |
詳細

Snyk API & Web MCP サーバー
AI コーディングアシスタントを Snyk API & Web に接続すると、自然言語を使ってスキャン対象の登録、認証の設定、DAST スキャンの実行、検出結果のトリアージを行えます。
FastMCP 2.0 を基盤としており、Cursor、Claude Code、Devin、および MCP 互換のあらゆるクライアントで動作します。
名称に関する注意: Snyk API & Web は、以前は Probely という名称でした。API エンドポイント(
api.probely.com)、Web コンソール(plus.probely.app)、MCP ツール名(probely_*)では、引き続き従来のドメインとプレフィックスを使用しています。環境変数と設定セクションには、新しいSAW/sawの名称を使用しています。
使い方、例、ツールのリファレンスについては、USER_GUIDE.md をご覧ください。
このリポジトリでは、一般からのコントリビューションを受け付けていません。 コミュニティからの関心に感謝いたしますが、現時点では、外部のコントリビューターからのプルリクエスト、イシュー、その他のコントリビューションは受け付けていません。セキュリティ上の問題を見つけた場合は、SECURITY.md をご覧ください。
必要条件
- Python 3.10+
- Node.js 18+ および npm(
playwright-cliによる Web 対象のログイン記録に必要。代わりに Playwright MCP を使う場合は不要) - Snyk API & Web API キー
クイックスタート
1. API キーを取得する
https://plus.probely.app/api-keys にアクセスして、API キーを作成します。
重要
Snyk API & Web MCP サーバーには、カスタムロールでスコープを制限した API キーを使用してください。 キーには、予定している操作に必要な権限のみを設定してください。 アカウント全体やそのリソースに影響する可能性があるため、特権の強い API キーやグローバル API キーは使用しないでください。
2. インストールする
Cursor Marketplace(Cursor ユーザーにおすすめ)
Cursor Marketplace から直接インストールします。
- Snyk API & Web プラグインのページを開いて Install をクリックするか、Settings → Plugins に移動して Snyk API & Web を検索します
- Cursor の起動前に、環境変数として API キーを設定します。
export MCP_SAW_API_KEY="your-api-key"
プラグインによって MCP サーバー、ルール、スキルが自動的にインストールされます。
Devin MCP Marketplace(Devin ユーザー)
Devin の MCP Marketplace から直接インストールします。
- Devin を開き、Settings → Configuration に移動します。
- MCP servers の下にある Open MCP Marketplace をクリックします。
- Snyk API & Web を検索し、Install をクリックします。
- プロンプトが表示されたら、API キーを入力します。
手動での設定は不要です。Devin がセットアップを自動的に行います。
ワンコマンドインストール(任意の MCP クライアント)
uvx --from git+https://github.com/snyk/saw-mcp.git saw-mcp
または、MCP クライアントの設定に追加します。
{
"mcpServers": {
"SAW": {
"command": "uvx",
"args": ["--from", "git+https://github.com/snyk/saw-mcp.git", "saw-mcp"],
"env": {
"MCP_SAW_API_KEY": "your-api-key"
}
}
}
}
別のインストール方法
リリース tarball からインストール
tar -xzvf SnykAPIWeb-<version>.tgz
cd SnykAPIWeb
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
pip install -r requirements.txt
Releases からダウンロードし、<version> を実際のバージョン番号(例:1.0.0)に置き換えてください。
ソースからクローン
git clone https://github.com/snyk/saw-mcp.git
cd saw-mcp
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
pip install -r requirements.txt
3. API キーを保存する
サーバーは、優先順位の高い順に、環境変数 MCP_SAW_API_KEY → .env ファイル → config/config.yaml から API キーを読み込みます。
オプション A:環境変数(Marketplace/uvx によるインストールにおすすめ)
export MCP_SAW_API_KEY="your-api-key"
オプション B:.env ファイル(ソースからのインストールにおすすめ)
セットアップスクリプトを実行します(安全に入力できます。シェルの履歴にキーは残りません)。
./scripts/setup-env.sh
または、シークレットマネージャーからパイプで渡します。op read 'op://vault/item/key' | ./scripts/setup-env.sh
プロジェクトのルートに .env ファイルが作成されます(gitignore 対象)。サーバーは起動時にこのファイルを自動的に読み込みます。
オプション C:シークレット参照(キーをどこにも平文で保存しない方法)
MCP_SAW_API_KEY と設定の api_key フィールドでは、実行時に解決される参照も使用できます。これにより、キーそのものをファイルに保存する必要がありません。
export MCP_SAW_API_KEY="op://vault/saw-mcp/api-key" # resolved via the 1Password CLI (`op`)
export MCP_SAW_API_KEY="env:MY_SAW_KEY" # read from another environment variable
平文のキーをコミットしないでください。
config/config.yamlは gitignore 対象です。また、このファイルから読み込まれた平文のキーについては、起動時に警告がログに記録されます。
4. ブラウザー自動化をインストールする(ログインが必要な Web ターゲット)
Web ターゲットのオンボーディングでは、実際のブラウザーでログインシーケンスを記録します。コーディングエージェントにはこちらを推奨します: Shell 経由の playwright-cli:
npm install -g @playwright/cli@latest
playwright-cli install-browser chromium
または、リポジトリをクローンして ./scripts/setup-playwright.sh を実行します。
代替方法: 2 つ目の MCP サーバーとして Playwright MCP をインストールします(Shell を使えない MCP 専用クライアントに適しています)。Web ターゲットの前提条件を参照してください。
5. IDE を設定する
Cursor または Devin のマーケットプレイスからインストールした場合、設定は自動的に行われます。それ以外のクライアントでは、MCP クライアントの設定に追加します:
{
"mcpServers": {
"SAW": {
"command": "uvx",
"args": ["--from", "git+https://github.com/snyk/saw-mcp.git", "saw-mcp"],
"env": {
"MCP_SAW_API_KEY": "your-api-key"
}
}
}
}
ホスト固有の設定については、インストールガイドを参照してください。
その他の設定オプション
- ベース URL を上書きする:
envブロックに"MCP_SAW_BASE_URL": "https://your-instance-url"を追加します。 - 設定ファイルを使用する: 代わりに
"MCP_SAW_CONFIG_PATH": "/path/to/config.yaml"を設定します。 - ログレベルを設定する:
"MCP_SAW_LOG_LEVEL": "DEBUG"を追加します(選択肢:DEBUG、INFO、WARNING、ERROR、CRITICAL。デフォルト:INFO)。
6. 使用を開始する
AI アシスタントに次のように依頼します:
- 「この OpenAPI スキーマ/Swagger ドキュメント/Postman コレクションから、Snyk API と Web API のターゲットを設定してください。」
- 「この認証済みアプリケーションに、Snyk API と Web の Web ターゲットを設定してください。」
簡単な一文から複雑な複数ターゲットのワークフローまで、プロンプトの例をすべて掲載したカタログは prompts.md を参照してください。
Web ターゲットの前提条件
SAW MCP サーバーは Snyk API & Web プラットフォームと通信します。ブラウザーは含まれていません。ログインシーケンスが必要な Web ターゲットをオンボーディングするには、次のいずれかを使ったブラウザー自動化が必要です:
| 方法 | 適した用途 | 設定 |
|---|---|---|
playwright-cli(推奨) | Shell を利用できる Cursor、Devin、Claude Code、Cloud Agents | npm install -g @playwright/cli@latest && playwright-cli install-browser chromium |
| Playwright MCP(代替) | Shell を使えない MCP 専用クライアント(例:Claude Desktop) | IDE の MCP 設定に Playwright MCP を追加 |
ワークフロー:
- ターゲット URL と認証情報を指定してプロンプトを入力します。例:「認証情報 [email protected] / password123 で example.com のターゲットを追加してください」。
- AI がブラウザー(
playwright-cliまたは Playwright MCP)でログインを記録します。 - SAW MCP ツールがターゲットを作成し、Probely sequence-recorder formatでシーケンスをアップロードします。
ブラウザー自動化を利用できない場合、AI はフォームログイン(probely_configure_form_login)にフォールバックします。これは単純な単一ページのログインのみを対象としており、複数ステップのフローや 2FA には対応していません。
設定の詳細は、Cursor インストールガイドを参照してください。
IDE 連携
ホストごとの詳しいガイドは、docs/installation-guides/にあります:
| ホスト | ガイド |
|---|---|
| Cursor | install-cursor.md |
| Claude Desktop | install-claude.md |
| Devin / その他の IDE | install-devin.md |
パッケージ化
bash scripts/package.sh
dist/SnykAPIWeb-<version>.tgz を作成します(バージョンは snyk_apiweb/__init__.py から取得します)。
開発とテスト
サーバーを実行する(単独)
サーバーを直接実行すると起動し、MCP クライアントの接続を待機します。主に開発とデバッグに役立ちます:
./venv/bin/python -m snyk_apiweb.server
開発モード(ホットリロード)
ファイルの変更時に自動で再読み込みする開発を行う場合:
./scripts/dev.sh
ライセンス
このプロジェクトは Apache License 2.0 の下でライセンスされています。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。