miguelg719
服务介绍
🤝 Home Assistant MCP 服务器
这是一个与 Home Assistant 集成的 Model Context Protocol (MCP) 服务器项目,旨在提供智能家居控制功能。
提示
该服务器为每个域的工具集提供了提示。
工具
该服务器实现了对各种 Home Assistant 域的控制。目前支持:
- 💡 灯光:开关、亮度控制
- 🌡️ 气候:温度控制、暖通空调模式
- 🔒 锁:锁定/解锁功能
- 🚨 报警控制面板:布防/撤防安全系统
- 💧 加湿器:湿度控制
示例工具包括:
light-turn_on()
climate-turn_off()
alarm_control_panel-disarm()
lock-lock()
humidifier-turn_off()
配置
环境变量
在根目录下创建一个 .env 文件,并添加以下内容:
HOMEASSISTANT_TOKEN=your_long_lived_access_token_here # 从您的 Home Assistant 实例中获取
HOMEASSISTANT_BASE_URL=your_home_assistant_url_here # 例如 http://homeassistant.local:8123
快速开始
安装
请按照说明安装 Home Assistant 并获取长期访问令牌。
Claude Desktop
在 MacOS 上:~/Library/Application Support/Claude/claude_desktop_config.json
在 Windows 上:%APPDATA%/Claude/claude_desktop_config.json
"mcpServers": {
"home-assistant-server": {
"command": "uv",
"args": [
"--directory",
"/path/to/home-assistant-server",
"run",
"home-assistant-server"
]
}
}
"mcpServers": {
"home-assistant-server": {
"command": "uvx",
"args": [
"home-assistant-server"
]
}
}
开发
构建和发布
准备分发包:
-
同步依赖项并更新锁文件:
bash
uv sync -
构建包分发:
bash
uv build
这将在 dist/ 目录中创建源码和 wheel 分发。
- 发布到 PyPI:
bash
uv publish
注意:您需要通过环境变量或命令标志设置 PyPI 凭证:
- 令牌:
--token或UV_PUBLISH_TOKEN - 或用户名/密码:
--username/UV_PUBLISH_USERNAME和--password/UV_PUBLISH_PASSWORD
调试
由于 MCP 服务器通过 stdio 运行,调试可能会比较困难。为了获得最佳调试体验,我们强烈建议使用 MCP Inspector。
您可以使用 npm 通过以下命令启动 MCP Inspector:
bash
npx @modelcontextprotocol/inspector uv --directory /Users/miguel/Documents/home-assistant-server/home-assistant-server run home-assistant-server
启动后,Inspector 将显示一个 URL,您可以在浏览器中访问该 URL 以开始调试。
贡献
感谢您对本项目的贡献感兴趣!
请参阅 CONTRIBUTING.md 获取指南。
许可
MIT 许可 - 详情请参见 LICENSE。