mcp-registry/ros-mcp-server

    ==================
      
       /// MCP ///
      /// ROS ///
        
    ==================
        
    [server:online]
    [protocol:ready]

ros-mcp-server

by lpigeon

ROS/ROS2 Model-Context-Protocol (MCP) server that converts natural-language commands from an LLM into ROS/ROS2 messages via rosbridge WebSocket.

148
31
Open Source

Installation

1. Prerequisites:
• ROS 1 (Noetic) or ROS 2 (Humble/Foxy) installed and sourced in your shell.
• Python ≥3.8
• pip ≥22
• (Optional) An LLM key (e.g. OPENAI_API_KEY) exported in your environment if you intend to use cloud-hosted models.
2. Clone the server:
git clone https://github.com/lpigeon/ros-mcp-server.git cd ros-mcp-server
3. Install Python dependencies:
python -m venv .venv source .venv/bin/activate pip install -r requirements.txt
4. Build ROS/ROS2 message packages (if the repo contains custom msgs):
colcon build # (ROS2) or catkin_make # (ROS1) source install/setup.bash # or devel/setup.bash for ROS1
5. Configure the server (edit config.yaml):
• Set the ROS_MASTER_URI / ROS_DOMAIN_ID as needed.
• Configure the LLM provider section with your API key and model name.
6. Run the MCP server:
python -m ros_mcp_server # or, if provided, use the launch file ros2 launch ros_mcp_server mcp_server.launch.py
7. Test:
curl -X POST http://localhost:8000/command -d '{"text": "Move to kitchen"}' # Robot should receive the translated ROS/ROS2 command.

Documentation

License: MIT License
Updated 7/30/2025
ros-mcp-server - MCP Server Registry - Augment Code