Connect AI models like Claude & ChatGPT with ROS robots using MCP
The ROS MCP Server connects AI models like Claude and ChatGPT with ROS/ROS2 robots using the Model Context Protocol (MCP). It exposes a bridge between model reasoning and robotic control contexts, enabling model-driven instruction and context sharing within ROS ecosystems.
๐ ๏ธ Key Features
ROS and ROS2 MCP server implementation
Supports model-context communication via MCP
Python 3.10+ compatibility
Dev container ready for streamlined onboarding
Open-source under Apache 2.0
๐ Use Cases
Integrating AI model reasoning with ROS robot control loops
Sharing model context between cloud LLMs and onboard ROS nodes
Enabling dynamic context updates for robotic applications
โก Developer Benefits
Clear ROS/ROS2 MCP integration path
Reusable MCP components for model-context exchange
Easy local development with containerized setup
Transparent open-source repository with active maintenance
โ ๏ธ Limitations
As described, focused on ROS/ROS2 environments; may require ROS setup
Performance depends on network and model latency
Documentation in readme excerpt; deeper usage details may be in repo
ROS-MCP-Server connects large language models (such as Claude, GPT, and Gemini) to robots, enabling bidirectional communication with no changes to existing robot source code.
Why ROS-MCP?
No robot source code changes โ just add the rosbridge node to your existing ROS setup.
True two-way communication โ LLMs can both control robots and observe everything happening on the Robot.
Full context โ publish & subscribe to topics, call services & actions, set parameters, read sensor data, and monitor robot state in real time.
Deep ROS understanding โ guides the LLM to discover available topics, services, actions, and their types (including custom ones) โ enabling it to use them with the right syntax without manual configuration.
Works with any MCP client โ built on the open MCP standard, supporting Claude Code, Codex CLI, Gemini CLI, Claude Desktop, ChatGPT, Cursor, and more.
Works across ROS versions โ compatible across ROS 2 (Jazzy, Humble, and others) and ROS 1 distros.
๐ค Example - Controlling "Wilson" with natural language (video)
From a single prompt โ "Grab a Coke from the fridge & go to the living room." โ Google Gemini uses the MCP server to navigate and manipulate autonomously. Built on ROS 2 with Nav2 (SLAM) for mapping and navigation, and MoveIt to command the manipulator.
๐ Example - Controlling Unitree Go2 in NVIDIA Isaac Sim (video)
The MCP server connects Claude to a simulated Unitree Go2 quadruped in NVIDIA Isaac Sim, interpreting natural language commands to navigate and control the robot.