使用说明
项目简介
OSV-MCP Server 是一个基于 Model Context Protocol (MCP) 构建的服务器,旨在为大型语言模型 (LLM) 应用提供访问 OSV (Open Source Vulnerability) 数据库的能力。通过此服务器,LLM 可以查询软件包的已知漏洞 (CVE) 信息,以及特定 CVE 影响的版本和修复版本,从而增强 LLM 在软件安全领域的应用能力。
主要功能点
- 查询软件包CVE列表: 根据软件包名称(及可选的版本、生态系统)查询并返回与之相关的CVE漏洞ID列表。
- 查询CVE影响版本: 根据CVE漏洞ID查询并返回受该漏洞影响的软件包版本列表。
- 查询CVE修复版本: 根据CVE漏洞ID查询并返回修复该漏洞的软件包版本列表。
安装步骤
-
安装 Python 3.11 或更高版本 确保您的系统已安装 Python 3.11 或更高版本。您可以通过以下命令检查 Python 版本:
python --version如果版本低于 3.11,请先升级 Python。
-
安装 uv uv 是一个快速的 Python 包安装器和解析器。使用 pip 或 Homebrew 安装 uv:
pip install uv或者使用 Homebrew:
brew install uv -
获取项目代码 从 GitHub 克隆或下载 OSV-MCP 仓库代码到本地。
-
运行服务器 打开终端,导航到项目代码根目录,并使用 uv 运行服务器脚本:
uv run src/main.py您应该看到 "Starting OSV MCP server!" 的输出,表明服务器已成功启动。
服务器配置
对于 MCP 客户端(例如 Cursor),您需要配置服务器连接信息。以下是一个 Cursor 客户端的配置示例,您需要根据实际情况调整 'command' 和 'args' 中的路径:
{ "mcpServers": { "osv-mcp": { "command": "uv", "args": ["--directory", "/path/to/OSV-MCP", "run", "src/main.py"], "env": {} } } }
配置参数说明:
- server name: 'osv-mcp' (服务器名称,客户端用于识别和调用)
- command: 'uv' (启动服务器的命令,这里使用 uv 运行 Python 脚本)
- args: 启动命令的参数列表
- '--directory': '/path/to/OSV-MCP' [请替换为您的OSV-MCP项目代码的实际本地路径],指定 uv 运行的目录。
- 'run': uv 的子命令,用于运行 Python 模块或脚本。
- 'src/main.py': 服务器主程序入口脚本路径。
- env: '{}' (环境变量,当前示例为空)
注意: 请务必将 '/path/to/OSV-MCP' 替换为您本地 OSV-MCP 项目代码的实际路径。
基本使用方法
配置完成后,MCP 客户端可以通过 JSON-RPC 协议与 OSV-MCP 服务器通信,并调用以下工具:
- query_package_cve: 查询软件包CVE列表
- 参数:
- 'package' (string, 必需): 软件包名称
- 'version' (string, 可选): 软件包版本
- 'ecosystem' (string, 可选): 软件包生态系统 (默认为 "PyPI" )
- 参数:
- query_for_cve_affected: 查询CVE影响版本
- 参数:
- 'cve' (string, 必需): CVE 漏洞 ID (例如 "CVE-2018-1000805")
- 参数:
- query_for_cve_fix_versions: 查询CVE修复版本
- 参数:
- 'cve' (string, 必需): CVE 漏洞 ID (例如 "CVE-2018-1000805")
- 参数:
LLM 客户端可以根据这些工具描述和参数,构建 JSON-RPC 请求发送给 OSV-MCP 服务器,获取相应的漏洞信息。
信息
分类
网页与API