← 返回目录
C

CVE MCP Server

社区
让 Claude 成为安全情报分析师。
分类
开发工具 第 258 / 438
Stars
★ 1.6k 非常热门
传输方式
stdio(本地进程) · Streamable HTTP
运行环境
Python 3.10+
凭据
可选 API Key
许可证
Apache-2.0
最近提交
工具数
28
50FMRS · D

这是一个面向漏洞管理和安全情报的综合型 MCP 服务器,覆盖 28 个工具、24 个数据源,并提供 triage_cve 编排器、本地缓存、审计日志和私有 IP 阻断。README 对许可证存在 MIT 与仓库元数据 Apache-2.0 的不一致,应在采用前核实实际许可证文件。

最强项 · 安全与权限 12/20 最弱项 · 维护活跃度 8/20

可靠性
9/20
安全与权限
12/20
维护活跃度
8/20
文档质量
10/20
安装易用性
11/20
查看各项评分依据
可靠性 9/20
README 描述了 Python/FastMCP 架构、缓存、限流、错误降级和测试范围,表明正常路径具有一定可行性。但未提供服务器清单、源文件、CI 工作流或可核验的测试结果;工具数量和名称存在矛盾(27/28 个,示例中的 check_kev 与目录中的 check_kev_status 不一致),且 HTTP 传输、资源和提示词行为无法从源文件验证。因此按静态校准不得超过 12,并因握手、注册和异常路径缺乏证据扣分。
安全与权限 12/20
README 明确说明 API 密钥来自环境变量、不记录密钥、限制私有 IP、使用 HTTPS、缓存本地化并采用 defusedxml;也声明没有 sampling handler,主要能力是查询。扣分原因是 HTTP 模式默认绑定 0.0.0.0,未说明认证或访问控制;URLScan 支持提交 URL,属于外部副作用但未见确认机制;大量敏感指标、域名、IP、哈希和包名会发送给第三方 API,权限边界和数据最小化仍不充分。未发现足以触发红线的明确恶意或凭据窃取证据。
维护活跃度 8/20
仓库未归档,且有较高关注度和少量开放 issue;README 也给出贡献步骤、测试要求和版权归属。可是没有发布记录、提交活跃度、CI、依赖更新策略、漏洞响应渠道或明确维护承诺;许可证信息自相矛盾(仓库元数据为 Apache-2.0,README 徽章和末尾写 MIT)。因此只能给予中低分。
文档质量 10/20
README 覆盖安装、客户端配置、API 密钥、工具目录、数据源、缓存、审计、限制、故障排查和示例,信息广度较好。扣分原因包括多个能力与实现描述无法验证,工具数及命名不一致,配置变量名不一致(如 ABUSEIPDB_KEY 与 ABUSEIPDB_API_KEY、SHODAN_KEY 与 SHODAN_API_KEY),新功能与路线图对 HTTP 的描述冲突,许可证也矛盾;部分第三方成本、权限和失败行为缺少可审查证据。
安装易用性 11/20
提供 Python 3.10+、venv/pip/uv、Claude Desktop 和 Claude Code 的配置步骤,并包含绝对路径和重启提示,主流客户端接入路径清楚。扣分原因是仍需手工安装和配置多个密钥,服务器清单缺失,stdio 与 HTTP 配置存在不一致,环境变量名称前后不统一,且没有可验证的 CI 或实际连接证据;因此属于可用但较脆弱的手动安装流程。

静态评测 · 未实际运行收录于 2026-07-29

查看 FMRS 评分方法 →

选型与风险

能访问什么访问网络

适合谁

  • 安全运营、漏洞管理和 DevSecOps 团队。
  • 需要聚合多个公开安全数据源的 Claude 用户。
  • 希望使用无密钥工具开始、再逐步添加 API 密钥的团队。

不适合谁

  • 主动扫描或探测自身基础设施。
  • 需要写入外部系统或自动执行修复的工作流。
  • 需要本地计算 CVSS v4.0 的场景。

所需权限

  • 需要对相关外部 API 发起出站 HTTPS 请求。
  • API 密钥通过环境变量提供;部分网络、威胁和 URL 工具需要对应密钥。
  • 会在本地 SQLite 缓存响应并写入审计日志。
  • urlscan_check 可提交 URL 扫描;其他功能主要执行读取操作。

风险与副作用

  • CVE、IP、哈希、域名和软件包名称会发送到相应的外部 API。
  • 外部 API 的速率限制、密钥要求和数据时效性会影响结果。
  • 风险分数是综合指标,不应替代人工判断;KEV 条目会强制标记为至少 CRITICAL/76。
  • 服务器不会主动扫描,但 URLScan 提交会将 URL 发送给该服务。

安装接入

准备工作

运行环境:Python 3.10+

NVD_API_KEY 可选密钥 免费 NVD API 密钥,在 nvd.nist.gov 申请,可将速率从 5 提升到 50 请求/30 秒。
GITHUB_TOKEN 可选密钥 GitHub 个人访问令牌(无需 scopes),在 github.com/settings/tokens 创建,将限流从 60/小时提升到 5000/小时。
ABUSEIPDB_KEY 可选密钥 AbuseIPDB API 密钥,在 abuseipdb.com 注册获取,IP 信誉查询工具必需。
VIRUSTOTAL_KEY 可选密钥 VirusTotal API 密钥,在 virustotal.com 注册获取,恶意软件扫描工具必需。
GREYNOISE_API_KEY 可选密钥 GreyNoise API 密钥,在 viz.greynoise.io 注册获取,IP 噪声查询工具必需。
SHODAN_KEY 可选密钥 Shodan API 密钥,在 account.shodan.io 注册获取,主机侦察工具必需。
URLSCAN_KEY 可选密钥 URLScan.io API 密钥,在 urlscan.io 注册获取,URL 扫描工具必需。
CIRCL_PDNS_PASS 可选密钥 CIRCL Passive DNS 密码,随 CIRCL 注册提供。
VULNCHECK_TOKEN 可选密钥 VulnCheck 免费 Community 的 Bearer 令牌,用作 NVD 被限流时的回退数据源。
ABUSECH_AUTH_KEY 可选密钥 abuse.ch(MalwareBazaar/ThreatFox)认证密钥,可选,提升恶意软件与 IOC 查询能力。
其他可选配置项(6 个)
CIRCL_PDNS_USER 可选 CIRCL Passive DNS 用户名,需在 circl.lu 申请合作伙伴访问。
CACHE_DB_PATH 可选 SQLite 缓存数据库路径,默认 ~/.cve-mcp/cache.db。
AUDIT_LOG_PATH 可选 审计日志路径,默认 ~/.cve-mcp/audit.log。
REQUEST_TIMEOUT 可选 HTTP 请求超时(秒),默认 30。
MAX_RETRIES 可选 瞬时错误的重试次数,默认 3。
MCP_TRANSPORT 可选 设为 http 时以流式 HTTP 传输(默认 0.0.0.0:8000)替代 stdio。

需要 Python 3.10 或更高版本、pip 或 uv 以及 Git。克隆仓库后,在仓库根目录创建虚拟环境,执行 pip install -e .,然后运行 python -m cve_mcp.server。可复制 .env.example 配置环境变量。Claude Desktop 使用绝对 cwd 路径配置;Claude Code 可运行 claude mcp add cve-mcp -- python -m cve_mcp.server。

claude_desktop_config.json
{"mcpServers":{"cve-mcp":{"command":"python","args":["-m","cve_mcp.server"],"cwd":"/absolute/path/to/cve-mcp-server","env":{"NVD_API_KEY":"your-key-here","GITHUB_TOKEN":"ghp_xxxxxxxxxxxxxxxxxxxx","ABUSEIPDB_KEY":"your-abuseipdb-key","GREYNOISE_API_KEY":"your-greynoise-key","SHODAN_KEY":"your-shodan-key"}}}}

以 Claude Desktop 为例。其他客户端的配置文件位置或字段可能不同(如 VS Code 使用 servers 字段),可用下方配置生成器转换。

.vscode/mcp.json
{
  "servers": {
    "cve-mcp": {
      "command": "python",
      "args": [
        "-m",
        "cve_mcp.server"
      ],
      "cwd": "/absolute/path/to/cve-mcp-server",
      "env": {
        "NVD_API_KEY": "your-key-here",
        "GITHUB_TOKEN": "ghp_xxxxxxxxxxxxxxxxxxxx",
        "ABUSEIPDB_KEY": "your-abuseipdb-key",
        "GREYNOISE_API_KEY": "your-greynoise-key",
        "SHODAN_KEY": "your-shodan-key"
      }
    }
  }
}

写入项目的 .vscode/mcp.json(VS Code 使用 servers 字段)。

Terminal
claude mcp add cve-mcp -e NVD_API_KEY=your-key-here -e GITHUB_TOKEN=ghp_xxxxxxxxxxxxxxxxxxxx -e ABUSEIPDB_KEY=your-abuseipdb-key -e GREYNOISE_API_KEY=your-greynoise-key -e SHODAN_KEY=your-shodan-key -- python -m cve_mcp.server

在终端运行;先把 <…> 占位符换成你自己的值。

验证是否装好

启动后询问“CVE-2021-44228 是什么?它是否在 CISA KEV 中?”——应触发 lookup_cve / check_kev_status 等免费工具并返回 CVSS 10.0 和 KEV 状态;也可用 npx @modelcontextprotocol/inspector python -m cve_mcp.server 在浏览器中查看工具列表。

常见排障

  1. 确认 Python 版本至少为 3.10,且已在虚拟环境中安装项目。
  2. Claude Desktop 配置使用绝对路径,并在修改后完全退出再重启。
  3. 遇到 NVD 限流时配置 NVD_API_KEY;检查其他工具所需的环境变量名称和值。
  4. GreyNoise 连接问题应确认使用的是 /v3/ip/{ip} 端点。
  5. 使用 claude mcp list 或 MCP Inspector 检查服务器是否已连接。

试试这样问

连接成功后,可以直接对 AI 助手这样说:

  • CVE-2021-44228 是什么?它是否正在被积极利用?
  • 扫描这些 Python 依赖的漏洞:requests 2.28.0、flask 2.2.0、django 3.2.0
  • 调查这个可疑 IP 185.220.101.34,它是恶意的吗?
  • 为 CVE-2024-3400 计算风险评分,并告诉我是否需要立即修补。

工具能力 28

triage_cve 只读
并行汇总 NVD、EPSS、CISA KEV 及公开 PoC 信息,计算综合风险并提供修复建议;深度模式还提供 SSVC v2 决策。
lookup_cve 只读
从 NVD 获取 CVE 详情、CVSS、CWE、受影响产品、引用链接和时间线。
search_cves 只读
按关键词、产品、严重性或日期范围搜索 NVD 中的 CVE。
get_epss_score 只读
获取一个或多个 CVE 的 EPSS 利用概率和百分位。
check_kev_status 只读
检查 CVE 是否列入 CISA 已知被利用漏洞目录。
get_cvss_details 只读
解析并解释 CVSS v3.1 向量及其各项指标。
get_cwe_info 只读
从内置数据库查询 CWE 详情。
get_cve_references 只读
提取并分类 CVE 的补丁、公告和漏洞利用引用链接。
展开其余 20 个工具
bulk_cve_lookup 只读
批量查询最多 20 个 CVE,并行获取补充信息。
search_exploits 只读
在 GitHub 中搜索公开的 PoC 漏洞利用代码和仓库。
get_mitre_techniques 只读
将 CVE 或 CWE 映射到相关 MITRE ATT&CK 技术、战术和缓解措施。
check_poc_availability 只读
从多个来源判断某个 CVE 是否存在已知 PoC 代码。
get_attack_patterns 只读
获取与 CWE 或 CVE 关联的 CAPEC 攻击模式详情。
calculate_risk_score 只读
根据 CVSS、EPSS、KEV 状态和 PoC 可用性计算 0 至 100 的综合风险分数。
generate_risk_report 只读
为一个或多个 CVE 生成带有建议的格式化安全报告。
prioritize_cves 只读
按综合风险分数对 CVE 列表进行排序。
get_trending_cves 只读
根据较高 EPSS 分数和近期 KEV 新增项获取热门 CVE。
lookup_ip_reputation 只读
通过 AbuseIPDB 查询 IP 的滥用历史和置信度。
check_ip_noise 只读
通过 GreyNoise 查询 IP 的扫描或攻击活动、分类及关联 CVE。
shodan_host_lookup 只读
通过 Shodan 获取 IP 的开放端口、服务、Banner 和漏洞信息。
passive_dns_lookup 只读
从 CIRCL Passive DNS 获取域名历史解析数据。
virustotal_lookup 只读
通过 VirusTotal 分析文件哈希、URL、域名或 IP。
search_malware 只读
按哈希、标签或签名搜索 MalwareBazaar 恶意软件样本。
search_iocs 只读
查询 ThreatFox 中与恶意软件家族关联的 IOC。
check_ransomware 只读
从 Ransomwhere 查询勒索软件支付地址和交易数据。
scan_dependencies 只读
通过 OSV.dev 检查软件包及版本的已知漏洞。
scan_github_advisories 只读
按生态系统、软件包或严重性搜索 GitHub Security Advisories。
urlscan_check 写入
提交 URL 扫描或获取 URLScan.io 的既有扫描结果。

使用场景

分析 CVE 的严重性、利用概率和是否已被实际利用。
批量扫描依赖并按风险优先级安排修复。
调查可疑 IP、域名、文件哈希和恶意软件指标。
生成漏洞对比、排序和执行层安全报告。

支持客户端

Claude Desktop
Claude Code

依据项目文档列出,未经本站实测。

详细介绍

CVE MCP Server 是一个基于 Python 和 FastMCP 的安全情报 MCP 服务器,为 Claude 提供 CVE 查询、EPSS 评分、CISA KEV、MITRE ATT&CK、漏洞利用、IP 情报、恶意软件、依赖扫描和风险报告等能力。服务器通过 triage_cve 并行汇总多个数据源,并计算带有 CISA KEV 强制覆盖规则的综合风险评分。

同类可选方案

Context7 80 · B

Upstash 官方维护,为 AI 编码助手提供实时更新的第三方库文档

★ 63.3k · 工具数 2 与当前对比 →

源版本 d666bac37435 数据同步于 2026-10-19 查看 FMRS 评分方法