mcpField
O
open-mcp-registry

open-mcp-registry

本地服务
github.com/OnticX开发工具021 周前更新

关于 open-mcp-registry

Open MCP Registry 是供 MCP 客户端和 Agent 使用的服务器目录,可通过程序搜索、发现并安装其他 MCP 服务。它还提供服务器发布流程及命名空间所有权验证。

主要功能

  1. 01搜索和发现 MCP 服务
  2. 02通过程序安装 MCP 服务
  3. 03发布服务器的 CLI
  4. 04发布时验证命名空间所有权

适用场景

  1. 01为 Agent 查找可用的 MCP 服务
  2. 02通过 CLI 向目录发布 MCP 服务

MCP 相关

这是原生 MCP 服务,向 MCP 客户端提供搜索、发现和安装其他 MCP 服务的能力。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"onticx-open-mcp-registry": {
"command": "uvx",
"args": [
"open-mcp-registry"
]
}
}
}
启动命令uvx open-mcp-registry

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
pypiopen-mcp-registry0.1.0

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

开放 MCP 注册表

MCP 注册表为 MCP 客户端提供 MCP 服务列表,相当于 MCP 服务的应用商店。

📤 发布我的 MCP 服务 | ⚡️ 实时 API 文档 | 👀 生态愿景 | 📖 完整文档

开放 MCP 注册表是原生的 Model Context Protocol(MCP)服务,允许你的 AI Agent(例如 Claude Desktop)以编程方式搜索、发现和安装其他 MCP 服务。

2025-10-24 更新:注册表 API 已进入 API 冻结期(v0.1) 🎉。在接下来的一个月或更长时间内,API 将保持稳定,不会发生破坏性变更,让集成方能够放心地实现支持。此次冻结适用于 v0.1,v0 的开发将继续进行。我们将利用这段时间在真实集成中验证 API,并收集反馈,为 v1 正式发布做好准备。感谢大家的贡献与耐心——你们的参与是我们取得进展的关键!

2025-09-08 更新:注册表已发布预览版 🎉(公告博客文章)。虽然系统现在更加稳定,但这仍是预览版,可能会发生破坏性变更或数据重置。之后将发布正式可用(GA)版本。欢迎在 GitHub 讨论区或 #registry-dev Discord 中提供反馈(此处查看加入详情)。

当前主要维护者:

贡献

我们通过多个渠道进行协作——请参阅 modelcontextprotocol.io/community/communication。

想法通常(但不总是)会沿着以下流程推进:

  • Discord - 实时社区讨论
  • 讨论 - 提出并讨论产品/技术需求
  • 问题 - 跟踪范围明确的技术工作
  • 拉取请求 - 为问题贡献代码
快速开始:
前置条件
  • Docker
  • Go 1.24.x
  • ko - Go 容器映像构建工具(安装说明)
  • golangci-lint v2.4.0
运行服务
# Start full development environment
make dev-compose

这会使用 PostgreSQL 在 localhost:8080 启动注册表。数据库使用临时存储,每次重启容器时都会重置,确保开发和测试环境保持干净。

注意: 注册表使用 ko 构建容器镜像。make dev-compose 命令会自动使用 ko 构建注册表镜像,并在启动服务前将其加载到本地 Docker 守护进程中。

默认情况下,注册表会从生产 API 获取种子数据,并筛选出部分服务(以加快启动速度)。这样可确保本地环境与生产环境的行为一致,并且所有种子数据都通过验证。离线开发时,可以从文件加载种子数据而不进行验证:MCP_REGISTRY_SEED_FROM=data/seed.json MCP_REGISTRY_ENABLE_REGISTRY_VALIDATION=false make dev-compose。

可以通过 docker-compose.yml 中的环境变量配置此设置;参考 .env.example。

替代方案:运行预构建的 Docker 镜像

预构建的 Docker 镜像会自动发布到 GitHub Container Registry。请注意,镜像不包含 PostgreSQL,因此你需要自行运行 PostgreSQL,并通过 MCP_REGISTRY_DATABASE_URL 将注册表指向它(可参阅 docker-compose.yml 中的可用示例):

# Run latest stable release
docker run -p 8080:8080 ghcr.io/modelcontextprotocol/registry:latest

# Run latest from main branch (continuous deployment)
docker run -p 8080:8080 ghcr.io/modelcontextprotocol/registry:main

# Run specific release version
docker run -p 8080:8080 ghcr.io/modelcontextprotocol/registry:v1.0.0

# Run development build from main branch
docker run -p 8080:8080 ghcr.io/modelcontextprotocol/registry:main-20250906-abc123d

可用标签:

  • 正式发布:latest、v1.0.0、v1.1.0 等。
  • 持续构建:main(最新的 main 分支构建)
  • 开发版本:main-<date>-<sha>(特定提交的构建)
发布服务

我们构建了一个简单的 CLI,用于发布服务。使用方法如下:

# Build the latest CLI
make publisher

# Use it!
./bin/mcp-publisher --help

更多详情请参阅发布者指南。

其他命令
# Run lint, unit tests and integration tests
make check

开发时还有一些其他实用命令。运行 make help 了解更多信息,或查看 Makefile。

架构

项目结构
├── cmd/                     # Application entry points
│   └── publisher/           # Server publishing tool
├── data/                    # Seed data
├── deploy/                  # Deployment configuration (Pulumi)
├── docs/                    # Documentation
├── internal/                # Private application code
│   ├── api/                 # HTTP handlers and routing
│   ├── auth/                # Authentication (GitHub OAuth, JWT, namespace blocking)
│   ├── config/              # Configuration management
│   ├── database/            # Data persistence (PostgreSQL)
│   ├── service/             # Business logic
│   ├── telemetry/           # Metrics and monitoring
│   └── validators/          # Input validation
├── pkg/                     # Public packages
│   ├── api/                 # API types and structures
│   │   └── v0/              # Version 0 API types
│   └── model/               # Data models for server.json
├── scripts/                 # Development and testing scripts
├── tests/                   # Integration tests
└── tools/                   # CLI tools and utilities
    └── validate-*.sh        # Schema validation tools
身份验证

发布支持多种身份验证方式:

  • GitHub OAuth - 登录 GitHub 后发布
  • GitHub OIDC - 从 GitHub Actions 发布
  • DNS 验证 - 证明你拥有某个域名及其子域名
  • HTTP 验证 - 证明你拥有某个域名

注册表会在发布时验证命名空间的所有权。例如,要发布……:

  • io.github.domdomegg/my-cool-mcp,你必须以 domdomegg 身份登录 GitHub,或在 domdomegg 的仓库中运行 GitHub Action
  • me.adamjones/my-cool-mcp,你必须通过 DNS 或 HTTP 验证证明你拥有 adamjones.me

社区项目

查看社区项目,了解社区创建的知名注册表相关作品。

更多文档

如果此处未能解答你的问题,请参阅文档了解更多详情!

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。