CIRCL CVE SEARCH MCP Server について
CIRCL CVE SEARCH MCP Serverは、セキュリティ担当者や開発者向けにCIRCL Vulnerability-Lookupの脆弱性データを検索します。CVE、CWE、CAPEC、ベンダー製品、最新の脆弱性を構造化された結果で確認できます。
主な機能
- 01CVEの詳細情報を取得
- 02ベンダー別に製品を閲覧
- 03CWEの弱点データを検索
- 04CAPECの攻撃パターンを検索
- 05最近更新された脆弱性を一覧
- 06入力検証と失敗時の再試行
活用シーン
- 01CVEの深刻度や参照情報を確認
- 02特定ベンダー製品に関わる脆弱性を調査
- 03弱点や攻撃パターンを把握
- 04最近公開・更新された脆弱性を確認
MCP 対応
CIRCL Vulnerability-Lookupの検索機能をMCPツールとして提供し、CVE、ベンダー、CWE、CAPEC、最新の脆弱性を扱います。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
CIRCL CVE SEARCH MCP サーバー
CIRCL の Vulnerability-Lookup プラットフォームにアクセスするための Model Context Protocol(MCP)サーバーです。複数のソースにまたがる包括的な脆弱性およびセキュリティ情報を提供します。
このサーバーは以前、旧式の
cve.circl.lucve-search API を使用していました。CIRCL はこのサービスを Vulnerability-Lookup に置き換えたため、このサーバーは現在https://vulnerability.circl.lu/apiと通信します。
機能
この MCP サーバーでは、信頼性の高いツールを使って次の情報にアクセスできます。
- CVE 情報:特定の共通脆弱性識別子(CVE)の詳細情報を取得します
- ベンダーの閲覧:ベンダーの既知の製品を閲覧し、特定ベンダーの製品に関するセキュリティ問題を見つけます
- CWE 情報:脆弱性の種類を理解するための共通脆弱性タイプ一覧(CWE)情報を取得します
- CAPEC 情報:攻撃手法を理解するための共通攻撃パターン一覧および分類(CAPEC)データを取得します
- 最近の脆弱性:プラットフォームが追跡するすべてのソースにわたって関連付けられた、直近に公開または更新された脆弱性を取得します
主な改善点
- 再試行ロジック:指数バックオフによる自動再試行で、信頼性の高い API 呼び出しを実現します
- フォーマットの改善:重要な情報を強調した、構造化された読みやすいレスポンス形式です
- エラーハンドリングの改善:トラブルシューティングの案内を含む、明確で実行可能なエラーメッセージです
- 入力検証:すべての入力を包括的に検証し、サニタイズします
インストール
npm install @cyreslab/circl-cve-search-mcp-server
使用方法
このサーバーを MCP クライアントの設定に追加します。
{
"mcpServers": {
"circl-cve-search": {
"command": "npx",
"args": ["@cyreslab/circl-cve-search-mcp-server"]
}
}
}
利用可能なツール
get_cve
ID を指定して、特定の CVE の詳細情報を取得します。
パラメーター:
cve_id(必須):CVE 識別子(例:「CVE-2021-44228」)
例:
{
"name": "get_cve",
"arguments": {
"cve_id": "CVE-2021-44228"
}
}
レスポンス形式:
- 重要な情報を強調した構造化 CVE データ
- 概要、公開日、CVSS スコア
- 関連する脆弱性の種類(CWE)と参照件数
- 詳細な分析に利用できる未加工データ全体
browse_vendor
ベンダーの既知の製品を、脆弱性に関する直近の動きが新しい順に閲覧します。
パラメーター:
vendor(必須):ベンダー名(例:「apache」、「microsoft」、「google」)limit(任意):返す結果の数(デフォルト:10、最大:50)
例:
{
"name": "browse_vendor",
"arguments": {
"vendor": "apache",
"limit": 15
}
}
レスポンス形式:
- 指定したベンダーの既知の製品一覧。各製品には最終変更日時が含まれます
- 合計件数と表示件数
- ベンダー名の正規化
get_cwe
ID を指定して、共通脆弱性タイプ一覧(CWE)の情報を取得します。
パラメーター:
cwe_id(必須):CWE 識別子(例:「CWE-79」、「CWE-89」)
例:
{
"name": "get_cwe",
"arguments": {
"cwe_id": "CWE-79"
}
}
レスポンス形式:
- CWE 名と詳細な説明
- 拡張説明と脆弱性の順序尺度
- 悪用される可能性に関する情報
- 包括的な分析に利用できる未加工データ全体
get_capec
ID を指定して、共通攻撃パターン一覧および分類(CAPEC)の情報を取得します。
パラメーター:
capec_id(必須):CAPEC 識別子(例:「CAPEC-66」、「CAPEC-89」)
例:
{
"name": "get_capec",
"arguments": {
"capec_id": "CAPEC-66"
}
}
レスポンス形式:
- 攻撃パターンの名称と説明
- 典型的な深刻度と攻撃の可能性
- 前提条件と関連する脆弱性
- 詳細な分析に利用できる未加工データ全体
get_recent_vulnerabilities
プラットフォームが追跡するすべてのソース(例:NVD、GitHub、PySec、GSD、各種ベンダーの CSAF アドバイザリー)にわたって関連付けられた、直近に公開または更新された脆弱性を取得します。
パラメーター:
limit(任意):返す結果の数(デフォルト:10、最大:50)
例:
{
"name": "get_recent_vulnerabilities",
"arguments": {
"limit": 10
}
}
レスポンス形式:
- プラットフォーム固有のさまざまなレコード形式(OSV 形式のレコード、CVE 5.x レコード、CSAF アドバイザリー)を正規化した、最近変更された脆弱性の一覧
- 各脆弱性の識別子、公開日/変更日、要約(省略版)、深刻度、参照件数
データソース
このサーバーは、従来 cve.circl.lu でホストされていた旧 cve-search サービスに取って代わった、CIRCL の Vulnerability-Lookup プラットフォームを使用しています。次の情報を提供します。
- 複数のソース(NVD、GitHub、PySec、GSD、さまざまなベンダーの CSAF アドバイザリーなど)にまたがる相関付け済みの脆弱性データ
- Common Platform Enumeration(CPE)情報
- Common Weakness Enumeration(CWE)データ
- Common Attack Pattern Enumeration and Classification(CAPEC)データ
- 最新の脆弱性情報を継続的に更新
レート制限
CIRCL Vulnerability-Lookup API は無料で利用でき、認証も不要です。ただし、サービスに影響を及ぼす可能性のある過剰なリクエストは避け、責任を持ってご利用ください。
エラー処理
サーバーは、次のようなさまざまなエラー条件に対応しています。
- 無効な CVE/CWE/CAPEC ID 形式
- 空の検索クエリ
- API のレート制限
- ネットワークエラー
- 無効なパラメーター
開発
ビルド
npm run build
開発環境での実行
npm run dev
ライセンス
MIT License — 詳細は LICENSE ファイルを参照してください。
貢献
貢献を歓迎します!お気軽に Pull Request を送信してください。
サポート
問題や質問については、以下をご覧ください。
- GitHub Issues:問題を報告
- CIRCL Vulnerability-Lookup API ドキュメント:https://vulnerability.circl.lu/api/
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。