内容
# MCP 服务器注册表
社区可更新的 MCP 服务器目录,适用于 [**MCP 服务器安装工具**](https://github.com/TheYashGautam/mcp-cli)
(`mcp` 命令行工具 — MCP 服务器的 Homebrew)。
本仓库存在的原因是,注册表可以被修复和扩展 **而无需等待新的 MCP 服务器安装工具发布**。MCP 服务器安装工具默认自带一个快照,用于离线或无网络环境;本仓库是权威的、持续验证的源,您可以选择使用。
## 使用它
```bash
mcp registry add https://raw.githubusercontent.com/TheYashGautam/mcp-registry/main/registry.json
```
这里的条目如果与 MCP 服务器安装工具的内置服务器之一同名,则 **会被忽略** — 注册表永远不能覆盖受信任的内置条目。MCP 服务器安装工具本身强制执行此规则(`addExternalRegistry` 在 `src/registry.js` 中),而非本仓库中的任何内容。
## 架构
`registry.json` 是一个 JSON 数组。每个条目:
```json
{
"name": "我的服务器",
"description": "一行描述它做什么。",
"command": "npx",
"package": "@scope/我的-mcp-服务器",
"version": "1.2.3",
"extraArgs": ["--一些标志"],
"env": { "我的服务器令牌": "${我的服务器令牌}" }
}
```
- `command` 是 `"npx"` 或 `"uvx"`。
- `version` 固定为一个 **确切** 的已发布版本 — CI 在每次推送/PR时检查此项(见下文),因此指向重命名/未发布/不存在的包或版本的条目会自动被捕获,在到达任何人的机器之前。
- `extraArgs`(可选)和 `env`(可选)可能引用带有 `${变量名}` 占位符的机密;MCP 服务器安装工具在安装时从其自己的机密存储中解析这些。 这里的内容永远不会包含实际的机密值。
## 贡献
打开一个 PR,添加或更新 `registry.json` 中的条目。CI(`.github/workflows/validate.yml`)运行 `npm run validate`,它:
1. 检查每个条目是否具有必需的字段和受支持的 `command`。
2. 拒绝重复的名称。
3. 调用真正的 npm 注册表/PyPI JSON API 以确认固定的 `package`+`version` 实际上存在。
失败任何这些检查的 PR 都不会被合并。在打开 PR 之前,请在本地运行:
```bash
npm run validate
```
## 许可证
MIT © [TheYashGautam](https://github.com/TheYashGautam)