机器人控制服务

Cozmo-MCP是一个基于MCP协议的服务器,允许MCP客户端如Claude Desktop控制Cozmo机器人,支持连接、断开、图像捕获、移动控制等功能。

  • by builderpepc
  • Python
  • 本地部署
  • 4 星标
  • 更新于
在 GitHub 查看 builderpepc/Cozmo-MCP

使用说明

Cozmo MCP

基本的 主控程序 服务器用 FastMCP 这允许MCP客户端像 克劳德桌面 控制a 科兹莫 机器人(Digital Dream Labs和Anki的产品)。此MCP服务器使用 PyCozmo 库连接到Cozmo机器人并与之交互。

特性

以下是Cozmo MCP现在可以做的事情以及计划:

  • [x] 连接到Cozmo
  • [x] 断开与Cozmo的连接
  • [x] 从相机中捕获图像(代理可以处理)
  • [x] 移动左右车轮
  • [x] 原地转弯
  • [x] 设置头部角度
  • [x] 设置升降高度
  • [x] 从传感器读取读数(通过 RobotState 更新消息-包括有关位置、车轮、手臂/头部状态、运动、功率的详细信息)
  • []从悬崖传感器读取数据
  • []连接时控制摄像头配置(应启用,灰度或彩色)
  • []在扬声器上播放音频
  • []根据传感器读数移动(移动直到达到某个状态)
  • []在面部屏幕上显示文本/图像/形状
  • []控制面部动画
  • []设置背包浅色
  • []等待背包触摸传感器的事件
  • []从立方体传感器(电池、加速计、动画)读取读数
  • []NV RAM存储操作

有关Cozmo功能的更多详细信息,请查看 Pycozmo文档.

在Claude Desktop中设置

目前这只是一个玩具项目,所以我还没有把它做得非常便携。它将使用您的系统Python安装运行,您需要手动安装依赖项。

首先,克隆项目:

git clone https://github.com/builderpepc/Cozmo-MCP

然后,安装依赖项(根据您的Python配置根据需要进行调整):

cd Cozmo-MCP
python -m pip install -r requirements.txt

现在,打开你的 claude_desktop_config.json 文件。您可以在Claude Desktop设置中找到它。更新您的 mcpServers 基于以下所示内容。您需要更新Cozmo MCP目录的路径,并且可能需要更改 python 向 python3 这取决于您的配置。

{
  "globalShortcut": "",
  "mcpServers": {
    "cozmo-robot-server": {
      "command": "python",
      "args": ["C:/full-path-goes-here/Cozmo-MCP/server.py"]
    }
  }
}

如果有足够的兴趣,我会让它在Docker中运行,这样你就不需要手动安装任何东西(当然,Docker除外)。

对于其他MCP客户,请根据客户的文档调整这些说明。

连接到Cozmo并运行命令

在您的MCP客户端可以与Cozmo交互之前,您需要打开其wifi网络并连接到它。如果您使用的是Claude Desktop或任何其他未在设备上运行的LLM,您 必须同时连接到互联网和Cozmo的wifi网络 同时。这是因为PyCozmo通过wifi与Cozmo通信,就像官方的Cozmo应用程序一样。如果你使用的电脑一次只能连接到一个网络,你可能想给它一个有线互联网连接,这样它就可以使用wifi适配器与Cozmo通信。

有关打开Cozmo的wifi网络并连接到它的详细信息,请参阅 本部分 PyCozmo的README文件。请注意,在一段时间不活动后,wifi网络可能会关闭。一旦您连接到Cozmo的wifi,您的MCP客户端就可以开始发送命令。对于这些说明,Claude Desktop将用作MCP客户端。

如果编辑配置后尚未重新启动Claude Desktop,请重新启动。确保没有与启动Cozmo MCP服务器相关的错误。然后,创建一个新线程,告诉Claude连接到Cozmo并用它做点什么——例如,告诉它使用Cozmo拍照并告诉你什么是可见的。你也可以给它更模糊的命令,比如“通过移动Cozmo和拍照来探索房间,并报告你的观察结果”。克劳德将动态决定采取什么行动,甚至参考相机图像来通知下一步行动。

完成后,告诉克劳德断开与机器人的连接进行清理。

支持

Bug报告可以作为问题在这个GitHub存储库中发布。

Anki机器人爱好者组成了一个Discord社区 这里它与这个项目无关。

免责声明

该项目与PyCozmo维护者、Anki或Digital Dream Labs无关。