An LLM that reads the ROS graph and drives the robot
Robots already speak ROS — this MCP server lets Claude or GPT learn that vocabulary live and use it, without touching a line of robot code.

What it does
ROS-MCP-Server is a Python MCP server that connects LLM clients — Claude Desktop, Claude Code, Cursor, Codex CLI, Gemini CLI, ChatGPT — to robots running ROS 1 or ROS 2. It rides on the rosbridge node, so the robot side stays untouched: the model talks MCP on one end, ROS topics, services, actions, and parameters on the other. Communication is genuinely two-way — the LLM can drive the robot and watch what it’s doing, from sensor data to real-time state monitoring.
The interesting bit
The plumbing itself is honest glue — MCP to rosbridge, nothing scandalous. The actual contribution is that the server guides the LLM to introspect the live ROS graph: enumerating topics, services, and actions, including custom types, and querying their syntax so the model can use them correctly without anyone hand-writing tool descriptions. The robot effectively teaches the model its own API at runtime.
Key highlights
- Zero robot-side code changes — just add the
rosbridgenode to an existing setup - Full ROS surface: publish/subscribe, services, actions, parameters, sensor reads, state monitoring
- Runtime discovery of custom topic and service types, syntax included
- Cross-version support: ROS 2 (Jazzy, Humble, others) and ROS 1
- Demonstrated on a MOCA manipulator in Isaac Sim, a Unitree Go2 (camera interpretation included), and live debugging of an industrial robot
Caveats
- The feature list promises actions, yet “Action support” and “permissions” appear under future contributions — the README is unclear on how complete action support really is
- No permission layer yet, so an LLM gets broad robot access; demo accordingly
- The discovery mechanism’s internals aren’t documented in the README — you’re trusting the videos
Verdict If you run a ROS stack and want an LLM that can poke, probe, and pilot it — for debugging especially — this is the most direct route on offer. If you need safety interlocks or non-ROS hardware, keep walking.
Frequently asked
- What is robotmcp/ros-mcp-server?
- Robots already speak ROS — this MCP server lets Claude or GPT learn that vocabulary live and use it, without touching a line of robot code.
- Is ros-mcp-server open source?
- Yes — robotmcp/ros-mcp-server is open source, released under the Apache-2.0 license.
- What language is ros-mcp-server written in?
- robotmcp/ros-mcp-server is primarily written in Python.
- How popular is ros-mcp-server?
- robotmcp/ros-mcp-server has 1.5k stars on GitHub and is currently holding steady.
- Where can I find ros-mcp-server?
- robotmcp/ros-mcp-server is on GitHub at https://github.com/robotmcp/ros-mcp-server.