article
README
🚀 安克创新扫地机器人MCP服务器
这是一个用于控制安克创新扫地机器人设备的模型上下文协议(MCP)服务器,采用TypeScript和Vite构建。
🚀 快速开始
📦 安装指南
- 安装依赖项:
npm install
- 获取设备凭证:
- 从安克创新智能家居应用程序或网络分析中获取设备ID和本地密钥。
- 在网络中查找扫地机器人的IP地址。
💻 使用示例
基础用法
# 以热重载模式运行开发环境
npm run dev
# 进行类型检查
npm run typecheck
高级用法
# 构建项目
npm run build
# 运行构建后的服务器
npm start
✨ 主要特性
可用工具
连接与设置
robovac_scan_network- 扫描本地网络以查找扫地机器人设备(🆕 无需凭证!)robovac_connect_discovered- 使用发现设备的IP地址进行连接。robovac_connect- 使用设备凭证进行手动连接。robovac_auto_initialize- 基于云端的发现功能(⚠️ 由于API变更,可能无法正常工作)
基本控制
robovac_start_cleaning- 开始清洁周期。robovac_stop_cleaning- 停止清洁周期。robovac_return_home- 返回充电座。robovac_play- 开始/继续清洁。robovac_pause- 暂停清洁。robovac_find_robot- 让扫地机器人发出蜂鸣声以定位它。
高级控制
robovac_set_work_mode- 设置清洁模式(AUTO、SMALL_ROOM、SPOT、EDGE、NO_SWEEP)。robovac_set_clean_speed- 设置吸力(STANDARD、BOOST_IQ、MAX、NO_SUCTION)。
状态信息
robovac_get_status- 获取当前设备状态(旧版)。robovac_get_battery- 获取电池电量。robovac_get_error_code- 获取当前错误代码。robovac_get_work_mode- 获取当前清洁模式。robovac_get_clean_speed- 获取当前吸力水平。robovac_get_work_status- 获取详细工作状态。robovac_get_play_pause- 获取播放/暂停状态。
实用函数
robovac_format_status- 将格式化后的状态信息打印到控制台。robovac_get_all_statuses- 一次性获取所有状态信息。
与MCP客户端配合使用
🆕 推荐:通过网络扫描轻松设置
- 扫描本地网络以查找扫地机器人设备:
robovac_scan_network()
此操作将显示以下信息:
- 所有开放涂鸦/安克创新端口(6668、6667、443)的设备。
- 具有安克创新MAC地址的设备(⭐ 可能是扫地机器人)。
- 潜在设备的IP地址。
- 连接到发现的设备:
robovac_connect_discovered(ip="192.168.1.100", deviceId="your_device_id", localKey="your_local_key")
获取设备凭证
你仍然需要设备ID和本地密钥,可以通过以下方式获取:
- 尝试社区工具:
eufy-security-client或类似项目。- 在GitHub上查找更新的凭证获取工具。
- 网络流量分析:
- 监控安克创新应用程序的网络流量。
- 使用Wireshark或Charles Proxy等工具。
- 路由器/固件方法:
- 部分路由器会记录设备信息。
- 检查扫地机器人固件是否会暴露凭证。
替代方法
手动连接(如果你已拥有所有凭证):
robovac_connect(deviceId="your_device_id", localKey="your_local_key", ip="192.168.1.100")
云端发现(由于API变更,可能无法正常工作):
robovac_auto_initialize(email="your@email.com", password="your_password")
控制你的扫地机器人
连接成功后,你可以使用任意控制工具:
robovac_start_cleaning()
robovac_get_status()
robovac_return_home()
robovac_set_work_mode(mode="SPOT")
robovac_set_clean_speed(speed="MAX")
微信扫一扫