Skip to main content
Glama

GS Robot MCP Server

by cfrs2005
TESTING_GUIDE.md6.73 kB
# Gausium OpenAPI MCP 测试指南 ## 🎯 测试现状 **✅ 代码完成度**: 100% - 所有22个API + 3个工作流已实现 **✅ 基础测试**: 通过 - 模块导入、端点配置、引擎初始化正常 **⚠️ 实际调用**: 需要Gausium API凭证 ## 📋 测试步骤 ### 1. 环境准备 #### 1.1 安装依赖 ```bash # 确保使用正确的Python环境 uv pip install -r requirements.txt ``` #### 1.2 设置API凭证 ```bash # 设置环境变量 export GS_CLIENT_ID="你的客户端ID" export GS_CLIENT_SECRET="你的客户端密钥" export GS_OPEN_ACCESS_KEY="你的访问密钥" ``` 或者创建 `.env` 文件: ```bash cat > .env << EOF GS_CLIENT_ID=你的客户端ID GS_CLIENT_SECRET=你的客户端密钥 GS_OPEN_ACCESS_KEY=你的访问密钥 EOF ``` ### 2. 基础功能测试 #### 2.1 运行结构测试 ```bash python test_basic.py ``` **预期结果**: - ✅ 所有模块导入成功 - ✅ 23个端点配置正确 - ✅ 任务引擎初始化成功 #### 2.2 启动MCP服务器 ```bash python main.py ``` **预期结果**: - 服务器在 `http://0.0.0.0:8000` 启动 - 显示 "Starting Gausium MCP server..." 日志 - 无错误信息 ### 3. API功能测试 #### 3.1 认证测试 使用任何API工具(如curl)测试: ```bash # 测试OAuth令牌获取(内部调用) curl -X POST http://localhost:8000/api/test-auth ``` #### 3.2 基础API测试 ```bash # 测试机器人列表 curl -X POST http://localhost:8000/mcp/call \ -H "Content-Type: application/json" \ -d '{ "method": "list_robots", "params": {"page": 1, "page_size": 10} }' ``` ### 4. 产品线专用测试 #### 4.1 M线机器人测试 ```bash # 测试M线状态查询 curl -X POST http://localhost:8000/mcp/call \ -H "Content-Type: application/json" \ -d '{ "method": "get_robot_status_v1", "params": {"serial_number": "你的M线机器人序列号"} }' # 测试M线工作流 curl -X POST http://localhost:8000/mcp/call \ -H "Content-Type: application/json" \ -d '{ "method": "execute_m_line_task_workflow", "params": { "serial_number": "你的M线机器人序列号", "task_selection_criteria": {"cleaning_mode": "__middle_cleaning"} } }' ``` #### 4.2 S线机器人测试 ```bash # 测试S线状态查询 curl -X POST http://localhost:8000/mcp/call \ -H "Content-Type: application/json" \ -d '{ "method": "get_robot_status_v2", "params": {"serial_number": "你的S线机器人序列号"} }' # 测试站点信息获取 curl -X POST http://localhost:8000/mcp/call \ -H "Content-Type: application/json" \ -d '{ "method": "get_site_info", "params": {"robot_id": "你的S线机器人ID"} }' # 测试S线有站点工作流 curl -X POST http://localhost:8000/mcp/call \ -H "Content-Type: application/json" \ -d '{ "method": "execute_s_line_site_task_workflow", "params": { "robot_id": "你的S线机器人ID", "task_parameters": { "cleaning_mode": "__middle_cleaning", "target_areas": ["lobby", "corridor"] } } }' ``` ### 5. 高级功能测试 #### 5.1 批量操作测试 ```bash # 测试批量状态查询 curl -X POST http://localhost:8000/mcp/call \ -H "Content-Type: application/json" \ -d '{ "method": "batch_get_robot_statuses_v1", "params": { "serial_numbers": ["机器人1", "机器人2", "机器人3"] } }' ``` #### 5.2 地图管理测试 ```bash # 测试地图列表 curl -X POST http://localhost:8000/mcp/call \ -H "Content-Type: application/json" \ -d '{ "method": "list_robot_maps", "params": {"robot_sn": "你的机器人序列号"} }' # 测试地图分区查询 curl -X POST http://localhost:8000/mcp/call \ -H "Content-Type: application/json" \ -d '{ "method": "get_map_subareas", "params": {"map_id": "地图ID"} }' ``` #### 5.3 指令管理测试 ```bash # 创建指令 curl -X POST http://localhost:8000/mcp/call \ -H "Content-Type: application/json" \ -d '{ "method": "create_robot_command", "params": { "serial_number": "机器人序列号", "command_type": "START_TASK", "command_parameter": { "startTaskParameter": { "cleaningMode": "__middle_cleaning" } } } }' # 查询指令历史 curl -X POST http://localhost:8000/mcp/call \ -H "Content-Type: application/json" \ -d '{ "method": "list_robot_commands", "params": {"serial_number": "机器人序列号"} }' ``` ## 🔍 问题排查 ### 常见错误及解决方案 #### 1. "Missing required environment variables" **原因**: 未设置API凭证 **解决**: 设置正确的环境变量或.env文件 #### 2. "No module named 'mcp'" **原因**: 依赖未安装 **解决**: 运行 `uv pip install -r requirements.txt` #### 3. "API returned error: PERMISSION_DENIED" **原因**: API凭证无效或权限不足 **解决**: 检查凭证有效性,确认API权限 #### 4. "Robot serial number not found" **原因**: 机器人序列号不存在 **解决**: 先调用 `list_robots` 获取有效的序列号 ### 调试技巧 #### 1. 启用详细日志 ```python # 在main.py中修改日志级别 logging.basicConfig(level=logging.DEBUG, format=LOG_FORMAT, datefmt=DATE_FORMAT) ``` #### 2. 检查API响应 ```bash # 查看完整的API响应 curl -v -X POST http://localhost:8000/mcp/call \ -H "Content-Type: application/json" \ -d '{"method": "list_robots", "params": {}}' ``` #### 3. 验证端点配置 ```python # 运行端点检查 python -c " from src.gs_openapi.core.endpoints import ALL_ENDPOINTS for name, endpoint in ALL_ENDPOINTS.items(): print(f'{name}: {endpoint.method.value} {endpoint.full_path}') " ``` ## 🎯 测试检查清单 ### 基础功能 ✅ - [ ] 环境变量设置正确 - [ ] MCP服务器正常启动 - [ ] 认证token获取成功 - [ ] 基础API调用成功 ### M线机器人 🟦 - [ ] V1状态查询正常 - [ ] 批量状态查询正常 - [ ] 指令创建和查询正常 - [ ] M线任务工作流正常 - [ ] 任务报告查询正常 ### S线机器人 🟩 - [ ] V2状态查询正常 - [ ] 站点信息获取正常 - [ ] 地图分区查询正常 - [ ] 临时任务下发正常 - [ ] S线工作流正常 ### 高级功能 ⭐ - [ ] 批量操作正常 - [ ] 地图管理功能正常 - [ ] 指令历史查询正常 - [ ] 任务报告生成正常 - [ ] 错误处理正常 ## 📊 预期测试结果 **成功标准**: - 所有基础API返回正常响应(非错误状态码) - M线和S线工作流能够完成多步操作 - 批量操作能够处理多个机器人 - 错误情况下返回有意义的错误信息 **如果所有测试通过,说明Gausium OpenAPI MCP服务器已经可以投入生产使用!** 🚀

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/cfrs2005/mcp-gs-robot'

If you have feedback or need assistance with the MCP directory API, please join our Discord server