AgentStack
MCP verified Apache-2.0 Self-run

Ros Mcp

mcp-jonasneves-ros-mcp · by jonasneves

ROS MCP Server — connect AI agents to ROS 2 robots

No reviews yet
0 installs
13 views
0.0% view→install

Install

$ agentstack add mcp-jonasneves-ros-mcp

✓ scanned · ✓ verified — works with Claude Code, Cursor, and more.

Security review

✓ Passed

No issues found. Passed automated security review. · v0.1.0 How review works →

  • Prompt-injection patterns
  • Secret / credential exfiltration
  • Dangerous shell & filesystem operations
  • Untrusted network calls
  • Known-malicious package signatures

What it can access

  • Network access Used
  • Filesystem access No
  • Shell / process execution No
  • Environment & secrets No
  • Dynamic code execution No

From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.

Are you the author of Ros Mcp? Claim this listing to set pricing, connect Stripe payouts, and keep 70% of every sale.
Sign up to claim

About

ros-mcp

[](https://github.com/jonasneves/ros-mcp/actions/workflows/build-push.yml) [](LICENSE)

Drive ROS robots from an AI agent: a FastMCP server that reaches a robot over the rosbridge WebSocket and exposes its topics, services, nodes, parameters, and actions as 37 MCP tools — usable from Claude Code, Claude Desktop, Cursor, or any MCP client.

MCP client ──stdio/HTTP──▶ ros-mcp ──ws :9090──▶ rosbridge ──▶ ROS graph
(Claude, Cursor)                                              (topics, services,
                                                               nodes, actions, params)

The browser dashboard skips the Python server: roslibjs connects straight to rosbridge from the page, with an embedded AI chat panel.

| Mode | Best for | Bridge path | |---|---|---| | Browser dashboard | Quickest start, no install | page → rosbridge | | Python server — stdio | Claude Code (local) | client → ros-mcp → rosbridge | | Python server — HTTP | Claude Desktop, Cursor, remote | client → ros-mcp :9000 → rosbridge | | Remote CI server | Shared / cloud-hosted | client → hosted ros-mcp → rosbridge |

See [diagram.png](diagram.png) for the full picture.

Quick start

You need a running rosbridge (ros2 launch rosbridge_server rosbridge_websocket_launch.xml, default port 9090) — or use the bundled simulators below.

git clone https://github.com/jonasneves/ros-mcp && cd ros-mcp

Browser dashboard — open ros-mcp.github.io, enter your rosbridge WebSocket URL, connect. No install.

Claude Code (stdio)

make configure

Claude Desktop / Cursor (HTTP on :9000)

ROSBRIDGE_IP= make server-http
make configure-desktop

Remote CI server — uses the URL published by the GitHub Actions workflow:

make configure-remote

Docker simulators

3× Turtlesim — simulators and rosbridge start automatically; MCP server at http://localhost:9000/mcp:

make turtlesim

Isaac Sim — Linux + NVIDIA GPU, Isaac Sim installed, ROS 2 Bridge extension enabled:

make isaac-sim                           # rosbridge (FastDDS, host network)
ROSBRIDGE_IP=127.0.0.1 make server-http  # MCP server, separate terminal

On macOS or a remote host, point at a rosbridge already running alongside Isaac Sim: ROSBRIDGE_IP= make server-http.

Tools

| Group | Tools | |---|---| | Connection | connect_to_robot, ping_robot | | Topics | get_topics, get_topic_type, get_topic_details, get_message_details, subscribe_once, subscribe_for_duration, publish_once, publish_for_durations | | Motion | turn_by_angle, move_by_distance, move_robots | | Services | get_services, get_service_type, get_service_details, call_service | | Nodes | get_nodes, get_connected_robots, get_node_details | | Actions | get_actions, get_action_details, send_action_goal, get_action_status, cancel_action_goal | | Parameters | get_parameter, set_parameter, has_parameter, delete_parameter, get_parameters, get_parameter_details | | Robot config | detect_ros_version, get_verified_robots_list, get_verified_robot_spec, get_robot_description, get_joint_states | | Images | analyze_previously_received_image |

Full signatures, units, and examples: [docs/tools.md](docs/tools.md).

Configuration

| Variable | Default | Description | |---|---|---| | ROSBRIDGE_IP | 127.0.0.1 | rosbridge host | | ROSBRIDGE_PORT | 9090 | rosbridge port | | ROS_DEFAULT_TIMEOUT | 5.0 | Tool timeout in seconds |

License

Apache 2.0. See [LICENSE](LICENSE).

Source & license

This open-source MCP server is cataloged on AgentStack and links to its original source — we do not rehost the code.

Install and usage instructions live in the source repository linked above.

Reviews

No reviews yet — be the first.

Versions

  • v0.1.0 Imported from the upstream source.