机器人吸尘器控制服务器

Roborock MCP服务器是一个用于控制Roborock机器人吸尘器的模型上下文协议服务器,支持状态检查、清洁控制、地图获取等功能。

  • by jaxx2104
  • TypeScript
  • 本地部署
  • 3 星标
  • 更新于
在 GitHub 查看 jaxx2104/roborock-mcp-server

使用说明

Roborock MCP服务器

用于控制Roborock真空吸尘器的模型上下文协议(MCP)服务器, 使克劳德能够与您的机器人真空互动并控制您的机器人。

特性

  • 检查真空状态
  • 开始/停止/暂停清洁
  • 返回码头
  • 找到真空(播放声音)
  • 获取地图数据
  • 区域清洁
  • 房间特定清洁

先决条件

  • 数字1.37+
  • Python 3.8+
  • python roborock包

安装

安装Python依赖项

pip install python-roborock

环境变量

设置您的Roborock帐户凭据:

export ROBOROCK_USERNAME="your-roborock-username"
export ROBOROCK_PASSWORD="your-roborock-password"

或复制 .env.example 向 .env 并填写您的凭据。

用法

启动服务器

deno task start

发展模式

deno task dev

可用工具

真空状态

获取真空的当前状态。

{
  "name": "vacuum_status",
  "arguments": {
    "device_id": "optional-device-id"
  }
}

开始清洁

开始清洁操作。

{
  "name": "start_cleaning",
  "arguments": {
    "device_id": "optional-device-id"
  }
}

停止清洁

停止当前的清洁操作。

{
  "name": "stop_cleaning",
  "arguments": {
    "device_id": "optional-device-id"
  }
}

贫民区清洁

暂停当前的清洁操作。

{
  "name": "pause_cleaning",
  "arguments": {
    "device_id": "optional-device-id"
  }
}

返回_停靠

将真空泵送回充电座。

{
  "name": "return_to_dock",
  "arguments": {
    "device_id": "optional-device-id"
  }
}

位置_真空

播放声音以定位真空。

{
  "name": "locate_vacuum",
  "arguments": {
    "device_id": "optional-device-id"
  }
}

获取地图

从真空中检索地图数据。

{
  "name": "get_map",
  "arguments": {
    "device_id": "optional-device-id"
  }
}

区域清理

清洁由坐标定义的特定区域。

{
  "name": "zone_clean",
  "arguments": {
    "device_id": "optional-device-id",
    "zones": [[x1, y1, x2, y2], [x3, y3, x4, y4]]
  }
}

房间清洁

按房间ID清洁特定房间。

{
  "name": "room_clean",
  "arguments": {
    "device_id": "optional-device-id",
    "room_ids": ["room1", "room2"]
  }
}

Claude桌面配置

要与Claude Desktop一起使用,请将以下内容添加到您的 claude_desktop_config.json:

{
  "mcpServers": {
    "roborock": {
      "command": "deno",
      "args": [
        "run",
        "--allow-net",
        "--allow-read",
        "--allow-env",
        "/path/to/roborock-mcp/src/index.ts"
      ],
      "env": {
        "ROBOROCK_USERNAME": "your-username",
        "ROBOROCK_PASSWORD": "your-password"
      }
    }
  }
}

备注

  • 您必须设置 ROBOROCK_USERNAME 和 ROBOROCK_PASSWORD 环境 变量
  • 如果您有多个设备,默认情况下将使用第一个设备
  • 一些较新的Roborock型号(Q10、Q7等)可能不受支持,具体取决于 pythonroborock库兼容性

贡献

欢迎投稿!请随时提交拉取请求。

许可证

麻省理工学院