Unitree Go2 Mcp Server
@lpigeon
The Unitree Go2 MCP Server is a server built on the MCP that enables users to control the Unitree Go2 robot using natural language commands interpreted by a LLM.
Overview
What is Unitree Go2 Mcp Server?
The Unitree Go2 Mcp Server is a server built on the Model Context Protocol (MCP) that enables users to control a 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.
How to use Unitree Go2 Mcp Server?
Install the server on a PC connected to the Go2 robot, configure the MCP settings (mcp.json), set the path to unitree_ros2/setup.sh, and optionally configure rosbridge IP and port. Ensure the robot is on the same network (check for /wirelesscontroller topic using ros2 topic list). Then run any AI system that has imported the server and type natural language commands.
Key features of Unitree Go2 Mcp Server
- Natural language control of Unitree Go2 via LLM.
- Translates commands into ROS2 instructions.
- Supports contextual understanding of commands.
- Includes a demo task with obstacle avoidance and direction changing.
- Optional rosbridge support for remote connections.
Use cases of Unitree Go2 Mcp Server
- Controlling a Unitree Go2 robot with conversational AI.
- Programming robot movements without writing code.
- Demonstrating obstacle avoidance and interactive behaviors.
- Enabling non‑technical users to operate the robot.
- Rapid prototyping of robot actions via LLM.
FAQ from Unitree Go2 Mcp Server
What hardware and software are required?
You need a Unitree Go2 robot and a computer running Ubuntu 20.04 or 22.04 with a ROS2 environment (Humble recommended, Foxy also works).
How do I install the server?
Clone the repository, install uv, create a virtual environment, configure the MCP settings in mcp.json, and set the path to the unitree_ros2 setup script in server.py.
Can I use this server without a physical Go2 robot?
No, the server is designed exclusively for the Unitree Go2 robot. A physical robot on the same network is necessary for operation.
Does it require a specific transport or authentication?
The server uses the standard MCP stdio transport. It does not specify authentication requirements beyond network connectivity to the robot. Optional rosbridge can be used for remote connections.
What are the known limits?
The server depends on the unitree_ros2 environment being correctly set up and the robot being reachable on the network. The LLM’s interpretation of commands may vary; contextual understanding is demonstrated but not guaranteed for all inputs.