GO2 Sport MCP Server
by CuteCar384
README.md
# GO2 运动控制脚本与 MCP 服务
当前目录现在同时提供:
- [go2_motion_control.py](/home/huang/xxx_go2sport/go2_motion_control.py):命令行脚本
- [server.py](/home/huang/xxx_go2sport/server.py):FastMCP 服务
- [mcp_server.json](/home/huang/xxx_go2sport/mcp_server.json):MCP 配置示例
底层都通过 ROS2 向 `/api/sport/request` 发布 `unitree_api/msg/Request` 控制 GO2。
## 命令行用法
```bash
cd /home/huang/xxx_go2sport
python3 go2_motion_control.py forward --duration 2
python3 go2_motion_control.py backward --duration 2
python3 go2_motion_control.py left --duration 2
python3 go2_motion_control.py right --duration 2
python3 go2_motion_control.py stop
python3 go2_motion_control.py move --vx 0.2 --vy 0.0 --vyaw 0.3 --duration 3
```
## MCP 启动
stdio 模式:
```bash
cd /home/huang/xxx_go2sport
python3 server.py
```
或:
```bash
cd /home/huang/xxx_go2sport
./run_mcp_server.sh
```
HTTP 模式:
```bash
cd /home/huang/xxx_go2sport
python3 server.py --transport streamable-http --host 127.0.0.1 --port 8000
```
## MCP 工具
- `go2_drive_direction`
- `go2_move`
- `go2_stand_up`
- `go2_stop`
- `go2_motion_defaults`
## MCP 配置
示例文件见 [mcp_server.json](/home/huang/xxx_go2sport/mcp_server.json)。
如果你要把它放进 Claude Code / Cursor 的 MCP 配置,可直接用:
```json
{
"mcpServers": {
"go2-sport-control": {
"command": "python3",
"args": [
"/home/huang/xxx_go2sport/server.py"
],
"env": {
"PYTHONPATH": "/home/huang/xxx_go2sport",
"GO2_REQUEST_TOPIC": "/api/sport/request",
"GO2_DEFAULT_LINEAR_SPEED": "0.3",
"GO2_DEFAULT_ANGULAR_SPEED": "0.8",
"GO2_DEFAULT_DURATION": "2.0",
"GO2_DEFAULT_RATE": "10.0",
"GO2_STAND_UP_WAIT": "1.5"
}
}
}
}
```
## 控制协议说明
- `MOVE` 请求 `api_id = 1008`
- `STOP_MOVE` 请求 `api_id = 1003`
- `STAND_UP` 请求 `api_id = 1004`
- `MOVE` 参数格式:`{"x": vx, "y": vy, "z": vyaw}`
`go2_drive_direction` 在未显式传 `speed` 时,前进/后退默认使用 `0.3 m/s`,左转/右转默认使用 `0.8 rad/s`。
This server cannot be deployed
Maintenance
ActivityInactive
ResponsivenessNo issues