ros-mcp-server
ROS-MCP-Server connects large language models such as Claude, GPT and Gemini to existing robots, with two-way integration and no changes to the robot's source code beyond adding the `rosbridge` node. The README says you can command a robot in natural language, which is translated into ROS or ROS2 commands, and give the AI visibility by subscribing to topics, calling services, reading sensor data and monitoring robot state in real time. It lists features for listing topics, services and message types, viewing type definitions (including custom ones), publishing and subscribing to topics, calling services and getting or setting parameters.
It is version-agnostic: it works with ROS1 and ROS2 and with any MCP-compatible model. The README shows examples of controlling a MOCA mobile manipulator in NVIDIA Isaac Sim from Claude Desktop and controlling a Unitree Go robot in natural language. ROS Actions support and permission controls are marked as upcoming. Setup is in a separate installation guide (and an install-from-source guide), and there is a robot-mcp-client if you prefer a terminal over desktop LLM apps. It is Apache-2.0 licensed.