ROS 2 MCP Server (MergeOS)
ROS2 topics, nodes, and services control for AI agents via standard CLI integration.
Data last scanned today · Reviewed today
Overview
The ROS 2 MCP Server allows AI assistants to interface directly with ROS 2 graphs. Instead of manually executing CLI commands, models can use this server to inspect nodes, monitor topics, trigger services, and manage actions programmatically.
Our verdict
With a security score of 43/100, this server is classified as high risk. The primary concern is that it lacks a read-only mode, meaning any AI agent connected to the server is granted full write access to your ROS 2 environment by default. It is recommended for users who operate in sandboxed or development environments, while those working on sensitive production robotics should exercise caution.
- Zero direct dependencies reduce potential supply-chain vulnerabilities.
- Active repository with recent commits.
- Includes helpful built-in diagnostic tools like the doctor command.
- Full write access is granted to all connected agents.
- Lacks support for secure OAuth authentication.
- Maintained by community contributors rather than the official ROS 2 vendor.
Tools
| Tool | Description | Risk |
|---|---|---|
| ros2_lappa_pose | Reads the Lappa /sim/pose endpoint or returns a deterministic mock pose. | low |
| ros2_lappa_cmd_vel | Sends a command to the Lappa /sim/cmd_vel endpoint or echoes a mock-safe cmd_vel. | medium |
Compatibility
| Client | Local | Docker | Remote | Read-only |
|---|---|---|---|---|
| Claude Desktop | ||||
| Cursor | ||||
| VS Code | ||||
| Windsurf | ||||
| ChatGPT |
Frequently asked questions
›What are the Python requirements for this server?
The server requires Python 3.11 or higher.
›What is the difference between mock mode and live mode?
Mock mode is the default and does not require a ROS2 installation, while live mode requires a functioning ROS2 graph to operate.
›How can I verify if the installation is successful?
You can use the commands 'ros2-mcp version', 'ros2-mcp doctor', or 'ros2-mcp demo' to verify the environment and connectivity.
›How do I configure the server for use with MCP hosts?
The server uses stdio for communication and should be configured with the command 'ros2-mcp' and arguments '["serve"]'.
›Does the server handle sensitive data in logs?
Yes, it uses redacted placeholders for runtime configuration values to ensure that MCP host transcripts and CI logs do not capture sensitive runtime data.
›Can I run this server inside a Docker container?
Yes, you can build a ROS2 Humble image with the server and run it using the provided Docker instructions, including serving MCP over stdio.
Badge
Maintain this server? Add the live badge to your README.