Unitree Go2 MCP Server

Unitree Go2 MCP Server

Control Unitree Go2 robot using natural language via Model Context Protocol.

55
Stars
10
Forks
55
Watchers
1
Issues
Unitree Go2 MCP Server is a server implementation based on the Model Context Protocol (MCP) that enables natural language command of the Unitree Go2 robot, interpreted by a large language model and translated into ROS2 instructions. This tool bridges AI-driven intent parsing with robot control through well-defined MCP functions. It includes configuration instructions for ROS2 environments, flexible integration with Claude Desktop and other AI systems, and direct interaction with the robot using contextual commands.

Key Features

Model Context Protocol (MCP) compliance
Natural language command interpretation
Integration with ROS2 environments (Foxy, Humble)
Direct control of Unitree Go2 robot
List of MCP functions for modular operations
Seamless setup instructions for robotics environments
Support for rosbridge connections
Contextual understanding of AI-driven commands
Configurable MCP server settings via JSON
Integration with Claude Desktop and other LLM-based assistants

Use Cases

Hands-free, natural language-driven robot operation
Programming complex tasks for Unitree Go2 using plain language
Connecting robotics systems to large language models for smart automation
Developing AI assistants that operate physical robots
Testing MCP-compliant function implementations in real robotics contexts
Integrating Unitree Go2 with research or educational AI projects
Remote robot control via AI platforms
Prototyping contextual robotics responses in dynamic environments
Enhancing human-robot interaction using conversational language
Empowering non-technical users to leverage robotics capabilities

README

Unitree Go2 MCP Server

ROS 2 Static Badge

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

bash
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:
bash
curl -LsSf https://astral.sh/uv/install.sh | sh

or

bash
pip install uv
  • Create virtual environment and activate it (Optional)
bash
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.

bash
{
    "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
bash
code ~/Library/Application\ Support/Claude/claude_desktop_config.json
  • Linux(Ubuntu)

You can install Claude Desktop to use claude-desktop-debian.

bash
code ~/.config/Claude/claude_desktop_config.json
  • Windows
bash
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.

bash
ros2 topic list

You should see the following topic:

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

Star History

Star History Chart

Repository Owner

lpigeon
lpigeon

User

Repository Details

Language Python
Default Branch main
Size 86,505 KB
Contributors 2
License Apache License 2.0
MCP Verified Nov 12, 2025

Programming Languages

Python
100%

Tags

Topics

go2 go2-mcp-server mcp mcp-server modelcontextprotocol ros2 unitree unitree-go2 unitree-go2-mcp-server

Join Our Newsletter

Stay updated with the latest AI tools, news, and offers by subscribing to our weekly newsletter.

We respect your privacy. Unsubscribe at any time.

Related MCPs

Discover similar Model Context Protocol servers

  • ROS MCP

    ROS MCP

    Natural language interface for controlling ROS robots using the Model Context Protocol

    ROS MCP is a server that implements the Model Context Protocol (MCP) to enable natural language control of robots in ROS environments. It facilitates communication with ROS topics, services, and actions, supporting any ROS message type. The system integrates with GUI tools through a socket server and can be used with Claude Desktop for interactive robot management. Key functionalities include topic management, node control, service interaction, and process management for ROS2-powered robots.

    • 26
    • MCP
    • Yutarop/ros-mcp
  • Google Workspace MCP Server

    Google Workspace MCP Server

    Full natural language control of Google Workspace through the Model Context Protocol.

    Google Workspace MCP Server enables comprehensive natural language interaction with Google services such as Calendar, Drive, Gmail, Docs, Sheets, Slides, Forms, Tasks, and Chat via any MCP-compatible client or AI assistant. It supports both single-user and secure multi-user OAuth 2.1 authentication, providing a production-ready backend for custom apps. Built on FastMCP, it delivers high performance and advanced context handling, offering deep integration with the entire Google Workspace suite.

    • 890
    • MCP
    • taylorwilsdon/google_workspace_mcp
  • Godot MCP

    Godot MCP

    A Model Context Protocol (MCP) server implementation using Godot and Node.js.

    Godot MCP implements the Model Context Protocol (MCP) as a server, leveraging the Godot game engine along with Node.js and TypeScript technologies. Designed for seamless integration and efficient context management, it aims to facilitate standardized communication between AI models and applications. This project offers a ready-to-use MCP server for developers utilizing Godot and modern JavaScript stacks.

    • 1,071
    • MCP
    • Coding-Solo/godot-mcp
  • Octocode MCP

    Octocode MCP

    Enterprise-grade AI context server for codebase research and analysis.

    Octocode MCP is a Model Context Protocol (MCP) server designed to enable AI assistants to search, analyze, and extract insights from millions of GitHub repositories with high security and token efficiency. It offers intelligent orchestration for deep code research, planning, and agentic workflows, streamlining the process of building and understanding complex software projects. The platform features robust tools and commands, such as /research for expert code research, designed to support developers and AI systems with context-rich information.

    • 577
    • MCP
    • bgauryy/octocode-mcp
  • PMCP

    PMCP

    Golang Model Context Protocol server for natural language Prometheus queries

    PMCP implements a Model Context Protocol (MCP) server in Go, enabling natural language access and manipulation of Prometheus metrics. It maintains full consistency with the Prometheus HTTP API and supports a robust, type-safe interface for seamless integration with MCP-compatible clients. The server offers complete Prometheus API coverage and supports multiple transport methods, including HTTP and Server-Sent Events. Its modular architecture is designed for performance, extensibility, and effective error handling.

    • 3
    • MCP
    • yshngg/pmcp
  • godoc-mcp

    godoc-mcp

    Token-efficient Go documentation server for LLMs using Model Context Protocol.

    godoc-mcp is a Model Context Protocol (MCP) server that provides efficient, structured access to Go package documentation for large language models. It enables LLMs to understand Go projects without reading entire source files by supplying essential documentation and source code at varying levels of granularity. The tool supports project navigation, automatic module setup, caching, and works offline for both standard and third-party Go packages.

    • 88
    • MCP
    • mrjoshuak/godoc-mcp
  • Didn't find tool you were looking for?

    Be as detailed as possible for better results