关于 robot-mcp-server
robot-mcp-server 为 LLM、Agent 系统和自动化平台提供 Unitree 机器人与 DJI Tello 无人机的统一控制,并支持模拟和硬件后端。它还提供预设流程、序列执行及安全检查能力。
主要功能
- 01支持模拟与硬件后端
- 02统一配置及状态检查
- 03Unitree 与 DJI 控制工具
- 04预设流程与序列执行
- 05健康检查和紧急停止
适用场景
- 01无设备时验证控制流程
- 02执行机器人巡检动作
- 03执行无人机观察或扫描
- 04连接硬件前检查运行状态
MCP 相关
作为 MCP 服务向客户端提供机器人和无人机控制工具、状态资源及安全操作提示词。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
暂未收录安装方式
我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。
工具
还没有获取到工具列表
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
robot-mcp-server
一款更完善的机器人控制 MCP 服务,面向大模型、Agent 系统和自动化平台,可统一控制 Unitree 机器人和 DJI Tello 无人机。
改进内容
与原始版本相比,本项目现已成为更实用的工程基线,而不再是一个最小化原型:
- 同时支持
mock和hardware后端,无需真实设备即可验证工作流 - 新增统一配置层,支持环境变量和 CLI 覆盖配置
- 新增健康检查、状态检查、能力发现和全局紧急停止工具
- 内置适用于常见机器人工作流的例程模板
- 新增轻量级序列执行器,客户端可在单个请求中提交多个内置例程
- 强化适配器,提供更严格的参数验证和连接状态保护
- 修复缺失的依赖声明、脆弱的启动流程和不稳定的相对导入
- 新增单元测试和本地演示,便于验证和回归检查
项目结构
.
├── examples/
│ └── demo.py
├── src/
│ ├── __init__.py
│ ├── config.py
│ ├── dji_adapter.py
│ ├── exceptions.py
│ ├── main.py
│ ├── service.py
│ └── unitree_adapter.py
├── tests/
│ └── test_service.py
├── README.md
├── README.zh-CN.md
├── requirements.txt
└── run.ps1
安装
要求:
- Python 3.10+
- Windows PowerShell 或任何可运行 Python 的终端
安装依赖:
python -m venv .venv
.\.venv\Scripts\Activate.ps1
python -m pip install --upgrade pip
python -m pip install -r requirements.txt
默认包含:
mcpdjitellopy
如果要连接真实的 Unitree 硬件,还需安装对应的 SDK:
python -m pip install git+https://github.com/unitreerobotics/unitree_sdk2_python.git
快速开始
推荐使用 mock 模式启动:
.\run.ps1
或:
python -m src.main --backend mock --transport stdio
使用 HTTP 传输启动:
.\run.ps1 -Backend mock -Transport streamable-http -Host 127.0.0.1 -Port 8000
连接真实硬件:
python -m src.main --backend hardware --transport stdio
建议先在 mock 模式下验证工作流,再切换到 hardware 模式。
环境变量
| 变量 | 默认值 | 描述 |
|---|---|---|
ROBOT_MCP_BACKEND | mock | 后端模式:mock / hardware |
ROBOT_MCP_TRANSPORT | stdio | 传输方式:stdio / streamable-http |
ROBOT_MCP_HTTP_HOST | 127.0.0.1 | HTTP 绑定主机 |
ROBOT_MCP_HTTP_PORT | 8000 | HTTP 端口 |
ROBOT_MCP_LOG_LEVEL | INFO | 日志级别 |
ROBOT_MCP_UNITREE_TIMEOUT_SECONDS | 10 | Unitree 连接超时时间 |
ROBOT_MCP_DEFAULT_TAKEOFF_HEIGHT | 1.2 | DJI 默认起飞高度,单位为米 |
ROBOT_MCP_TELLO_HOST | empty | 指定的 Tello 主机 |
可用的 MCP 工具
通用工具:
server_statuslist_robot_capabilitieslist_robot_routinesrun_routine_sequencehealth_checkemergency_stop_all
Unitree 工具:
unitree_connectunitree_move(velocity, duration=1.0)unitree_stopunitree_statusunitree_disconnectunitree_move_and_stop(velocity, duration=1.0)unitree_out_and_back(velocity, forward_duration=1.0, return_duration=None)unitree_pulse_patrol(velocity, pulse_duration=0.8, pause_duration=0.3, cycles=3)unitree_inspection_sweep(velocity=1.0, forward_duration=1.0, checkpoint_pause=0.5, cycles=2)
说明:
velocity范围:-3.0 ~ 3.0米/秒duration范围:0.1 ~ 30.0秒
DJI 工具:
dji_connectdji_takeoff(height=None)dji_landdji_emergency_stopdji_statusdji_disconnectdji_takeoff_hover_land(height=None, hover_seconds=3.0)dji_quick_observe(height=None, hover_seconds=5.0)dji_perimeter_scan(height=None, hover_seconds=2.0, checkpoints=3)
说明:
height范围:0.2 ~ 10.0米- 省略
height时,将使用配置的默认值
内置例程
为节省客户端开发时间,服务包含多个组合操作:
unitree_move_and_stop如有需要则建立连接,执行一次移动并自动停止unitree_out_and_back向前移动、返回并停止,完成简单的往返巡逻unitree_pulse_patrol重复短时移动/暂停循环,适用于轻量级巡逻场景unitree_inspection_sweep执行简短的巡检例程,包括向前移动、在检查点停止并返回dji_takeoff_hover_land起飞、悬停指定时长并自动降落dji_quick_observe便捷的观察例程,包括起飞、悬停和降落dji_perimeter_scan轻量级空中扫描例程,包含多个悬停检查点
序列执行器
run_routine_sequence 允许客户端在一次请求中提交多个内置例程和 pause 步骤。
示例:
[
{
"action": "unitree_move_and_stop",
"params": {
"velocity": 1.0,
"duration": 1.2
}
},
{
"action": "pause",
"params": {
"duration": 1
}
},
{
"action": "dji_takeoff_hover_land",
"params": {
"height": 1.5,
"hover_seconds": 3
}
}
]
支持的序列操作:
pauseunitree_move_and_stopunitree_out_and_backunitree_pulse_patrolunitree_inspection_sweepdji_takeoff_hover_landdji_quick_observedji_perimeter_scan
资源和提示词
除工具外,服务还提供:
- 资源:
robot://status/summary - 提示词:
safe_operation_checklist(device)
本地演示
python examples\demo.py
测试
python -m unittest discover -s tests -v
使用提示
- 开发期间优先使用
mock模式 - 连接真实硬件前调用
health_check - 执行移动或起飞命令前检查
server_status - 发生问题时,先使用
emergency_stop_all
已知限制
- Unitree 硬件控制目前仍是轻量级 SDK 集成层,旨在作为扩展起点
- 当前测试主要覆盖
mock模式;真实硬件行为仍需进行现场集成测试 - 确切的
streamable-http行为取决于已安装的mcp软件包版本
许可证
评论
支持 Markdown
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。