ToolHive Registry Server
使用说明(简要步骤)
- 项目简介
- ToolHive Registry Server 是一个完整的后端服务,按 MCP Registry API 规范实现元数据治理与注册发现,支持多数据源聚合、OAuth/OIDC 认证、数据库与文件存储后端,以及对外暴露扩展 API(Extension API)。通过健康和就绪检查、观测与追踪等能力,帮助企业在 Kubernetes 等环境中管理 MCP 服务器并实现统一目录化治理。
- 主要功能点
- MCP Registry API: 提供统一的 MCP 服务器注册、版本查询、以及聚合视图等只读和写入能力(仅对受管注册源支持写操作)。
- 数据源与同步: 支持 Git、API、文件、以及 Kubernetes 注册源,并具备后台同步、过滤和治理能力。
- 安全与观测: 集成 OAuth/OIDC 验证、审计、以及 OpenTelemetry 指标与追踪。
- 数据存储后端: 支持 PostgreSQL 数据库以及本地文件存储两种后端实现,便于本地开发和生产环境切换。
- 扩展与运维: 提供扩展 API 与健康性、就绪性接口,以及迁移、数据库 priming 等运维工具。
- 安装步骤
- 需求概览: Go 语言环境、任意 PostgreSQL 数据库、Taskfile(用于构建与容器化)以及可选的 Docker 与 Kubernetes 配置。
- 构建与运行
- 构建二进制:使用任务脚本执行构建。
- 运行示例:以 Git 源配置启动 thv-registry-api 服务,指定配置文件路径,例如 --config /路径/到/config.yaml。
- 数据库初始化(如使用数据库后端):在首次运行时执行数据库迁移。
- 容器与部署:提供 Docker Compose 与 Kubernetes 部署指南,便于在实际环境中快速落地。
- 服务器配置(MCP 客户端需要的启动信息示例)
说明:以下为示例 JSON 配置,用于 MCP 客户端在连接 MCP 服务器时了解如何启动与连接。本仓库为了 MCP Registry API 的服务化提供了如下服务器信息示例:
{
"serverName": "thv-registry-api",
"command": "thv-registry-api",
"args": ["serve","--config","/path/to/config.yaml"]
}
注释:
- serverName:MCP 客户端对该 MCP 服务器的唯一标识名称。
- command/args:MCP 客户端启动 MCP 服务器的命令与参数,帮助能够启动并与 MCP 服务器建立连接。 请注意,实际的客户端连接还需要根据具体环境提供实际的配置文件路径和参数,配置信息仅用于示意,MCP 客户端本身通常不需要部署在本文服务器内。
- 基本使用方法
- 启动并接入 MCP 生态:按照项目提供的 Quickstart/部署文档,将 thv-registry-api 启动在合适环境中,并提供正确的 YAML 配置文件。
- 查询与治理:通过 MCP Registry API 的端点查询注册的 MCP 服务器、版本及部署状态,结合 Extension API 进行状态监控与治理。
- 认证与安全:如在生产环境中,请使用 OAuth/OIDC认证配置;开发/测试环境可使用匿名模式。
- 维护与扩展:如需自定义数据源、指标或追踪,可通过提供自定义工厂与选项注入进行测试化替换。