MCP 注册表测试脚本
用于与MCP(模型上下文协议)注册表交互的测试和演示脚本。这些Python脚本展示了如何 出版;发布 服务器到注册表以及 消耗 使用REST API从注册表中获取服务器。
特点/特性
此项目提供了以下示例脚本:
出版
- publish_server_rest.py 翻译为中文是:“发布服务器REST接口.py” 或者简化为 “发布服务器REST文件.py”,具体翻译可能根据上下文有所调整。在这里,“publish_server”指的是发布服务器,“rest”指的是代表表示层和状态转移的软件架构风格(即RESTful API),而“.py”表示这是一个Python脚本文件 使用REST API将MCP服务器发布到注册表
- 验证 server.json 针对MCP架构 - 支持身份验证(无/开发模式和承载令牌) - 发布新服务器或更新现有版本 - 验证发布是否成功
消耗
- \
consume_from_registry.py\翻译为中文是:“从注册表中消费数据.py” 或者根据上下文,也可以简化为 “注册表数据消费者.py” - 从注册表中发现并使用MCP服务器
- 按名称搜索服务器 - 获取服务器详细信息和元数据 - 列出服务器的所有版本 - 分页浏览所有服务器 - 获取安装说明
交互式API文档
MCP注册表提供了一个由OpenAPI/Swagger驱动的交互式API文档接口。这是探索和测试注册表API的最简单方式。
访问文档地址: http://localhost:8080/docs
交互式文档允许您:
- 浏览所有可用的终端节点
- 查看请求/响应模式
- 直接在浏览器中测试API调用
- 查看认证要求
- 探索服务器发布和发现端点
这在编写自己的脚本或集成之前理解API时特别有用。
使用方法
发布服务器
将示例MCP数学服务器发布到您的本地注册表:
cd scripts
python publish_server_rest.py环境变量
使用环境变量配置发布者:
MCP_REGISTRY_URL- 注册表URL(默认:http://localhost:8080)MCP_AUTH_TOKEN- 认证令牌(本地开发时可选)MCP_AUTO_AUTH- 使用自动认证/auth/none端点(默认:true)MCP_UPDATE_MODE- 使用 PUT 方法更新现有版本(默认:false)MCP_SERVER_JSON- 路径到server.json文件(默认:../mcp_server_test/server.json)
示例:
export MCP_REGISTRY_URL="http://localhost:8080"
export MCP_AUTO_AUTH="true"
python publish_server_rest.py从注册表中读取/消费数据
在注册表中查找服务器:
cd scripts
python consume_from_registry.py这个脚本展示了:
- 搜索 对于服务器(例如,“math”)
- 获得 特定服务器的详细信息
- 列出 服务器的所有版本
- 分页 通过所有可用服务器
- 获得 安装说明
关键特性
- REST API 集成直接向注册表端点发送HTTP请求
- 认证支持承载令牌和开发模式认证
- 模式验证验证
server.json与官方MCP架构不符 - 错误处理全面的错误处理,附带实用提示信息
- 漂亮的输出格式化控制台输出以便轻松阅读
项目结构
mcp_registry_test/
├── scripts/
│ ├── consume_from_registry.py # Client for discovering servers
│ └── publish_server_rest.py # Publisher for adding servers
├── .gitignore
└── README.md测试的前提条件
- MCP 注册表必须在本地运行注册表
cd registry
make docker-up- MCP服务器对于发布测试,您需要一个有效的
server.json
- 示例服务器位于 ../mcp_server_test/ - 或者按照以下步骤创建你自己的 MCP规范
