智能家居控制服务器

一个与Home Assistant集成的模型上下文协议(MCP)服务器项目,提供智能家居控制功能,包括灯光、气候、锁具、警报控制面板和加湿器等设备的控制。

  • by miguelg719
  • Python
  • 本地部署
  • 3 星标
  • 更新于
在 GitHub 查看 miguelg719/home-assistant-mcp

使用说明

🤝 家庭助理MCP服务器

一个模型上下文协议(MCP)服务器项目,与家庭助理集成,提供智能家居控制功能。

鼓励

服务器为每个域的工具集提供提示。

工具

服务器实现了对各种家庭助理域的控制。目前支持:

  • 💡 灯光:打开/关闭,亮度控制
  • 🌡️ 气候:温度控制、暖通空调模式
  • 🔒 锁:锁定/解锁功能
  • 🚨 报警控制面板:启用/解除安全系统
  • 💧 加湿器:湿度控制

示例工具包括:

light-turn_on()
climate-turn_off()
alarm_control_panel-disarm()
lock-lock()
humidifier-turn_off()

配置

环境变量

创建一个 .env 根目录中的文件,其中包含:

HOMEASSISTANT_TOKEN=your_long_lived_access_token_here # get it from your Home Assistant instance after onboarding
HOMEASSISTANT_BASE_URL=your_home_assistant_url_here # e.g. http://homeassistant.local:8123

快速启动

安装

按照有关如何安装Home Assistant并获得长期访问令牌的说明进行操作。

克劳德桌面

在MacOS上: ~/Library/Application\ Support/Claude/claude_desktop_config.json 在Windows上: %APPDATA%/Claude/claude_desktop_config.json

Development/Unpublished Servers Configuration ``` "mcpServers": { "home-assistant-server": { "command": "uv", "args": [ "--directory", "/path/to/home-assistant-server", "run", "home-assistant-server" ] } } ```
Published Servers Configuration ``` "mcpServers": { "home-assistant-server": { "command": "uvx", "args": [ "home-assistant-server" ] } } ```

发展

建筑与出版

准备分发包裹:

  1. 同步依赖关系并更新锁文件:
uv sync
  1. 构建包分发:
uv build

这将在 dist/ 目录。

  1. 发布到PyPI:
uv publish

注意:您需要通过环境变量或命令标志设置PyPI凭据:

  • 令牌: --token 或 UV_PUBLISH_TOKEN
  • 或用户名/密码: --username/UV_PUBLISH_USERNAME 和 --password/UV_PUBLISH_PASSWORD

调试

由于MCP服务器在stdio上运行,调试可能具有挑战性。为了达到最佳调试效果 经验,我们强烈建议使用 MCP检查员.

您可以通过以下方式启动MCP检查器 npm 使用此命令:

npx @modelcontextprotocol/inspector uv --directory /Users/miguel/Documents/home-assistant-server/home-assistant-server run home-assistant-server

启动后,检查器将显示一个URL,您可以在浏览器中访问该URL以开始调试。

贡献

感谢您对这个项目的贡献!

请看 贡献.md 作为指导方针。

许可证

MIT许可证-请参阅 许可证 了解详情。