Back to Home
robotmcp icon

ros-mcp-server

by robotmcp

Overview

Enables large language models (LLMs) to bidirectionally control and observe robots operating on ROS or ROS2 by translating natural language commands into robot actions and providing real-time sensor data feedback.

Installation

Run Command
ros-mcp --transport stdio

Environment Variables

  • ROSBRIDGE_IP
  • ROSBRIDGE_PORT
  • MCP_TRANSPORT
  • MCP_HOST
  • MCP_PORT
  • MCP_DOMAIN
  • DISPLAY

Security Notes

The server's core functionality relies on connecting to `rosbridge_server`, which by default lacks authentication, potentially allowing unauthorized command execution on the robot. The MCP server itself can expose an unauthenticated HTTP/Streamable-HTTP interface, especially when configured with `--host 0.0.0.0` or used with tunneling services like `ngrok` (as shown in examples), leading to high network exposure risks. The project explicitly states that 'Permission controls' are 'soon-to-be-implemented,' indicating a known missing security feature for safer deployments. Image data is saved to a fixed, overwritten local file (`./camera/received_image.jpeg`), which could be a denial-of-service vector if extremely large images are repeatedly streamed, though limited by the overwrite mechanism.

Similar Servers

Stats

Interest Score99
Security Score4
Cost ClassHigh
Avg Tokens10000
Stars936
Forks140
Last Update2026-01-19

Tags

ROSROS2RoboticsLLMAI