Unitree Go2 MCP Server

by lpigeon• 87•• Scanned•Claim this listing•Request removal
Othergo2go2 mcp servermcpmcp servermodelcontextprotocol

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.

Unitree Go2 MCP Server is an open-source mcp server by lpigeon, written mainly in Python, with 87 GitHub stars and the Apache-2.0 license. Its code was last updated Jun 10, 2026.

Unitree Go2 MCP Server

ROS 2 Static Badge

<center><img src="https://github.com/lpigeon/unitree-go2-mcp-server/blob/main/img/thumbnail.png" width="800"/></center>

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

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.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.

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.".

<center><img src="https://github.com/lpigeon/unitree-go2-mcp-server/blob/main/img/how_to_use_1.png" width="500"/></center>

5. Check the Go2 robot's movement.

<center><img src="https://github.com/lpigeon/unitree-go2-mcp-server/blob/main/img/how_to_use_2.gif" width="500"/></center>

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!

<center><img src="https://github.com/lpigeon/unitree-go2-mcp-server/blob/main/img/contextual_understanding.gif" width="800"/></center>

Simple Task

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

<center><img src="https://github.com/lpigeon/unitree-go2-mcp-server/blob/main/img/task_test.gif" width="800"/></center>

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.

Unitree Go2 MCP Server alternatives

View more →

Similar mcp servers in Other, ranked by GitHub stars. Compare licence, recent activity and scan status before you choose.

NameStarsLicenceLast updatedScan
Unitree Go2 MCP Server (this page)
lpigeon
87Apache-2.0Jun 10, 2026Scanned, no flagged issues
Github MCP Server
github
34kMITOct 30, 2026Scanned, no flagged issues
Fastapi MCP
tadata-org
12kMITNov 24, 2025Scanned, no flagged issues
GhidraMCP
LaurieWired
12kApache-2.0Oct 10, 2026Scanned, no flagged issues
MCP Go
mark3labs
9.2kMITOct 30, 2026Scanned, no flagged issues
Git MCP
idosal
8.5kApache-2.0May 8, 2026Scanned, no flagged issues