← Back to directory
R

ROS MCP Server

Community
Connect AI models to ROS robots through MCP.
Category
Other #168 of 230
Stars
★ 1.5k Very popular
Transport
stdio (local process)
Runtime
Python 3.10+ · Prebuilt binary
Credentials
No credential needed
License
Apache-2.0
Last commit
47FMRS · D

This MCP server targets ROS robot control, observation, and diagnosis. The source explicitly documents ROS 1 and ROS 2 support, stdio transport, and compatibility with several MCP clients; it does not provide canonical tool names, a client configuration example, authentication details, or evidence of upstream official maintenance.

Strongest · Documentation 11/20 Weakest · Security and permissions 6/20

Reliability
9/20
Security and permissions
6/20
Maintenance
11/20
Documentation
11/20
Setup experience
10/20
Why each score
Reliability 9/20
The manifest specifies a PyPI package, stdio transport, and the ros-mcp executable, while the README describes operations over ROS topics, services, actions, and parameters, making a basic startup path plausible. The supplied material contains no CI, committed tests, tool inventory, error-handling details, or reproducible evidence for initialization, tool listing, or edge cases, so the static calibration requires a deduction.
Security and permissions 6/20
The README explicitly describes robot control, message publication, service and action calls, and real-time state access, establishing meaningful physical and data side effects. The material does not demonstrate least privilege, confirmation for dangerous operations, authorization, authentication, data boundaries, or network-flow disclosure; permissions are even listed as a future feature. There is no evidence of malware, credential theft, or a clearly unconditional irreversible operation, so no red line is triggered, but the security evidence is weak.
Maintenance 11/20
The project has an Apache-2.0 license, a clear GitHub repository, version 3.1.0, and a PyPI publication path; the README also displays a recent-commit indicator and provides contribution guidance. The supplied material lacks dated release history, dependency-update practice, a security-response channel, maintainer accountability, or evidence of issue response. Stars and open-issue counts are discovery signals only and add no points, so this remains a mid-range score.
Documentation 11/20
The README covers ROS compatibility, core capabilities, several practical examples, an installation-guide link, supported clients, and licensing, providing a useful overview. It does not include the installation-guide contents, authentication guidance, tool parameters and limits, permission boundaries, troubleshooting, cost considerations, or failure behavior. The README and manifest alone cannot verify those details, so substantial points are deducted.
Setup experience 10/20
The manifest supplies the PyPI package ros-mcp 3.1.0 and the stdio command ros-mcp; the README lists Python 3.10+, pip 23.0+, and an installation-guide entry point. However, the supplied material lacks concrete installation commands, ROS/rosbridge preparation steps, mainstream client configuration examples, platform-specific guidance, and connection verification steps. This supports a moderate score only, with the static-evidence limit also applying.

Static review · not runListed 2026-08-14

Read the FMRS scoring method →

Fit and risk

What it can accessRuns commands or codeUses the network

Best for

  • Robotics developers using ROS 1 or ROS 2
  • Teams that want MCP clients to observe or control robots
  • Robot diagnosis, experimentation, and simulation

Not for

  • Systems that do not use ROS or ROS 2
  • AI applications expected to run independently without a ROS connection
  • Production deployments requiring guaranteed authentication or authorization, which are not described in the source

Required permissions

  • Access ROS topics, services, actions, and parameters
  • Read sensor data and robot state
  • Publish messages, call services or actions, and set parameters when requested
  • Add a rosbridge node to the existing ROS setup

Risks and side effects

  • Natural-language requests may trigger control operations on real robots
  • Changing parameters or calling services and actions may affect robot state and surrounding equipment
  • The source does not describe authentication, authorization, or safety controls

Setup

Before you start

Runtime:Python 3.10+ · Prebuilt binary

Follow the project's installation guide. The server is distributed as the ros-mcp package on PyPI and runs the ros-mcp executable over stdio.

Check that it works

Launch the server via the `ros-mcp` stdio command in your MCP client, confirm ROS-related tools appear in the client's tool list, then ask the model to list available robot topics to verify the rosbridge connection.

Troubleshooting

  1. Confirm that installation was completed according to the installation guide
  2. Confirm that the client supports MCP and is configured to launch ros-mcp
  3. Confirm that the ROS or ROS 2 environment is running
  4. Confirm that a rosbridge node has been added to the existing ROS setup
  5. Check that the client and server use stdio transport

Things to try

Once connected, you can ask your AI assistant things like:

  • List the available topics, services, and actions on my robot along with their types
  • Command the robot in natural language to navigate to the living room
  • Read the robot's sensor data and report its current state
  • Call the end effector's service to test whether the gripper works

Use cases

Control ROS robots with natural-language instructions
Read sensor data and monitor robot state
Publish to and subscribe to ROS topics
Call ROS services and actions
Diagnose industrial robot end effectors
Control a simulated Unitree Go2 in NVIDIA Isaac Sim

Supported clients

Claude Code
Codex
Gemini CLI
Claude Desktop
ChatGPT
Cursor

Listed from the project's documentation, not tested by this site.

Overview

ROS MCP Server connects large language models such as Claude, GPT, and Gemini to robots through MCP and ROS. It provides bidirectional communication without changes to existing robot source code and can discover and use ROS topics, services, actions, and parameters. The server supports ROS 1 and ROS 2.

Similar servers

BioMCP 75 · B

One binary. One grammar. Evidence from the biomedical sources you already trust.

★ 659 · Tools 11 Compare with this →

Source revision 476591ac058f Data synced 2026-10-19 Read the FMRS scoring method