本说明文档详细介绍了家庭助理 Home Assistant 的配置、使用、集成等多方面内容,帮助你更好地使用该服务。
在开始使用 Home Assistant 前,你需要进行相应的配置,下面将详细介绍配置步骤。
{
"mcpServers": {
"homeassistant-mcp": {
"command": "node",
"args": ["index.js"],
"env": {
"HASS_TOKEN": "your_home_assistant_token_here",
"HASS_HOST": "http://your_home_assistant_host:8123"
}
}
}
}
HASS_TOKEN:Home Assistant 的访问令牌。HASS_HOST:Home Assistant 服务的 URL,格式为 http://IP:端口。node index.js
npm install homeassistant-mcp
npx homeassistant-mcp
将以下内容添加到 homeassistant.conf 文件中:
[HomeAssistantMCP]
command=node
args=index.js
environment=HASS_TOKEN="your_token_here",HASS_HOST="http://IP:port"
然后重启 Home Assistant 服务。
在 .env 文件中添加:
USE_STDIO_TRANSPORT=true
node index.js --stdio
npx homeassistant-mcp --stdio
--debug:启用调试模式。--rebuild:强制重新构建项目。--help:显示帮助信息。{
"jsonrpc": "2.0",
"id": "unique-request-id",
"method": "tool-name",
"params": {
"param1": "value1",
"param2": "value2"
}
}
{
"jsonrpc": "2.0",
"id": "unique-request-id",
"result": {
// 工具特定的结果数据
}
}
{
"jsonrpc": "2.0",
"id": "unique-request-id",
"error": {
"code": -32700,
"message": "错误信息",
"data": {} // 可选的错误细节
}
}
{
"jsonrpc": "2.0",
"method": "notification-type",
"params": {
// 通知数据
}
}
| 码 | 描述 | 含义 |
|---|---|---|
| -32700 | 解析错误 | 接收到无效的 JSON |
| -32600 | 请求无效 | JSON 不是一个有效的请求对象 |
| -32601 | 方法未找到 | 方法不存在或不可用 |
| -32602 | 参数无效 | 方法参数无效 |
| -32603 | 内部错误 | 内部 JSON - RPC 错误 |
| -32000 | 工具执行 | 执行工具时出错 |
| -32001 | 验证错误 | 参数验证失败 |
找到或创建以下路径的配置文件:
nano ~/Library/Application\ Support/Claude/claude_desktop_config.json
nano ~/.config/Claude/claude_desktop_config.json
notepad %APPDATA%\Claude\claude_desktop_config.json
在文件中添加或修改以下内容:
{
"mcpServers": {
"homeassistant-mcp": {
"command": "node",
"args": ["index.js"],
"env": {
"HASS_TOKEN": "your_token_here",
"HASS_HOST": "http://IP:port"
}
}
}
}
保存配置文件后,重启 Claude Desktop 服务。
npx homeassistant-mcp --stdio
{
"jsonrpc": "2.0",
"id": "1",
"method": "getWeather",
"params": {
"location": "北京"
}
}
{
"jsonrpc": "2.0",
"id": "1",
"result": {
"temperature": 25,
"condition": "晴朗"
}
}
启用调试模式以获取详细日志:
npx homeassistant-mcp --debug stdio
日志文件通常位于项目目录的 logs 文件夹中,具体位置取决于项目的配置。
--max-old-space-size 参数限制 V8 引擎的最大内存占用。node --max-old-space-size=512 index.js --stdio
HASS_TOKEN 时,请确保使用安全协议(如 HTTPS)以防止未授权访问。如需反馈或技术支持,请访问 官方文档 或联系支持团队。