🐍 🏠 🐧 - Control the Unitree Go2 robot with natural language commands interpreted by an LLM
Unitree Go2 MCP Server
以下摘录自该仓库的 README(片段) · 在 GitHub 读完整 README →
The **Unitree Go2 MCP Server** is a server built on the Model Context Protocol (MCP) that enables users to control the Unitree Go2 robot using natural language commands interpreted by a Large Language Model (LLM). These commands are translated into ROS2 instructions, allowing the robot to perform corresponding actions.
Requirements
- **Unitree Go2 robot**
- **Ubuntu 20.04 or 22.04**
- **ROS2 environment** : Humble(recommended) or Foxy
MCP Functions
You can find the list of functions in the MCPFUNCTIONS.md.
Installation
1. Setup unitree_ros2 environment
https://github.com/unitreerobotics/unitree_ros2
- **You need to complete the setup up to Step 2: Connect and test in the repository linked above.**
2. Clone this repository
3. uv Installation
- To install uv, you can use the following command:
or
- Create virtual environment and activate it (Optional)
4. MCP Server Configuration
Set MCP setting to mcp.json.
**Please keep in mind that the configuration must be done on the PC connected to the Go2.**
If you use Claude Desktop, you can find mcp.json using the following command:
- MacOS
- Linux(Ubuntu)
You can install Claude Desktop to use claude-desktop-debian.
- Windows
How To Use
1. Set UNITREE_ROS2_SETUP_SH_PATH.
- Open server.py and change your UNITREE_ROS2_SETUP_SH_PATH (eg. /home/lpigeon/unitree_ros2/setup.sh)
If you use rosbridge, you need Set IP and Port to connect rosbridge (Optional).
- Open server.py and change your LOCAL_IP, ROSBRIDGE_IP and ROSBRIDGE_PORT. (ROSBRIDGE_PORT's default value is 9090)
2. Check the Go2 robot is connected to the network.
Type the following command in the terminal.
You should see the following topic:
**If you don't see the topic, check the connection between the Go2 robot and the network.**
3. Run any AI system that has imported unitree-go2-mcp-server.
4. Type "Make the Go2 robot move forward at a velocity of 0.5 m/s for 3 seconds.".
5. Check the Go2 robot's movement.
6. Type what you want to do and Enjoy!
Contextual Understanding
When you type a command like "It looks like the Go2 is getting tired," the LLM interprets this contextually — understanding that the robot might need a break or some form of stretching!