mcp-nvd
NVD データベース MCP サーバー
API を介して NIST 国家脆弱性データベース (NVD) を照会するためのモデル コンテキスト プロトコルサーバーの実装。https ://nvd.nist.gov/
前提条件として、NVD API キーが必要です。(こちらからリクエストしてください)。
状態
stdioおよびsseトランスポートの両方を使用して、Claude デスクトップ アプリおよびその他の MCP 準拠のホストおよびクライアントで動作します。
Related MCP server: MCP NVD Server
特徴
詳細な脆弱性データを使用して、ID で特定の CVE をクエリします。
カスタマイズ可能な結果オプションを使用して、キーワードで NVD データベースを検索します。
リアルタイム通信のための Server-Sent Events (SSE) トランスポートをサポートします。
Claude Desktop などの MCP 準拠クライアントと互換性があります。
ツール
サーバーは、NVD データベースを照会するために次のツールを実装します。
get_cve:説明: ID で CVE レコードを取得します。
パラメータ:
cve_id(str): CVE ID (例:CVE-2019-1010218)。concise(bool、デフォルトはFalse):Trueの場合は、より短い形式を返します。
返されるもの: スコア、弱点、参照を含む詳細な CVE 情報。
search_cve:説明: キーワードで NVD データベースを検索します。
パラメータ:
keyword(str): 検索用語 (例:Red Hat)。exact_match(bool、デフォルトはFalse):Trueの場合は、正確なフレーズ一致が必要です。concise(bool、デフォルトはFalse):Trueの場合は、短い CVE レコードを返します。results(int, default10): CVE レコードの最大数 (1-2000)。
返される値: 一致する CVE とその合計数のリスト。
構成
次の場所にある Claude Desktop 構成ファイルを作成または編集します。
macOSの場合:
~/Library/Application Support/Claude/claude_desktop_config.jsonWindows の場合:
%APPDATA%/Claude/claude_desktop_config.json
以下を追加します。
{
"mcpServers": {
"mcp-nvd": {
"command": "/path/to/uvx",
"args": ["mcp-nvd"],
"env": {
"NVD_API_KEY": "your-api-key"
}
}
}
}/path/to/uvxをuvx実行ファイルへの絶対パスに置き換えます。ターミナルでwhich uvxコマンドのパスを確認してください。これにより、サーバーの起動時に正しいバージョンのuvxが使用されるようになります。変更を適用するには、Claude Desktop を再起動します。
発達
設定
前提条件:
Python 3.10 以上。
NVD API キー (こちらからリクエスト)。
uvパッケージ マネージャー (インストール)。
リポジトリのクローンを作成します:
git clone https://github.com/marcoeg/mcp-nvd
cd mcp-nvd環境変数を設定する:
プロジェクト ルートに
.envファイルを作成します。NVD_API_KEY=your-api-keyyour-api-keyNVD API キーに置き換えます。
依存関係をインストール:
uv sync
uv pip install -e .MCPインスペクターで実行する
cd /path/to/the/repo
source .env
npx @modelcontextprotocol/inspector uv \
--directory /path/to/repo/mcp-nvd run mcp-nvd次に、MCP インスペクターによって示された URL (通常はhttp://localhost:8077?proxyPort=8078をブラウザで開きます。
インスペクターで
stdioとsseトランスポート タイプを自由に切り替えます。
SSEクライアントでのテスト
サーバーを実行します。
cd /path/to/the/repo
source .env
uv run mcp-nvd --transport sse --port 9090デフォルトではポート
9090で SSE トランスポートを使用して実行されます。
クライアントを実行します。
get_cveをテストします:
uv run client.py http://localhost:9090/sse CVE-2019-1010218テストsearch_cve (デフォルト 10 件の結果):
uv run client.py http://localhost:9090/sse "search:Red Hat"テストsearch_cve (完全一致、5 件の結果):
uv run client.py http://localhost:9090/sse "search:Microsoft Windows:exact:5"Dockerのセットアップ
建てる
docker build -t mcp-nvd:latest .走る
.envの場合:
docker run -d -p 9090:9090 -v /path/to/.env:/app/.env mcp-nvd:latestenv var の場合:
docker run -d -p 9090:9090 -e NVD_API_KEY="your-key" mcp-nvd:latestカスタム ポート:
docker run -d -p 8080:8080 -v /path/to/.env:/app/.env mcp-nvd:latest uv run mcp-nvd --transport sse --port 8080 --host 0.0.0.0確認する
docker logs <container_id>
# Expect: INFO: Uvicorn running on http://0.0.0.0:9090テスト:
uv run client.py http://localhost:9090/sse CVE-2019-1010218注記
.envにNVD_API_KEY=your-keyがあることを確認するか、-eを使用してください。デフォルトポート:
9090。
以下は、コード ブロック内の Markdown コメントとしてフォーマットされた概要です。これは、 docker-compose.yamlやREADME.mdなどのファイルに含めるのに適しています。
テストに Docker Compose を使用する
このdocker-compose.yaml 、 tests/ディレクトリにあり、ビルド済みのDockerイメージを用いてMCP-NVDサーバーをテストするためのサービスを定義します。これは、 clickhouseのようなスタンドアロンサービスと同様に、テストユースケース向けに設計されており、イメージは毎回再構築されるのではなく、事前にビルドされることを前提としています。
仮定
ビルド済みイメージ:このサービスは、ローカルまたはレジストリで利用可能な
mcp-nvd:testタグ付きのビルド済みイメージを使用します。このイメージは親ディレクトリにあるDockerfileに基づいており、uvを使用して MCP-NVD サーバーをセットアップし、ポート 9090 で SSE モードで実行します。
イメージの構築方法
mcp-nvd:testイメージを作成するには:
プロジェクト ルートに移動します。
cd ./mcp-nvdDockerfile を使用してイメージをビルドします。
docker build -t mcp-nvd:test .これにより、
pyproject.tomlとmcp_nvd/モジュールからのすべての依存関係を含むイメージがビルドされ、サーバーを実行するためのデフォルトのコマンドが設定されます。
サービスの実行
tests/ディレクトリから:
cd tests
docker-compose upアクセス: サーバーは
http://localhost:9090で実行されます。停止:
docker-compose down。環境:
NVD_API_KEYが../.envにあることを確認するか、docker-compose --env-file ../.env upを使用します。
Docker Compose シナリオでtest_tools.pyを実行する
Docker 環境内でユニット テスト ( test_tools.py ) を実行するには:
サービスを開始します。docker
docker-compose upを実行して、mcp-nvdサービスが実行されていることを確認します。コンテナ内で実行:
コンテナ名 (例:
mcp-nvd-mcp-nvd-1) を次のように識別します。docker psコンテナ内でテストを実行します。
docker exec -it mcp-nvd-mcp-nvd-1 python /app/tests/test_tools.py注:
test_tools.pyがイメージの/app/tests/にコピーされていることを前提としています。コピーされていない場合は、Dockerfileに以下を追加してください。COPY tests/ ./tests/次に、ルートから
docker build -t mcp-nvd:test .を使用してイメージを再構築します。
代替案: コンテナ化されたサービスに対してローカルでテストを実行します。
cd tests python test_tools.pyこれは、サービスの実行中に
http://localhost:9090に対してテストを行います。
主な詳細
ポート: 9090 は SSE アクセス用に公開されています。
ログ:
log-dataボリュームに保存されます (オプション)。イメージ:
docker-composeを実行する前に、一度ビルドしてmcp-nvd:testとしてタグ付けする必要があります。
SSE ベースの MCP クライアントとサーバーの動作パターンを提供してくれた@sidharthrajaramに感謝します: https://github.com/sidharthrajaram/mcp-sse
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Tools
Related MCP Servers
- AlicenseBqualityDmaintenanceA Model Context Protocol (MCP) server for querying the CVE-Search API. This server provides comprehensive access to CVE-Search, browse vendor and product、get CVE per CVE-ID、get the last updated CVEs.6103MIT
- AlicenseBqualityDmaintenanceA Model Context Protocol server that retrieves CVE information from the National Vulnerability Database, allowing AI models to access up-to-date vulnerability data.17Apache 2.0
- AlicenseAqualityDmaintenanceA Model Context Protocol server providing security vulnerability intelligence tools including CVE lookup, EPSS scoring, CVSS calculation, exploit detection, and Python package vulnerability checking.89MIT
- AlicenseNot gradedqualityDmaintenanceA Model Context Protocol (MCP) server for accessing the CIRCL CVE SEARCH API, providing comprehensive vulnerability and security information.10MIT
Related MCP Connectors
NVD MCP — wraps the NIST National Vulnerability Database API (free, no auth)
CVE lookups (NVD) and dependency-manifest audits (OSV) for AI agents. No API keys.
CVE lookups (NVD) and dependency-manifest audits (OSV) for AI agents. No API keys.
Appeared in Searches
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/marcoeg/mcp-nvd'
If you have feedback or need assistance with the MCP directory API, please join our Discord server