ROS机器人语言模型集成服务

ROS-MCP-Server是一个连接大型语言模型(如Claude、GPT和Gemini)与现有机器人的服务,实现双向AI集成,无需修改现有机器人源代码即可通过自然语言控制机器人并实时监控ROS环境。

  • by ashank4595
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 Dog-101/ros-mcp-server

使用说明

ROS MCP服务器🧠⇄🤖

ROS MCP服务器将大型语言模型(如Claude、GPT和Gemini)与现有机器人连接起来,为它们提供双向AI集成。

在不更改现有机器人源代码的情况下,这可以实现:

  • 🗣 用自然语言指挥机器人 → 指令被翻译成ROS/ROS2命令。
  • 👀 让AI完全可见 → 订阅主题、调用服务、读取传感器数据和实时监控机器人状态。

✅ 关键利益

  • 无机器人代码更改 → 只需要添加 rosbridge 节点。
  • 真正的双向沟通 → LLM可以同时 控制 机器人和 观察 ROS中发生的一切(传感器、主题、参数)。
  • ROS1和ROS2支持 → 这两个版本都可以开箱即用。
  • MCP兼容 → 与任何支持MCP的LLM(Claude Desktop、Gemini、ChatGPT等)集成。

🎥 实例在行动

🖥️ 示例-在NVIDIA Isaac Sim中控制MOCA移动操纵器
命令输入到Claude Desktop中,该桌面使用MCP服务器直接驱动模拟机器人。


🐕 示例-用自然语言控制Unitree Go (视频)
MCP服务器使克劳德能够解释机器人摄像头的图像,然后根据人类自然语言命令命令机器人。


🏭 示例-调试工业机器人 (视频)

  • 连接到工业机器人使LLM能够浏览所有ROS主题和服务,以评估机器人状态。
  • 在没有预定义上下文的情况下,MCP服务器使LLM能够查询有关自定义主题和服务类型及其语法的详细信息(00:28)。
  • 操作员仅使用自然语言调用自定义服务来测试和调试机器人(01:42)。

⚙️ ROS MCP服务器的特点

  • 列出主题、服务和消息类型 → 探索机器人ROS环境中的所有可用内容。
  • 视图类型定义(包括自定义) → 理解任何消息的结构。
  • 发布/订阅主题 → 实时发送命令或流式传输机器人数据。
  • 呼叫服务(包括定制) → 触发机器人直接工作。
  • 获取/设置参数 → 动态读取或调整机器人设置。
  • 🔜 行动支持 → 即将推出对ROS Actions的支持。
  • 🔜 权限控制 → 管理访问权限以实现更安全的部署。

🛠 入门指南

MCP服务器与版本无关(ROS1或ROS2),可与任何兼容MCP的LLM一起使用。

安装

跟随 安装指南 有关分步说明:

  1. 克隆存储库
  2. 安装 uv 和 rosbridge
  3. 安装Claude Desktop(或任何启用MCP的客户端)
  4. 配置您的客户端以连接到ROS MCP服务器
  5. 开始 rosbridge 关于目标机器人

📚 更多示例和教程

浏览我们的 示例 查看服务器的运行情况。
我们欢迎社区公关提供新的示例和集成!


🤝 贡献

我们喜欢各种各样的贡献:

  • Bug修复和文档更新
  • 新功能(例如,操作支持、权限)
  • 其他示例和教程

看看 贡献指南 并查看标记的问题 好的第一期 开始吧。


📜 许可证

该项目根据 Apache许可证2.0.