程序包注册表MCP服务器
支持AI助手和代理的模型上下文协议(MCP)服务器 (Claude、Cursor、Copilot等)搜索包注册表并检索 最新的包裹信息。
入门指南
光标

或者,在Cursor中,您可以在设置中配置MCP服务器:
- 打开光标设置(
Cmd/Ctrl + ,) - 搜索“MCP”或转到扩展>MCP
- 使用以下命令添加新服务器:
- 名字: package-registry - 命令: npx - 参数: ["package-registry-mcp"]
克劳德代码
对于Claude Code,在终端中运行以下命令:
claude mcp add -s user package-registry npx package-registry-mcp
配置后,您将可以访问包搜索和信息工具。
克劳德桌面版
通过将以下内容添加到您的Claude Desktop,将此服务器添加到您 claude_desktop_config.json:
{
"mcpServers": {
"package-registry": {
"command": "npx",
"args": ["package-registry-mcp"]
}
}
}配置文件通常位于:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - 视窗:
%APPDATA%\Claude\claude_desktop_config.json
添加配置后,重新启动Claude Desktop。
特性
- 搜索NPM包
- 获取详细的NPM包信息
- 搜索crates.io(Rust包注册表)
- 获取详细的板条箱信息
- 搜索NuGet包(.NET包注册表)
- 获取详细的NuGet包信息
- 获取详细的PyPI包信息(Python包注册表)
- 获取详细的Go模块信息(Go包注册表)
- 在GitHub安全公告中搜索漏洞
- 直接来自包注册表的实时数据
可用工具
NPM工具
search-npm-packages
在NPM注册表中搜索与查询匹配的包。
参数:
query(string):包的搜索词limit(数字,可选):最大结果数(1-100,默认值:10)
例子:
bun tool search-npm-packages '{"query": "react", "limit": 5}'get-npm-package-details
获取特定NPM包的详细信息。
参数:
name(string):确切的板条箱名称
例子:
bun tool get-npm-package-details '{"name": "react"}'返回详细信息,包括:
- 包元数据(名称、描述、版本、许可证)
- 依赖关系(运行时、开发、对等)
- 维护人员信息
- 存储库和主页链接
- 最近50个版本(最新版本优先)
list-npm-package-versions
列出特定NPM包的所有版本。
参数:
name(string):确切的板条箱名称limit(number,可选):要返回的最大版本数(1-1000,
默认值:100)
例子:
bun tool list-npm-package-versions '{"name": "react", "limit": 50}'退货:
- 包名称和总版本数
- 按发布日期排序的所有版本(最新版本优先)
- 最新版本信息
crates.io工具
search-cargo-packages
在crates.io中搜索与查询匹配的Rust crates。
参数:
query(string):板条箱搜索词limit(数字,可选):最大结果数(1-100,默认值:10)
例子:
bun tool search-cargo-packages '{"query": "serde", "limit": 5}'get-cargo-package-details
从crates.io获取特定板条箱的详细信息。
参数:
name(string):确切的板条箱名称
例子:
bun tool get-cargo-package-details '{"name": "serde"}'返回详细信息,包括:
- 板条箱元数据(名称、描述、版本、许可证)
- 关键词和类别
- 下载统计数据(总计和最近)
- 特点和板条箱尺寸
- 存储库、主页和文档链接
- 最近50个版本(最新版本优先)
list-cargo-package-versions
列出crates.io中特定板条箱的所有版本。
参数:
name(string):确切的板条箱名称limit(number,可选):要返回的最大版本数(1-1000,
默认值:100)
例子:
bun tool list-cargo-package-versions '{"name": "serde", "limit": 50}'退货:
- 板条箱名称和总版本数
- 按发布日期排序的所有版本(最新版本优先)
- 最新和最高稳定版本信息
NuGet工具
search-nuget-packages
在NuGet注册表中搜索。NET包与查询匹配。
参数:
query(string):包的搜索词limit(数字,可选):最大结果数(1-100,默认值:10)
例子:
bun tool search-nuget-packages '{"query": "newtonsoft", "limit": 5}'get-nuget-package-details
获取特定NuGet包的详细信息。
参数:
name(string):确切的包名称
例子:
bun tool get-nuget-package-details '{"name": "Newtonsoft.Json"}'返回详细信息,包括:
- 包元数据(名称、描述、版本、许可证)
- 作者和项目信息
- 目标框架和依赖关系
- 下载统计和验证状态
- 项目、许可证和图标URL
- 最近50个版本(最新版本优先)
list-nuget-package-versions
列出特定NuGet包的所有版本。
参数:
name(string):确切的包名称limit(number,可选):要返回的最大版本数(1-1000,
默认值:100)
例子:
bun tool list-nuget-package-versions '{"name": "Newtonsoft.Json", "limit": 50}'退货:
- 包名称和总版本数
- 按发布日期排序的所有版本(最新版本优先)
- 最新版本信息
PyPI工具
注意:PyPI不提供JSON搜索API,因此只有包详细信息和 支持版本列表。如需搜索,请访问PyPI网站 直接在https://pypi.org/search/.
get-pypi-package-details
获取特定PyPI包的详细信息。
参数:
name(string):确切的包名称
例子:
bun tool get-pypi-package-details '{"name": "requests"}'返回详细信息,包括:
- 包元数据(名称、描述、版本、许可证)
- 作者和维护者信息
- 依赖关系和Python版本要求
- 分类器和关键字
- 项目URL和文档链接
- 下载统计
- 漏洞信息
- 最近50个版本(最新版本优先)
list-pypi-package-versions
列出特定PyPI包的所有版本。
参数:
name(string):确切的包名称limit(number,可选):要返回的最大版本数(1-1000,
默认值:100)
例子:
bun tool list-pypi-package-versions '{"name": "django", "limit": 50}'退货:
- 包名称和总版本数
- 按发布日期排序的所有版本(最新版本优先)
- 最新版本信息
Go工具
注意:pkg.go.dev不提供JSON搜索API,因此仅提供包详细信息和 支持版本列表。如需搜索,请访问pkg.go.dev网站 直接在https://pkg.go.dev/search/.
get-golang-package-details
获取特定Go模块/包的详细信息。
参数:
module(string):精确的模块路径(例如,“github.com/gin-gonic/gin”)
例子:
bun tool get-golang-package-details '{"module": "github.com/gin-gonic/gin"}'返回详细信息,包括:
- 模块路径和最新版本
- 发布日期和存储库信息
- VCS(版本控制系统)详细信息
- pkg.go.dev和go-get命令链接
- 最近50个版本(最新版本优先)
list-golang-package-versions
列出特定Go模块/包的所有版本。
参数:
module(string):精确的模块路径limit(number,可选):要返回的最大版本数(1-1000,
默认值:100)
例子:
bun tool list-golang-package-versions '{"module": "github.com/gorilla/mux", "limit": 50}'退货:
- 模块路径和总版本数
- 按发布日期排序的所有版本(最新版本优先)
- 最新版本信息
GitHub安全咨询工具
search-github-advisories
在GitHub安全咨询数据库中搜索漏洞。
参数:
ecosystem(字符串,可选):按包生态系统筛选(npm,pip,
maven, nuget, go, rust, rubygems, composer, pub, swift, erlang, actions, other)
severity(字符串,可选):按严重性级别筛选(unknown,low,
medium, high, critical)
type(字符串,可选):按咨询类型筛选(reviewed,malware,
unreviewed)
cveId(字符串,可选):按CVE标识符筛选limit(数字,可选):最大结果数(1-100,默认值:30)
例子:
bun tool search-github-advisories '{"ecosystem": "npm", "severity": "critical", "limit": 5}'get-github-advisory
获取有关特定GitHub安全咨询的详细信息。
参数:
ghsaId(string):GHSA标识符(例如。,GHSA-grv7-fg5c-xmjg)
例子:
bun tool get-github-advisory '{"ghsaId": "GHSA-grv7-fg5c-xmjg"}'返回详细信息,包括:
- 咨询元数据(GHSA ID、CVE ID、摘要、描述)
- 严重程度和CVSS评分
- 受影响的软件包和易受攻击的版本范围
- 补丁版本
- CWE分类
- 参考文献和学分
get-package-advisories
获取影响特定软件包的所有安全建议。
参数:
ecosystem(string):包装生态系统(npm,pip,maven等等)packageName(string):包名称(例如。,braces,lodash)severity(字符串,可选):按严重性级别筛选limit(数字,可选):最大结果数(1-100,默认值:30)
例子:
bun tool get-package-advisories '{"ecosystem": "npm", "packageName": "braces"}'退货:
- 指定包的所有已知安全建议
- 易受攻击的版本范围和已修补的版本
- 严重性评级和CVSS评分
安装
全局安装软件包:
npm install -g package-registry-mcp或者直接与npx一起使用(无需安装):
npx package-registry-mcp贡献
看 贡献.md 用于开发设置和指南。
需求
- Node.js 18+或Bun运行时
- 用于访问包注册表的Internet连接
许可证
有关详细信息,请参阅LICENSE文件。
