
Overview

2025.05.09
0
Python机器人控制自然语言处理其它
ROS MCP Server 是一个专为机器人设计的控制框架,通过将自然语言命令转换为ROS命令来控制机器人。它支持ROS和ROS2系统,利用rosbridge实现跨平台通信,适用于多种开发环境。该服务器具有WebSocket通信、跨平台支持、与LLM和AI系统集成、可扩展功能集等特性,无需修改现有ROS节点即可实现机器人控制。
View on GitHub
Overview
基本能力
产品定位
ROS MCP Server 是一个机器人控制框架,旨在通过自然语言命令控制机器人,支持ROS和ROS2系统,适用于机器人开发和研究。
核心功能
- WebSocket通信:支持ROS和ROS2系统,通过rosbridge实现无缝集成。
- 跨平台支持:可在Linux、Windows和MacOS上运行。
- 与LLM和AI系统集成:将自然语言命令直接转换为机器人动作。
- 可扩展功能集:通过扩展MCP工具接口添加新的机器人控制或传感器功能。
- 无需修改ROS节点:与现有ROS/ROS2主题和服务交互,无需修改机器人核心代码。
- 原生ROS/ROS2命令兼容:支持本地ROS/ROS2库,可同时使用WebSocket和原生ROS命令。
适用场景
- 机器人控制研究
- 自然语言交互机器人开发
- 跨平台机器人应用开发
- 机器人模拟环境测试
工具列表
- rosbridge:用于ROS和ROS2系统的WebSocket通信。
- uv:用于虚拟环境管理和依赖安装。
常见问题解答
- 如何连接rosbridge?:在
server.py
中设置LOCAL_IP
、ROSBRIDGE_IP
和ROSBRIDGE_PORT
。 - 如何启动rosbridge?:ROS1使用
roslaunch rosbridge_server rosbridge_websocket.launch
,ROS2使用ros2 launch rosbridge_server rosbridge_websocket_launch.xml
。
使用教程
使用依赖
- 安装
uv
:
curl -LsSf https://astral.sh/uv/install.sh | sh
或
pip install uv
- 创建并激活虚拟环境(可选):
uv venv
source .venv/bin/activate
安装教程
- 通过Smithery安装:
npx -y @smithery/cli install @lpigeon/ros-mcp-server --client claude
- 本地安装:
- 配置
mcp.json
文件,设置ros-mcp-server
的命令和参数。
调试方式
- 设置rosbridge连接信息:
-
修改
server.py
中的LOCAL_IP
、ROSBRIDGE_IP
和ROSBRIDGE_PORT
。 -
启动rosbridge服务器:
- ROS1:
roslaunch rosbridge_server rosbridge_websocket.launch
- ROS2:
ros2 launch rosbridge_server rosbridge_websocket_launch.xml
-
运行导入
ros-mcp-server
的AI系统。 -
输入自然语言命令(如“Make the robot move forward.”)并检查
rosbridge_server
和ros topic
的输出。