概述
ROS MCP 服务器旨在支持机器人执行复杂任务并有效适应各种环境,它提供一组函数,将用户通过 LLM 输入的自然语言命令转换为用于机器人控制的 ROS 命令。此外,通过利用rosbridge
,它可以配置为与ROS
和ROS2
系统兼容,其基于 WebSocket 的通信使其能够广泛适用于各种平台。
基于该项目的研究可以在下面链接的视频中找到。
支持的类型
- 几何信息/扭曲
- sensor_msgs/图像
- sensor_msgs/联合状态
特征
- 基于 WebSocket 的通用兼容性:使用 rosbridge 与 ROS 和 ROS2 系统进行通信,无论 ROS 版本如何,都能实现无缝集成。
- 跨平台支持:适用于 Linux、Windows 和 MacOS,适用于不同的开发和部署环境。
- 轻松与 LLM 和 AI 系统集成:自然语言命令可以通过 MCP 功能直接转换为机器人动作。
- 可扩展的功能集:通过扩展MCP工具接口,轻松添加新的机器人控制或传感器功能。
- 无需修改 ROS 节点:无需更改机器人的核心代码即可与现有的 ROS/ROS2 主题和服务进行交互。
- 本机 ROS/ROS2 命令兼容性:可选择支持使用本地 ROS/ROS2 库,因此您可以运行本机 ROS 命令和工具以及基于 WebSocket 的控制。
贡献
欢迎投稿!
无论您是修正拼写错误、添加新功能还是提出改进建议,我们都非常感谢您的帮助。
请遵循贡献指南以获取有关如何为该项目做出贡献的更多详细信息。
安装
通过 Smithery 安装
要通过Smithery自动为 Claude Desktop 安装ros-mcp-server
:
本地安装
uv
安装
- 要安装
uv
,您可以使用以下命令:
或者
- 创建虚拟环境并激活它(可选)
MCP 服务器配置
将 MCP 设置设置为 mcp.json。
如果您使用 Claude Desktop,您可以使用以下命令找到 mcp.json:
- MacOS/Linux
- 视窗
MCP 功能
您可以在MCPFUNCTIONS.md中找到函数列表。
如何使用
1.设置IP和端口来连接rosbridge。
- 打开
server.py
并更改你的LOCAL_IP
、ROSBRIDGE_IP
和ROSBRIDGE_PORT
。(ROSBRIDGE_PORT
的默认值为9090
)
2.运行rosbridge服务器。
活性氧 1
ROS 2
3. 运行任何已导入ros-mcp-server
AI 系统。
4. 输入“使机器人向前移动。”。
5.检查rosbridge_server
和ros topic
。
rosbridge_server
ros topic
模拟测试
在 NVIDIA Isaac Sim 模拟环境中使用 MOCA 移动机械手进行基于 MCP 的控制。
Related MCP Servers
- AsecurityFlicenseAqualityEnables users to control the cursor in Figma through verbal commands using an agentic AI agent, streamlining the design process with a new interaction method.Last updated -192,5141JavaScript
- -securityFlicense-qualityA Python-based server that enables AI assistants to control robots by integrating the Model Context Protocol (MCP) with ROS 2, allowing for natural language commands that translate into robot movement via the /cmd\_vel topic.Last updated -42Python
- AsecurityAlicenseAqualityA server built on the Model Context Protocol that enables controlling the Unitree Go2 robot using natural language commands, which are translated into ROS2 instructions for the robot to perform corresponding actions.Last updated -126PythonApache 2.0
- -securityFlicense-qualityA Python server that enables remote control of Bittle robots via Bluetooth using the Model Context Protocol (MCP), allowing users to programmatically send movement and pose commands.Last updated -Python