WhisperGraph MCP
公式オープンソース、セルフホスト可能なWhisperGraph用MCPサーバー — DNS、BGP、GeoIP、WHOIS、脅威インテリジェンスをマッピングした73.9億ノード/390億エッジのグラフ。6つの読み取り専用ツール(Cypherクエリ+スキーマイントロスペクション+脅威評価)、6つのリソース、8つの調査プロンプト。stdioおよびStreamable HTTPトランスポート。
WhisperGraph MCPで何ができますか?
- Query the internet infrastructure graph — 46BのDNS、IP、ASN、BGP、WHOIS、およびWebリンクノードに対して、
queryでCypherクエリを実行します。 - Explore available data types —
list_labelsで全ノードラベルとその件数を一覧表示するか、describe_labelでラベルのプロパティを確認します。 - Assess threat posture of an indicator —
explain_indicatorを使用して、IP、ホスト名、CIDR、またはASNの脅威スコア、レベル、および要因を取得します。 - Run pre-built investigation recipes —
run_recipeを介して、assess、identify、attack-pathなどのカタログレシピをCypherを記述せずに実行します。 - Retrieve historical WHOIS or BGP data —
whisper_historyを使用して、インジケーターの過去の登録またはルーティング記録を検索します。 - Discover typosquatting domains —
domain_variantsを使用して、ライブグラフと照合したドメインのブランド保護バリアントを検出します。
ドキュメント
WhisperGraph MCP Server
AIエージェントのためのインターネットインフラストラクチャグラフ - DNS、IP、ASN、BGP、WHOIS、Webリンク、脅威インテリジェンスをマッピングする460億のノードとエッジ。2回のHTTP呼び出しでプログラム的にサインアップ。
WhisperGraphは、世界最大のインターネットインフラストラクチャグラフデータベースを基盤とするMCPサーバーです。20のエンティティタイプにわたる460億のノードとエッジを持ち、すべてのドメイン、IP、ASN、プレフィックス、組織、Webリンク、脅威インテリジェンスリストを単一のCypherクエリ可能なグラフにマッピングします。セキュリティチーム、インシデントレスポンダー、AIエージェントによる調査、属性特定、ブランド保護、インフラフォレンジックに使用されます。
初日からエージェント向けに構築。
- 2回のHTTP呼び出しでプログラム的にサインアップ。 ブラウザ、CAPTCHA、人の介在は不要。メール認証のみ。約5秒で有効なAPIキーを取得。
- エージェントを含む全員に無料トライアル。 より高いクォータには有料ティア。
可能な質問:
- DNS: 解決、ネームサーバー、MX、SPFチェーン、DNSSEC
- ルーティング: ASN所有権、BGPオリジン履歴、MOAS競合、ピアリング
- ホスティングと所有権: レジストラ、WHOIS連絡先、組織マッピング
- 脅威インテリジェンス: 18カテゴリにわたる約40のフィード、完全な脅威スコアリングのための
CALL explain() - 履歴: WHOIS履歴、BGPルート変更
- Web: ドメイン間分析のための109億のハイパーリンク
詳細: エージェントサインアップ · WhisperGraph紹介 · Cypher APIリファレンス · クエリガイド · Cypher構文 · 関数 · ベストプラクティス · MCPセットアップ
クイックスタート
WhisperGraph APIキーが必要です。以下のいずれかの方法で取得します:
- プログラム的に (エージェントに推奨) - 下記のエージェントクイックスタートを参照。
- ダッシュボード経由 (人間に推奨) - console.whisper.security/sign-up。
ホスト型リモートサーバー (インストール不要)
Whisperはhttps://mcp.whisper.securityでホスト型MCPサーバーを実行しています。リモートサーバーをサポートする任意のMCPクライアントをそこに向け、APIキーで認証します:
{
"mcpServers": {
"whisper": {
"url": "https://mcp.whisper.security",
"headers": { "Authorization": "Bearer <your_api_key>" }
}
}
}
MCPクライアント (stdio)
ローカルstdioトランスポートの場合、MCPクライアント設定に以下を追加します:
{
"mcpServers": {
"whisper-graph": {
"command": "npx",
"args": ["-y", "@whisper-security/whisper-graph-mcp"],
"env": { "WHISPER_API_KEY": "your-api-key" }
}
}
}
このリポジトリのセルフホスティングは、MCPレイヤーを自社環境で実行したいチーム向けです。セットアップ方法を参照してください。
エージェントクイックスタート
2回のHTTP呼び出しで有効なAPIキーを取得 - ブラウザ、CAPTCHA、待機リスト不要。
ステップ1 - サインアップ開始 (Whisperが認証コードをメール送信):
POST https://console.whisper.security/api/signup
Content-Type: application/json
{"email":"your-agent@example.com","attribution":{"agent_name":"your-agent","source":"<registry-name>"}}
ステップ2 - メールで受け取ったコードで認証:
POST https://console.whisper.security/api/signup/verify
Content-Type: application/json
{"signup_id":"...","code":"..."}
レスポンスにはapi_key、mcp_url、dashboard_url、docs_urlが含まれます。上記のMCP設定スニペットでapi_keyを使用してください。完全なドキュメント: whisper.security/docs/agent-signup。
ツール
8つのツールはすべて読み取り専用です。
| ツール | 機能 |
|---|---|
query | WhisperGraphに対してCypherクエリを実行します。バックエンドに到達する前に安全ルールセットに対して検証されます。 |
list_labels | すべてのノードラベルをカウント付きで一覧表示します。どのラベルを基点にするか不明な場合、クエリ作成前に呼び出します。 |
describe_label | ラベルの存在を確認し、そのプロパティキーを列挙します。 |
explain_indicator | IP、ホスト名、CIDR、またはASNの脅威評価 - スコア、レベル、要因、ソース。 |
whisper_history | インジケーターの履歴WHOISまたはBGPデータ。 |
domain_variants | ドメインのタイポスクワッティング/ブランド保護バリアントをグラフに対してチェック。 |
list_recipes | すぐに使えるレシピのwhisper.securityカタログ全体を一覧表示 (下記参照)。 |
run_recipe | スラッグで任意のカタログレシピを実行 - キーなしの直接プロシージャまたはキー付きのマルチステップフロー。 |
カタログレシピ
list_recipes + run_recipeは、whisper.securityカタログ全体を公開します - 29のキュレーションされたレシピで、手書きのCypherは不要です。バンドルされたカタログ(src/catalog/recipes.json)は、npm run sync:catalogで正規ソースから生成されるため、プラットフォームに追従します。
2種類あります:
- ダイレクトレシピ (キーなし)。 キーなしで実行される単一のグラフプロシージャ (レート制限あり):
assess(脅威ポスチャ),identify(ベンダー/オペレーター),explain,variants,origins(CDNデクローク),history/history-whois,walk,psl-tldplusone,psl-affiliation,asset,lookup-tor-relay,db-schema。 - フローレシピ (キー付き)。 APIキーが必要なキュレーションされたマルチステップ調査:
attack-path,attack-surface,indicator-enrichment,infrastructure-mapping,subdomain-takeover,bgp-hijack-exposure,blast-radius,route-health,typosquat,nameserver-hijack-dns-consistency,map-supply-chain-concentration,discover-ai-agent-infrastructure,build-takedown-evidence-package,indicator,anycast-dns-root-sovereignty。
// keyless direct recipe
{ "name": "run_recipe", "arguments": { "recipe": "assess", "inputs": { "v": "185.220.101.33" } } }
// keyed multi-step flow (needs WHISPER_API_KEY / X-API-Key)
{ "name": "run_recipe", "arguments": { "recipe": "indicator-enrichment", "inputs": { "value": "github.com" } } }
各レシピにはdocsUrl (list_recipesで表示) が付随し、whisper.security/docsの該当ページにリンクしています。
リソース
6つのMCPリソース: 完全なスキーマ、リレーションシップマップ、Cypher関数リファレンス、クエリクックブック、さらにライブのwhisper://statsとwhisper://quota。
プロンプト
8つの調査ワークフロープロンプトテンプレート: investigate-ip, map-attack-surface, compare-domains, blast-radius, threat-triage, whois-pivot, bgp-investigation, typosquat-sweep。
セルフホスティング (Docker / HTTP)
リモートまたはチームデプロイメントの場合、Streamable HTTPでサーバーを実行します:
docker run -p 8080:8080 -e MCP_TRANSPORT=http \
ghcr.io/whisper-sec/whisper-graph-mcp:latest
またはDocker Composeを使用:
docker compose up
HTTPモードでは、サーバーはインバウンドリクエストを認証しません - 呼び出し元のX-API-KeyまたはAuthorization: Bearerヘッダーをホスト型WhisperGraph APIに中継し、ヘッダーが存在しない場合はWHISPER_API_KEY環境変数にフォールバックします。アクセス制御が必要な場合は、独自のゲートウェイの背後に配置してください。
設定
すべての設定は環境変数で行います。
| 変数 | デフォルト | 説明 |
|---|---|---|
WHISPER_API_KEY | (なし) | WhisperGraph APIキー。2回のHTTP呼び出しでプログラム的に、またはダッシュボードから取得。 |
MCP_TRANSPORT | stdio | ローカルCLI使用の場合はstdio、リモート/Dockerの場合はhttp。 |
HTTP_HOST | 0.0.0.0 | HTTPトランスポートのバインドホスト。 |
HTTP_PORT | 8080 | HTTPトランスポートのバインドポート。 |
WHISPER_ALLOWED_HOSTS | (なし) | HTTPモードでのDNSリバインディング保護のための、カンマ区切りのHostヘッダー許可リスト。信頼できるゲートウェイの背後でのみ空のままにします。 |
WHISPER_DB_URL | https://graph.whisper.security | ホスト型WhisperGraph APIのベースURL。 |
WHISPER_QUERY_TIMEOUT_MS | 60000 | APIに転送されるクエリごとのハードデッドライン。 |
WHISPER_DB_TIMEOUT_MS | 10000 | 非クエリ呼び出しのHTTPタイムアウト。 |
LOG_LEVEL | info | debug、info、warn、またはerror。 |
開発
npm install
npm run dev # run from source over stdio
npm test # unit + integration tests (no secrets needed)
npm run build # bundle to dist/
npm run lint # eslint
npm run typecheck # tsc --noEmit
貢献
貢献を歓迎します。CONTRIBUTING.mdと行動規範を参照してください。セキュリティの問題: SECURITY.mdを参照。
ライセンス
Apache-2.0。"Whisper"、Whisperロゴ、"WhisperGraph"はWhisper Securityの商標です - NOTICEを参照。