
Home Assistant MCP Server

2025.03.06
1
TypeScript智能家居控制自然语言交互位置服务
Home Assistant MCP Server 是一个基于 Model Context Protocol (MCP) 的服务,用于与 Home Assistant 智能家居平台集成,允许大型语言模型(LLMs)控制和查询智能家居设备。它提供了丰富的工具集,支持通过自然语言进行设备控制和状态查询,适用于各种智能家居场景。
View on GitHub
Overview
基本能力
产品定位
Home Assistant MCP Server 是一个智能家居集成服务,通过 MCP 协议将 Home Assistant 平台的能力暴露给 LLMs,实现自然语言交互的智能家居控制。
核心功能
- 通过自然语言查询和控制 Home Assistant 实体
- 兼容所有 MCP 客户端(如 Claude Desktop)
- 提供状态管理、服务调用、历史记录等多种工具
- 使用 Home Assistant 长期访问令牌进行安全认证
- 支持多种传输方式(本地进程的 stdio 和远程客户端的 SSE)
- 提供演示模式,在 Home Assistant 不可用时使用模拟数据进行测试
适用场景
- 通过自然语言控制智能家居设备
- 集成到 AI 助手应用中实现智能家居控制
- 开发和测试智能家居自动化流程
- 演示智能家居集成功能
工具列表
states
: 查询实体状态lights
: 列出所有灯光设备light
: 控制单个灯光service
: 调用 Home Assistant 服务history
: 获取历史实体数据services
: 列出可用服务config
: 获取 Home Assistant 配置domains
: 列出可用域error_log
: 获取错误日志devices
: 获取所有设备
常见问题解答
- 安全建议:仅在可信网络运行,使用 HTTPS 远程暴露,保护 .env 文件安全
- 如何获取长期访问令牌:通过 Home Assistant 个人资料中的 Long-Lived Access Tokens 创建
- 演示模式:使用 --mock 参数或设置 HASS_MOCK=true 启用
使用教程
使用依赖
需要安装 bun 运行时环境
安装教程
# 使用 bun 全局安装
bun install -g home-assistant-mcp-server
# 或从源码安装
git clone https://github.com/oleander/home-assistant-mcp-server.git
cd home-assistant-mcp-server
bun install
bun run build
bun link
配置
创建 .env 文件并配置以下变量:
HASS_URL=http://your-home-assistant:8123
HASS_TOKEN=your_long_lived_access_token
PORT=3000
HASS_MOCK=false
调试方式
# 标准模式
home-assistant-mcp-server
home-assistant-mcp-server --stdio
# 演示模式
home-assistant-mcp-server --mock
home-assistant-mcp-server --stdio --mock
与 Claude Desktop 集成
- 编辑 Claude Desktop 配置文件
- 添加服务器配置
- 重启 Claude Desktop