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库兼容性
贡献
欢迎投稿!请随时提交拉取请求。
许可证
麻省理工学院
