← all repositories
robotmcp/ros-mcp-server

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.

★1.5k stars Python Coding AssistantsAgents
ros-mcp-server
Velocity · 7d
+0.9
★ / day
Trend
→steady
star history

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

heatdrop uses Google Analytics to see which pages get read — nothing else. Your call. How we handle data.