Hive智能家居控制服务

Hive MCP Server是一个通过Claude或任何MCP客户端控制Hive智能家居设备的服务,支持灯光、暖气、热水、智能插座等多种设备的远程管理。

  • by dmcdnet
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 dmcdnet/hivemcpsrvr

使用说明

Hive MCP服务器

MCP服务器包装 pyhive集成 通过Claude或任何MCP客户端控制Hive智能家居设备。

支持设备

设备 工具
灯光 获取状态、打开/关闭、设置亮度、色温、RGB颜色
加热 获取状态、设定温度、设定模式、增压开/关、获取时间表
热水 获取状态、设置模式、增压开/关、获取时间表
智能插头 获取状态/电源,打开/关闭
传感器 获取状态,集线器在线检查
报警(Home Shield) 获取状态/模式,设置模式
会话 登录、短信2FA、设备登录、列出设备、刷新令牌

设置

uv venv
uv pip install -e .

跑步

.venv/bin/hivemcpsrvr

Claude桌面配置

添加到 ~/.config/claude/claude_desktop_config.json:

{
  "mcpServers": {
    "hive": {
      "command": "/home/dm/wrksp/hivemcpsrvr/.venv/bin/hivemcpsrvr"
    }
  }
}

使用流程

  1. hive_login --使用您的Hive电子邮件和密码进行身份验证
  2. hive_sms_2fa --(如果提示)输入短信代码
  3. hive_start_session --加载所有设备
  4. hive_list_devices --请参阅设备名称/ID
  5. 使用带有设备名称或ID的任何设备工具

注: 仅支持Hive所有者帐户,不支持来宾帐户。

在Docker中无头运行

Hive要求在交互式用户名/密码登录时使用SMS 2FA,即 对于无人看管的集装箱来说是不切实际的。相反,使用 设备凭据: 交互式身份验证一次,将此客户端注册为受信任的设备,然后 重新使用生成的凭据自动登录,无需2FA。

1.一次性引导(获取设备凭据)

通过stdio在本地运行服务器,并通过MCP客户端调用:

  1. hive_login 使用您的电子邮件+密码
  2. hive_sms_2fa 带有短信代码
  3. hive_register_device --退货 HIVE_DEVICE_GROUP_KEY, HIVE_DEVICE_KEY 和 HIVE_DEVICE_PASSWORD

将这三个值复制到 .env 文件(参见 .env.example).保留它们 secret-他们授予访问您的Hive帐户的权限。

2.运行容器

凭据在运行时通过环境变量注入(从不烘焙到 图像)。启动时,服务器读取 HIVE_DEVICE_*,自动登录, 并加载设备——无需调用工具。

docker build -t hivemcpsrvr .
docker run --env-file .env -p 8000:8000 hivemcpsrvr

或者使用Docker Compose(阅读 .env 自动):

cp .env.example .env   # then fill in the HIVE_DEVICE_* values
docker compose up --build

容器在SSE上监听 http://<host>:8000/sse 默认情况下 (HIVE_TRANSPORT, HIVE_HOST, HIVE_PORT 可配置)。

安全: 偏爱 --env-file,Docker/Swarm的秘密,或者你的 编排器的内联秘密存储 -e 旗帜,永不承诺 .env (忽略git)。