Mcp Wyze Server

Mcp Wyze Server

🚀 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:从源代码安装

  1. 克隆仓库:
git clone https://github.com/aldilaff/mcp-wyze-server.git
cd mcp-wyze-server
  1. 使用 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 凭证,请按以下步骤操作:

  1. 访问 Wyze 开发者门户
  2. 如果你还没有开发者账户,请创建一个。
  3. 创建一个新的 API 密钥。
  4. 记录下你的 KEY_IDAPI_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             # 本文件

故障排除

常见问题

  1. 身份验证失败:确保你的 Wyze 凭证正确且 API 密钥有效。
  2. 设备未找到:设备 MAC 地址区分大小写。
  3. 连接超时:检查你的网络连接和 Wyze 服务状态。

调试模式

通过设置环境变量启用调试日志:

export MCP_DEBUG=true

贡献

欢迎贡献代码!请随时提交拉取请求。

  1. 分叉仓库。
  2. 创建你的功能分支 (git checkout -b feature/AmazingFeature)。
  3. 提交你的更改 (git commit -m 'Add some AmazingFeature')。
  4. 推送到分支 (git push origin feature/AmazingFeature)。
  5. 打开拉取请求。

📄 许可证

本项目采用 MIT 许可证 - 详情请参阅 LICENSE 文件。

致谢

  • Wyze SDK 提供了出色的 Python 库。
  • MCP 提供了模型上下文协议规范。
  • FastMCP 提供了 MCP 服务器框架。

免责声明

本项目与 Wyze Labs, Inc. 没有关联、未得到其认可或赞助。所有产品名称、徽标和品牌均为其各自所有者的财产。

  • 0 关注
  • 0 收藏,27 浏览
  • system 提出于 2025-10-04 09:45

相似服务问题

相关AI产品