# 漏洞利用预测与评分系统-管理中心平台
## 基本信息
- Slug: `jgamblin-epss-mcp`
- Source: modelscope
- Publisher: @jgamblin/EPSS-MCP
- Categories: security-and-iam / databases
- Hosted: No
- License: MIT License
- Source URL: https://www.modelscope.cn/mcp/servers/@jgamblin/EPSS-MCP
## 简介
从NVD API检索CVE详细信息并获取EPSS分数的服务器，提供全面的漏洞信息，包括描述、CWE、CVSS分数和利用可能性百分位数。
## MCP Server 详情

# EPSS MCP 项目

EPSS MCP 项目是一个强大的服务器，旨在从 NVD API 检索 CVE 细节，并从 EPSS 服务器获取 EPSS 分数。它为用户提供全面的漏洞信息，包括 CVE 描述、CWE、CVSS 分数和 EPSS 百分位数，所有这些都在一个地方提供。

## 功能

- **全面的 CVE 信息**：直接从 NVD API 获取详细的漏洞数据，包括描述、CWE 和 CVSS 分数。
- **EPSS 集成**：检索 EPSS 分数和百分位数以评估特定漏洞被利用的可能性。
- **MCP 服务器**：通过强大且可扩展的 MCP 服务器提供数据，以便与其他工具无缝集成。
- **Docker 支持**：使用 Docker 轻松部署服务器，以获得一致且可移植的运行时环境。
- **VS Code 兼容性**：与 VS Code MCP 集成，增强开发人员工作流程并提供实时漏洞洞察。

## 前提条件

- Python 3.13 或更高版本
- Docker（可选，用于容器化部署）
- 一个 NVD API 密钥（将其添加到 `.env` 文件中作为 `NVD_API_KEY`）

## 设置说明

### 1. 克隆仓库

bash
git clone <repository-url>
cd epss-mcp-project


### 2. 安装依赖项

建议使用虚拟环境。您可以使用 `venv` 或 `conda` 创建一个。然后，安装所需的包：

bash
pip install -r requirements.txt


### 3. 添加您的 NVD API 密钥

在项目根目录下创建一个 `.env` 文件，并添加您的 NVD API 密钥：

env
NVD_API_KEY=your-nvd-api-key


## 使用方法

### 本地运行 MCP 服务器

要本地启动 MCP 服务器，请运行：

bash
python epss_mcp.py


一旦服务器运行起来，您可以通过指定 CVE ID 来请求获取 CVE 详细信息。

### 示例请求

要获取特定 CVE 的详细信息，请使用以下格式：


GET /cve/<CVE-ID>


将 `<CVE-ID>` 替换为实际的 CVE 标识符（例如 `CVE-2022-1234`）。

## Docker 部署（适用于 Open-WebUI）

如果您想在 Open-WebUI 中运行 MCP 服务器，请按照以下步骤操作：

### 1. 构建 Docker 镜像

要构建 Docker 容器，请运行：

bash
docker build -t epss_mcp .


### 2. 运行 Docker 容器

运行容器并将端口 `8000` 暴露出来：

bash
docker run -p 8000:8000 epss_mcp


现在可以在 `http://localhost:8000` 访问 MCP 服务器。

### WebUI 截图

下面是 MCP 服务器在 Open-WebUI 中运行的截图：

![EPSS MCP WebUI Screenshot](epss_mcp_webui.png)

### WebUI 建议的系统提示

当在 Open-WebUI 中使用 MCP 服务器时，可以配置以下系统提示来指导交互：

text
您是一个专注于 Exploit Prediction Scoring System (EPSS) 的专业 AI 助手。您的专长在于提供和解释 EPSS 数据，其中包括每日更新的概率分数（0-1）和百分位数，用于指示 Common Vulnerabilities and Exposures (CVEs) 在未来 30 天内在野外被利用的可能性。您需要帮助网络安全专业人士理解这些预测，将它们与其他指标如 CVSS 分数进行比较，并使用这些信息有效地优先处理漏洞修复工作。以清晰、技术准确、专业和解决方案为导向的方式提供可操作的数据驱动见解。


## 服务于 VS Code MCP

要将 MCP 服务器服务于 VS Code MCP，请按照以下步骤操作：

1. **将本地服务器添加到 VS Code**：
   打开您的 VS Code `settings.json` 文件，并添加以下配置以注册本地服务器：

   json
   "mcp.servers": {
       "EPSS_MCP": {
           "type": "stdio",
           "command": "python",
           "args": [
               "/Github/EPSS-MCP/epss_mcp.py"
           ]
       }
   }
   

   **注意**：确保更新 `args` 路径以匹配您本地机器上 `epss_mcp.py` 文件的位置。

2. **连接到 VS Code**：
   - 打开 VS Code。- 如果尚未安装，请安装 [Microsoft Copilot Labs](https://marketplace.visualstudio.com/items?itemName=GitHub.copilot-labs) 扩展。
- 确保MCP服务器在扩展中列出并处于激活状态。

3. **开始使用MCP服务器**：
   一旦连接成功，VS Code将直接调用Python文件以获取CVE详细信息和EPSS分数。

### VS Code 截图

以下是集成到VS Code中的MCP服务器的截图：

![EPSS MCP VS Code Screenshot](epss_mcp_vscode.png)

## 项目结构


epss-mcp-project
├── epss_mcp.py               # MCP服务器的主要入口点
├── nvd_api.py                # 与NVD API交互的功能函数
├── epss_api.py               # 与EPSS API交互的功能函数
├── epss_mcp_test.py          # MCP服务器的测试脚本
├── requirements.txt          # 项目依赖
├── Dockerfile                # Docker配置
├── .env                      # 环境变量（例如API密钥）
└── README.md                 # 项目文档


## 贡献

欢迎贡献！请随时提交拉取请求或为任何增强功能或错误修复打开问题。

## 许可证

此项目根据MIT许可证发布。有关更多详情，请参阅[LICENSE](LICENSE)文件。

