- Explore MCP Servers
- unitree-go2-mcp-server
Unitree Go2 Mcp Server
What is Unitree Go2 Mcp Server
The Unitree Go2 MCP Server is a server built on the Model Context Protocol (MCP) that allows users to control the Unitree Go2 robot using natural language commands interpreted by a Large Language Model (LLM). These commands are converted into ROS2 instructions for the robot to execute actions.
Use cases
Use cases include controlling the Unitree Go2 robot in research projects, educational demonstrations, and developing applications that require intuitive control of robotic systems through natural language.
How to use
To use the Unitree Go2 MCP Server, set up the unitree_ros2 environment, clone the repository, install uv, and configure the MCP settings in mcp.json. After setup, you can run the server to interpret natural language commands.
Key features
Key features include natural language command interpretation, integration with ROS2, and the ability to control the Unitree Go2 robot seamlessly. It enhances user interaction with the robot by allowing commands in plain language.
Where to use
The Unitree Go2 MCP Server can be used in robotics research, educational environments, and any application requiring human-robot interaction where natural language processing is beneficial.
Clients Supporting MCP
The following are the main client software that supports the Model Context Protocol. Click the link to visit the official website for more information.
Overview
What is Unitree Go2 Mcp Server
The Unitree Go2 MCP Server is a server built on the Model Context Protocol (MCP) that allows users to control the Unitree Go2 robot using natural language commands interpreted by a Large Language Model (LLM). These commands are converted into ROS2 instructions for the robot to execute actions.
Use cases
Use cases include controlling the Unitree Go2 robot in research projects, educational demonstrations, and developing applications that require intuitive control of robotic systems through natural language.
How to use
To use the Unitree Go2 MCP Server, set up the unitree_ros2 environment, clone the repository, install uv, and configure the MCP settings in mcp.json. After setup, you can run the server to interpret natural language commands.
Key features
Key features include natural language command interpretation, integration with ROS2, and the ability to control the Unitree Go2 robot seamlessly. It enhances user interaction with the robot by allowing commands in plain language.
Where to use
The Unitree Go2 MCP Server can be used in robotics research, educational environments, and any application requiring human-robot interaction where natural language processing is beneficial.
Clients Supporting MCP
The following are the main client software that supports the Model Context Protocol. Click the link to visit the official website for more information.
Content
Unitree Go2 MCP Server
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
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 testin the repository linked above.
2. Clone this repository
git clone https://github.com/lpigeon/unitree-go2-mcp-server.git
cd unitree-go2-mcp-server
3. uv Installation
- To install
uv, you can use the following command:
curl -LsSf https://astral.sh/uv/install.sh | sh
or
pip install uv
- Create virtual environment and activate it (Optional)
uv venv
source .venv/bin/activate
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.
{
"mcpServers": {
"unitree-go2-mcp-server": {
"command": "uv",
"args": [
"--directory",
"/ABSOLUTE/PATH/TO/PARENT/FOLDER/unitree-go2-mcp-server",
"run",
"server.py"
]
}
}
}
If you use Claude Desktop, you can find mcp.json using the following command:
- MacOS
code ~/Library/Application\ Support/Claude/claude_desktop_config.json
- Linux(Ubuntu)
You can install Claude Desktop to use claude-desktop-debian.
code ~/.config/Claude/claude_desktop_config.json
- Windows
code $env:AppData\Claude\claude_desktop_config.json
How To Use
1. Set UNITREE_ROS2_SETUP_SH_PATH.
- Open
server.pyand change yourUNITREE_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.pyand change yourLOCAL_IP,ROSBRIDGE_IPandROSBRIDGE_PORT. (ROSBRIDGE_PORT’s default value is9090)
2. Check the Go2 robot is connected to the network.
Type the following command in the terminal.
ros2 topic list
You should see the following topic:
/wirelesscontroller
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!

Simple Task
This task is a comprehensive demo task showcasing the Unitree Go2 robot’s obstacle avoidance, direction changing, and user interaction capabilities.

Contributing
Contributions are welcome!
Whether you’re fixing a typo, adding a new function, or suggesting improvements, your help is appreciated.
Please follow the contributing guidelines for more details on how to contribute to this project.
Dev Tools Supporting MCP
The following are the main code editors that support the Model Context Protocol. Click the link to visit the official website for more information.










