ROS 2 MCP

v1.0.0Browser Automationstable

Advanced MCP Server ROS 2 bridging AI agents straight into robotics

aimcpmcp-servermcp-server-ros2ros2
Share:
77
Stars
0
Downloads
0
Weekly
0/5

What is ROS 2 MCP?

ROS 2 MCP is a Model Context Protocol (MCP) server that allows AI assistants like Claude, Cursor, and VS Code to advanced mcp server ros 2 bridging ai agents straight into robotics

Advanced MCP Server ROS 2 bridging AI agents straight into robotics

This server falls under the Browser Automation category on MCPgee, the world's largest MCP server directory with 33,000+ servers.

Features

  • Advanced MCP Server ROS 2 bridging AI agents straight into r

Use Cases

Robotics OS 2 integration
Robot control through natural language
Multi-robot coordination
wise-vision

Maintainer

LicenseMPL-2.0
Languagepython
Versionv1.0.0
UpdatedMay 13, 2026
Statushealthy
Maintenanceactive

Works with

ClaudeOpenAIwindowsmacoslinux

Installation

Manual Installation

npx ros2-mcp

Configuration

Configuration Details

Config File

claude_desktop_config.json

Performance

Response Metrics

Response Time< 200ms
ThroughputMedium

Resource Usage

Memory UsageLow
CPU UsageLow

How to Set Up and Use ROS 2 MCP

ROS 2 MCP is an advanced Python MCP server from WiseVision that bridges AI agents directly into ROS 2 robotic systems, enabling natural language interaction with live robots, simulations, and sensor streams. It exposes a comprehensive set of tools covering topic listing and subscription, message publishing, service calls, action goal management (send, cancel, wait for result, subscribe to feedback), message type schema discovery, and integration with WiseVision's Data Black Box for querying historical sensor data. Unlike simpler ROS 2 bridges, it supports nested message fields, auto QoS selection, and pre-built prompt templates for common workflows like health checks, topic relay, and diff monitoring — making it suitable for both rapid prototyping and production robot control scenarios.

Prerequisites

  • ROS 2 installed (Humble or Jazzy — both are supported)
  • Python 3 and uv package manager installed
  • A running ROS 2 system with active nodes, topics, and/or services
  • An MCP-compatible client such as Claude Desktop, VS Code Copilot, or Warp terminal
  • Docker (optional — a Docker Hub image is available for deployment without a local Python/ROS 2 dev environment)
1

Source your ROS 2 workspace

Source your ROS 2 installation before starting the MCP server. The server process needs access to ROS 2 Python bindings (rclpy) and any workspace packages that define custom message types.

source /opt/ros/humble/setup.bash
# If you have a custom workspace:
# source ~/my_ws/install/setup.bash
2

Clone the repository

Clone the ros2_mcp repository from WiseVision.

git clone https://github.com/wise-vision/ros2_mcp.git
cd ros2_mcp
3

Configure Claude Desktop

Add the ROS 2 MCP server to your claude_desktop_config.json. The server uses uv to manage its Python dependencies and stdio transport. Set the directory to the absolute path of your clone.

{
  "mcpServers": {
    "ros2": {
      "command": "uv",
      "args": ["--directory", "/path/to/ros2_mcp", "run", "mcp_ros_2_server"]
    }
  }
}
4

Verify using the MCP Inspector

Test the server independently of Claude Desktop using the MCP Inspector. This is the recommended debugging workflow since the server uses stdio and has no visible output when embedded in a client.

npx @modelcontextprotocol/inspector uv --directory /path/to/ros2_mcp run mcp_ros_2_server
5

Restart Claude Desktop and list topics

Restart your MCP client. With ROS 2 nodes running, ask Claude to list available topics using ros2_topic_list. The server auto-discovers the full ROS 2 graph including message type schemas.

6

Use built-in action prompts for common tasks

The server includes structured prompts for topic echo and analysis, node health checks, topic relay, and topic diff monitoring. Access these from your MCP client's prompt selector for guided multi-step robotics workflows.

ROS 2 MCP Examples

Client configuration

Claude Desktop configuration connecting to the ROS 2 MCP server via uv.

{
  "mcpServers": {
    "ros2": {
      "command": "uv",
      "args": ["--directory", "/home/user/ros2_mcp", "run", "mcp_ros_2_server"]
    }
  }
}

Prompts to try

Natural language commands for robot control and diagnostics through the ROS 2 MCP server.

- "List all available ROS 2 topics with their message types"
- "Subscribe to /scan for 3 seconds and analyze the laser scan data"
- "Publish a geometry_msgs/Twist message to /cmd_vel to move forward at 0.3 m/s"
- "Call the /reset_simulation service"
- "Send a navigation goal action to /navigate_to_pose to reach coordinates x=2.0, y=1.5"
- "Check if all expected topics for my robot are available and publishing at the expected rates"
- "Monitor /camera/depth/image_rect_raw and /camera/color/image_raw and show me if they are synchronized"

Troubleshooting ROS 2 MCP

Server starts but no topics or services are discovered

Check that ROS_DOMAIN_ID matches between the MCP server process and your ROS 2 nodes. The default is 0; if your nodes use a different domain, add 'ROS_DOMAIN_ID': '<value>' to the env block of the MCP server config.

rclpy import fails when the server starts

The uv environment used by the server needs ROS 2 to be sourced in the same shell session. Create a wrapper shell script that sources /opt/ros/<distro>/setup.bash before running the uv command, and point the MCP config to that script instead of uv directly.

Service calls or action goals fail for custom message types

Custom ROS 2 message and service types must be sourced before the MCP server starts. Add 'source ~/my_ws/install/setup.bash' before launching, or create a startup wrapper script that sources all required workspaces in order before invoking the uv run command.

Frequently Asked Questions about ROS 2 MCP

What is ROS 2 MCP?

ROS 2 MCP is a Model Context Protocol (MCP) server that advanced mcp server ros 2 bridging ai agents straight into robotics It connects AI assistants to external tools and data sources through a standardized interface.

How do I install ROS 2 MCP?

Follow the installation instructions on the ROS 2 MCP GitHub repository. Clone the repo, install dependencies, and add the server config to your AI client.

Which AI clients work with ROS 2 MCP?

ROS 2 MCP works with all major MCP-compatible AI clients including Claude Desktop, Claude Code, Cursor, VS Code (GitHub Copilot), Windsurf, and Cline.

Is ROS 2 MCP free to use?

Yes, ROS 2 MCP is open source and available under the MPL-2.0 license. You can use it freely in both personal and commercial projects.

Browse More Browser Automation MCP Servers

Explore all browser automation servers available in the MCPgee directory. Each server includes setup guides for Claude, Cursor, and VS Code.

Quick Config Preview

{ "mcpServers": { "ros2-mcp": { "command": "npx", "args": ["-y", "ros2-mcp"] } } }

Add this to your claude_desktop_config.json or .cursor/mcp.json

Read the full setup guide →

Ready to use ROS 2 MCP?

Browse our complete directory of 33,000+ MCP servers, read setup guides for your editor, and start building with the Model Context Protocol.

33,000+ ServersFree & Open SourceStep-by-Step Guides