🚀 MCP Wyze Server
MCP(模型上下文協議)服務器,藉助 wyze-sdk 庫實現對 Wyze 智能家居設備的控制。它為通過 Claude 等 AI 助手與 Wyze 設備交互提供了全面的接口,支持身份驗證、設備發現、設備控制以及組管理等功能。
🚀 快速開始
本 MCP 服務器為通過 Claude 等 AI 助手與 Wyze 設備交互提供了全面的接口,支持對各種 Wyze 智能家居產品進行身份驗證、設備發現、設備控制和組管理。
✨ 主要特性
- 身份驗證:使用 Wyze API 憑證進行安全登錄。
- 設備發現:列出並獲取所有 Wyze 設備的信息。
- 設備控制:開啟/關閉設備、調節亮度等。
- 組管理:一次性控制整個房間或一組設備。
- 即時資源:即時監控設備和組的狀態。
- 自動登錄:使用環境變量實現無縫身份驗證。
📦 安裝指南
前提條件
- Python 3.13+
- 擁有 API 憑證的 Wyze 開發者賬戶
uv 包管理器
安裝方式
選項 1:從 PyPI 安裝(推薦)
uv pip install mcp-wyze-server
或者使用 pip:
pip install mcp-wyze-server
選項 2:從源代碼安裝
- 克隆倉庫:
git clone https://github.com/aldilaff/mcp-wyze-server.git
cd mcp-wyze-server
- 使用 uv 安裝:
uv pip install -e .
或者構建並安裝:
uv build
uv pip install dist/*.whl
配置環境變量
安裝完成後,配置環境變量:
cp .env.example .env
編輯 .env 文件並添加你的 Wyze 憑證:
WYZE_EMAIL=your-email@example.com
WYZE_PASSWORD=your-password
WYZE_KEY_ID=your-key-id-here
WYZE_API_KEY=your-api-key-here
獲取 Wyze API 憑證
要獲取你的 Wyze API 憑證,請按以下步驟操作:
- 訪問 Wyze 開發者門戶。
- 如果你還沒有開發者賬戶,請創建一個。
- 創建一個新的 API 密鑰。
- 記錄下你的
KEY_ID 和 API_KEY。
💻 使用示例
獨立運行服務器
如果從 PyPI 安裝:
mcp-wyze-server
如果從源代碼運行:
uv run python src/mcp_wyze_server/server.py
與 Claude Desktop 集成
在你的 Claude Desktop MCP 設置中添加以下配置:
如果通過 pip/uv 全局安裝:
{
"mcpServers": {
"wyze": {
"command": "/Users/{yourusername}/.local/bin/uv",
"args": ["tool", "run", "mcp-wyze-server"],
"env": {
"WYZE_EMAIL": "your-email@example.com",
"WYZE_PASSWORD": "your-password",
"WYZE_KEY_ID": "your-key-id",
"WYZE_API_KEY": "your-api-key"
}
}
}
}
注意:將 /Users/yourusername/.local/bin/uv 替換為你實際的 uv 安裝路徑。你可以在終端中運行 which uv 來查找該路徑。
如果從源代碼運行(推薦用於開發):
{
"mcpServers": {
"wyze": {
"command": "/Users/yourusername/.local/bin/uv",
"args": [
"run",
"--directory",
"/path/to/mcp-wyze-server",
"python",
"src/mcp_wyze_server/server.py"
],
"env": {
"WYZE_EMAIL": "your-email@example.com",
"WYZE_PASSWORD": "your-password",
"WYZE_KEY_ID": "your-key-id",
"WYZE_API_KEY": "your-api-key"
}
}
}
}
注意:將 /Users/yourusername/.local/bin/uv 替換為你實際的 uv 路徑。
與其他 MCP 客戶端集成
此服務器使用標準輸入輸出傳輸,可以與任何支持該協議的 MCP 客戶端集成。
如果從 PyPI 安裝:
mcp-wyze-server
如果從源代碼運行:
uv run python /path/to/mcp-wyze-server/src/mcp_wyze_server/server.py
📚 詳細文檔
可用的 MCP 工具
身份驗證
wyze_login() - 使用環境變量登錄 Wyze 賬戶。
設備管理
wyze_get_devices() - 列出所有設備。
wyze_device_info(device_mac) - 獲取設備詳細信息。
wyze_get_device_status(device_mac) - 獲取準確的當前狀態(電源狀態、亮度等)。
基本設備控制
wyze_turn_on_device(device_mac) - 開啟設備。
wyze_turn_off_device(device_mac) - 關閉設備。
wyze_set_brightness(device_mac, brightness) - 設置亮度(0 - 100)。
增強燈光控制
wyze_set_color_temp(device_mac, color_temp) - 設置色溫(2700K - 6500K)。
wyze_set_color(device_mac, color) - 設置 RGB 顏色(十六進制格式)。
wyze_set_light_effect(device_mac, effect) - 設置視覺效果。
wyze_set_light_sun_match(device_mac, enabled) - 啟用/禁用陽光匹配。
wyze_clear_light_timer(device_mac) - 清除定時任務。
體重秤管理
wyze_get_scales() - 列出所有 Wyze 體重秤。
wyze_get_scale_info(device_mac) - 獲取體重秤詳細信息。
wyze_get_scale_records(device_mac, user_id, days_back) - 獲取體重/身體成分記錄。
資源
wyze://devices - 即時設備列表及狀態。
wyze://scales - 即時體重秤列表及家庭成員信息。
提示
wyze_device_control_prompt(device_name, action) - 生成控制提示。
wyze_scale_health_prompt(family_member_name, timeframe) - 生成健康分析提示。
支持的設備
此服務器支持多種 Wyze 設備類型,包括:
- 燈光(燈泡、燈帶)
- 開關
- 插頭
- 體重秤
- 鎖
- 攝像頭(基本控制)
- 恆溫器
- 等等...
開發
本項目使用以下工具:
- FastMCP:高性能 MCP 服務器框架。
- wyze-sdk:用於 Wyze 設備的全面 Python 接口。
- uv:快速 Python 包管理器。
項目結構
mcp-wyze-server/
├── src/
│ └── mcp_wyze_server/
│ ├── __init__.py
│ └── server.py # MCP 服務器實現
├── test_device.py # 設備測試工具
├── pyproject.toml # 項目依賴
├── .env.example # 環境變量模板
├── CLAUDE.md # Claude 開發指南
├── LICENSE # MIT 許可證
└── README.md # 本文件
故障排除
常見問題
- 身份驗證失敗:確保你的 Wyze 憑證正確且 API 密鑰有效。
- 設備未找到:設備 MAC 地址區分大小寫。
- 連接超時:檢查你的網絡連接和 Wyze 服務狀態。
調試模式
通過設置環境變量啟用調試日誌:
export MCP_DEBUG=true
貢獻
歡迎貢獻代碼!請隨時提交拉取請求。
- 分叉倉庫。
- 創建你的功能分支 (
git checkout -b feature/AmazingFeature)。
- 提交你的更改 (
git commit -m 'Add some AmazingFeature')。
- 推送到分支 (
git push origin feature/AmazingFeature)。
- 打開拉取請求。
📄 許可證
本項目採用 MIT 許可證 - 詳情請參閱 LICENSE 文件。
致謝
免責聲明
本項目與 Wyze Labs, Inc. 沒有關聯、未得到其認可或贊助。所有產品名稱、徽標和品牌均為其各自所有者的財產。