homeassistant-ai/ha-mcp

Hardware & IoT

Lets an MCP-capable chat client inspect and modify a Home Assistant smart-home install, not just exposed devices.

5,263
252
Python
MIT
1 year old

This is worth a look if you already run Home Assistant and want to drive it conversationally, but treat it as an administrator tool rather than a casual convenience. The recommended install puts the server inside Home Assistant, so the MCP client gets substantially more reach than voice-style control of exposed entities.

The problem

A Home Assistant owner wants to add an automation, adjust a dashboard, or query history without hand-writing YAML and hunting through entity IDs. The built-in Assist path works for devices explicitly exposed to it, but creating and maintaining configuration still means editing files or clicking through the UI. ha-mcp changes that step: the chat client searches entities and configuration, then calls tools that create automations, edit dashboards, manage helpers and read history. The result is a working change made through conversation instead of manual editing.

What's different

The project exposes a broad MCP tool surface (the README advertises 87 tools) covering search, service calls, automation and helper management, dashboards, backups, updates and ZHA devices. It documents its contrast with Home Assistant's own MCP Server integration, which is built on the Assist pipeline and therefore targets entities exposed to Assist and supported intents. That distinction matters: ha-mcp reaches configuration and administration surfaces that an exposed-entity bridge does not.

Its most interesting design decision is the safety layer: a read-only mode, per-tool enable/disable, per-tool policies that can require user approval, and automatic edit backups. The README also describes backup and restore of template helpers, with caveats: capture refuses degraded secret scrubbing, restoring a helper needs a fresh safety backup, and some optional settings are removed on restore. Those are useful guardrails, not a claim of faultless reversibility. The trade-off is complexity: more power means more configurations to get right, and the tool list is large enough that client-specific setup guidance becomes necessary.

Who should try it

Good fit: an experienced Home Assistant user who already understands entities, automations and backups, wants a capable assistant client to make changes, and is comfortable reviewing tool permissions. The read-only mode is a sensible way to start. Poor fit: someone who only wants voice control of a few lights, or who is unwilling to manage an administrator-level token and understand what the client can modify.

Setup options change the audience. The HA-MCP Custom Component installs via HACS, runs in-process and works across Home Assistant OS, Supervised, Container and Core, asking for an administrator token. The app (add-on) path works on OS and Supervised without a managed token. Container and Core users instead run Docker, PyPI/uvx or local stdio, and a setup wizard generates client configs. Documentation covers OIDC for remote access, and a hosted demo avoids connecting a real instance first.

Requirements and limitations

You need a running Home Assistant instance and an MCP-capable client; the wizard lists Claude Code, Gemini CLI, ChatGPT, Open WebUI, VS Code, Cursor and others. The recommended install requires HACS plus administrator credentials. Non-admin tokens work with documented limitations, which matters if you want the assistant constrained by permissions.

Ongoing upkeep is real. The README notes a breaking change in v7.3.0 moving ha_config_set_yaml to beta, so pin a version and read release notes before upgrading. Backups exist, but restoration of helpers has conditions and removes settings absent from the snapshot. Remote access through a secret URL or OIDC widens exposure, and the README says telemetry is not yet collected but is planned, following Home Assistant analytics settings with advance notice.

HotRepo's take

HotRepo has one dated observation: 5,259 stars on 2026-10-26, up 36 that day, with a No. 5 rank on the new-repository board. One snapshot is not enough to judge persistence. Check the release notes and beta status of ha_config_set_yaml against the version you plan to run.

Hacker News

The Unofficial and Home Assistant MCP Server
▲ 2 · 0 comments · June 16, 2026

Written by AI from the project's README, updated October 26, 2026. The project's own docs are the source of truth.