Skip to main content
NestGrid logoNestGrid

How to set up Anthropic AI agents for smart home control

No single Anthropic AI agent setup controls every smart home: the five real routes into Home Assistant differ in permission model, cost, and failure risk. This dated, status-labeled comparison of the official conversation-agent integration, the MCP Server, ha-mcp, and community add-ons helps you choose the right path before installing anything.

Last updated

Status note, verified August 25, 2026: “Anthropic AI agents” is not one smart-home product. In Home Assistant discussions, that phrase can mean a Claude conversation agent, Claude Desktop using MCP, Claude Code using MCP, Claude Code running inside a Home Assistant sidebar add-on, Claude Cowork-style agent work, Anthropic’s Agent SDK, MCP servers that expose Home Assistant tools, or newer Agent Skills. For smart home control, the real Home Assistant paths narrow to five: the official Anthropic conversation-agent integration, the official Home Assistant MCP Server used from a client such as Claude Desktop or Claude Code, the community ha-mcp server, the community Claude Code sidebar add-on, and multi-provider add-ons such as Amira.

That distinction matters before installation. One route sends requests through Anthropic’s API as a Home Assistant conversation agent. Another exposes Home Assistant over a local MCP endpoint to a desktop or coding client. Another gives an agent dozens of build and configuration tools. Those are not interchangeable setups, even when a forum post summarizes all of them as “Claude controls my house.”

Smart-home hub with five different connection routes to AI agent touchpoints

The five Anthropic-to-Home-Assistant routes, before you install anything

Home Assistant’s official Anthropic integration is the native conversation-agent route documented by Home Assistant; the official MCP Server is a separate Home Assistant integration that exposes a Model Context Protocol endpoint; ha-mcp is an unofficial MCP server with a much broader tool set; the Claude Code add-on is an unofficial Home Assistant community add-on; and Amira is an unofficial multi-provider add-on rather than a Home Assistant core integration.[1][2][3][4][5]

RouteStatus as of Aug. 25, 2026Cloud or local shapeSetup shapePermission surfaceCost exposureKnown failure mode to check first
Official Home Assistant Anthropic conversation-agent integrationConfirmed official Home Assistant integration. Shipped with Home Assistant 2024.9; listed as IoT class Cloud Polling.[1]Cloud API path: Home Assistant calls Anthropic’s API.Add the Anthropic integration in Home Assistant, provide an Anthropic API key, then select it as a conversation agent.Conversation-agent access through Home Assistant’s exposed entities and Assist pipeline. It is the simplest path, but it is still a cloud model receiving smart-home context.Anthropic API key with billing enabled; no free tier is noted in the Home Assistant-oriented coverage, and active-install share was reported around 1% in that source’s snapshot.[6]API billing, cloud dependency, and entity-exposure mistakes. This is not a local Claude Desktop bridge.
Official Home Assistant MCP Server + Claude Desktop or Claude CodeConfirmed official Home Assistant integration. Shipped with Home Assistant 2025.2.[2]Local Push integration exposing /api/mcp. Clients listed in the docs include Claude Desktop, Claude Code, ChatGPT, Codex, Cursor, and Antigravity.[2]Enable the MCP Server integration, connect a client over /api/mcp, and authenticate with OAuth or a long-lived access token. Non-public Home Assistant instances can use a local mcp-proxy option.[2]Standard local bridge into Home Assistant’s MCP-exposed tools. The permission boundary depends heavily on the token and client setup.Home Assistant side is local; Claude Desktop or Claude Code usage may depend on the Anthropic product or plan you use.Long-lived token handling, remote-access assumptions, and client-side agent behavior. This is the official bridge, not an automatic safety guarantee.
Community ha-mcp serverConfirmed community/unofficial project. The repository describes roughly 88 tools and had 4.5k+ GitHub stars in the verification snapshot.[3]MCP server route, usually used when the built-in MCP Server is not enough for build/config work.Install and configure ha-mcp, connect it to a compatible client, then deliberately choose which tools and policies are enabled.Broader than the official MCP Server: automation, dashboard, trace, backup, and build/config capabilities are part of the project’s value. It also provides read-only mode, per-tool enable/disable, and security policies.[3]Depends on the client/model you connect to it. The Home Assistant-facing risk is mainly the size of the tool surface, not a separate HA subscription.Breaking-change and write-access risk. In v7.3.0, ha_config_set_yaml moved to beta as a breaking change.[3]
Community Claude Code sidebar add-onConfirmed community/unofficial add-on discussed in the Home Assistant Community forum.[4]Convenience route that brings Claude Code-style work closer to the Home Assistant UI.Install the add-on from its community source, configure credentials and access, then use it from the sidebar rather than only from an external desktop environment.Depends on the add-on configuration and any Home Assistant access granted to the code agent.Likely tied to Claude Code account or plan usage, plus any infrastructure the add-on requires.Unofficial lifecycle, add-on maintenance, and the danger of treating a convenient sidebar as if it were a Home Assistant core feature.
Amira and similar multi-provider add-onsConfirmed community/unofficial project. The referenced Amira repository had about 85 stars in the verification snapshot and uses a PolyForm Noncommercial license.[5]Multi-provider assistant add-on rather than an Anthropic-only official path.Install the add-on, choose provider credentials, and configure the Home Assistant access it receives.Provider- and add-on-dependent. It may be attractive if you want to swap models, but that adds another abstraction layer to audit.Provider API or plan costs depend on the selected model.Small-footprint community maintenance, license constraints, and unclear parity with official Home Assistant behavior.

If you only remember one compatibility rule, make it this: the official Anthropic integration is a Home Assistant conversation agent, while the official MCP Server is a client bridge. They solve different problems. The first is for talking to Home Assistant through Anthropic’s API. The second is for letting a tool-capable client, such as Claude Desktop or Claude Code, reach a Home Assistant MCP endpoint.

For a broader foundation on agentic Home Assistant patterns beyond Anthropic, use the agentic AI setup guide. This article stays narrower: which Anthropic-facing route should touch your hub, and how much access does it get?

Route 1: the official Anthropic conversation-agent integration

Choose this when you want the shortest official cloud setup: Home Assistant, Anthropic API key, conversation agent. The Home Assistant docs identify the integration as “Anthropic,” list its IoT class as Cloud Polling, and show it as a native integration rather than a community add-on.[1]

The setup shape is intentionally plain. You create or use an Anthropic API key, make sure billing is enabled, add the Anthropic integration in Home Assistant, and select it where you want a conversation agent. SmartHomeScene’s May 2026 Home Assistant AI overview notes that this route requires billing and reports no free tier for the Anthropic API path; it also estimates ordinary Home Assistant interactions at roughly 500 to 2,000 tokens each.[6]

This route is attractive for newcomers because it feels like the obvious “Claude in Home Assistant” answer. It is also the one most easily oversold. It does not mean Claude Desktop has local tool access to your Home Assistant instance. It does not give Claude Code a file-system view of your configuration. It is a cloud conversation-agent integration, and the permission boundary starts with what Home Assistant exposes to that agent.

The least-drama first pass is to expose fewer entities than you think you need. Lights and read-only status entities are a different risk class from locks, covers, garage doors, alarm controls, and anything that can start a heater, open a valve, or wake people up. If the goal is “ask Claude what is on,” do not give it the same surface you would give a trusted automation file.

Route 2: the official Home Assistant MCP Server

Choose this when the client matters: Claude Desktop, Claude Code, or another MCP-capable tool needs to talk to Home Assistant through a defined local endpoint. Home Assistant’s MCP Server integration shipped with Home Assistant 2025.2, is documented as Local Push, and exposes an /api/mcp endpoint that clients can access through OAuth or a long-lived access token.[2]

This is the clean official bridge for many Anthropic-agent setups. A non-public Home Assistant instance can use the documented local mcp-proxy option, which is important because a lot of sensible Home Assistant installations are not exposed directly to the public internet.[2]

Connection map separating official smart-home AI links from community bridges

The practical setup is not long, but the access decision is. Enable the MCP Server integration, connect the client, authenticate it, and then watch what the client can actually see and call. OAuth is usually preferable where supported because it avoids casually pasting a long-lived access token into another app. If a long-lived token is the only route you can make work, treat it like a house key: name it clearly, document where it is stored, and know how to revoke it before testing commands.

This is the route to start with if you want official Home Assistant structure exposed through MCP but do not need a community server to edit dashboards, write YAML, inspect traces, or handle backups. If you do need those, the decision moves to ha-mcp, and the risk profile changes.

Route 3: ha-mcp when the agent needs build and configuration tools

ha-mcp exists because the official MCP Server is not trying to be every Home Assistant development tool. The project describes roughly 88 tools and includes capabilities around automations, dashboards, traces, backups, and build/config work; it also exposes safety controls such as read-only mode, per-tool enable/disable, and security policies.[3]

That combination is why ha-mcp is both interesting and not something to install lazily. A tool that can inspect a dashboard is convenient. A tool that can rewrite one can cost you an evening. A tool that can touch configuration needs a rollback plan before it gets a prompt.

Three-tier smart-home access staircase from read-only to full build access

The meaningful difference between the official MCP Server and ha-mcp is not “official versus powerful” in the abstract. It is what the agent can do when it is wrong. The built-in MCP route is the standard local bridge. ha-mcp is a community-maintained tool server with a larger action vocabulary. That larger vocabulary is exactly why people use it for real build work, and exactly why read-only mode and per-tool controls should be part of the first configuration, not an afterthought.

Decision pointOfficial MCP Serverha-mcp
Maintenance statusOfficial Home Assistant integration.[2]Community/unofficial GitHub project.[3]
Best fitClient bridge for MCP-capable apps that need Home Assistant access.Agentic build/config workflows where the built-in MCP tool surface is too narrow.
Access philosophyUse Home Assistant’s documented MCP endpoint and authentication.Choose tools deliberately; use read-only mode, per-tool disablement, and security policies where possible.[3]
Write-risk profileLower by design if your client and token are constrained, but still not risk-free.Higher if build/config tools are enabled; the agent can affect dashboards, automations, traces, backups, or YAML depending on configuration.[3]
Change riskTied to Home Assistant release behavior.Tied to community project changes. v7.3.0 included a breaking change moving ha_config_set_yaml to beta.[3]

A sane ha-mcp first run is boring: read-only, small tool set, non-critical dashboard or test package, known backup, and a written list of enabled tools. After that, expand only for the task in front of you. If the task is “audit my automations,” it does not need backup-writing tools. If the task is “draft a dashboard,” it does not need access to locks or covers.

Route 4: the Claude Code sidebar add-on is convenience, not official status

The community Claude Code add-on is appealing for an obvious reason: it puts Claude Code-style work close to the Home Assistant interface. The Home Assistant Community thread identifies it as an add-on, not a Home Assistant core integration.[4]

That distinction should change how you test it. A sidebar can make a tool feel native even when its maintenance, permission boundaries, and release cadence are community-managed. Before using it against your main instance, check who maintains it, how credentials are stored, which Home Assistant paths or APIs it can reach, and whether the add-on has a clean disable/remove path.

This route may be reasonable for a lab instance or for users already comfortable with Claude Code and Home Assistant add-ons. It is not the route I would hand to someone who just wants their first Anthropic conversation agent.

Route 5: Amira and other multi-provider add-ons

Amira belongs in the comparison because it is a real community route that can involve Anthropic, but it should not be mistaken for an official Anthropic or Home Assistant path. The referenced repository is a community project, had about 85 stars in the verification snapshot, and uses a PolyForm Noncommercial license.[5]

Multi-provider add-ons are useful when you want flexibility across model vendors. They are less useful when your first question is “what exactly is allowed to touch my home?” because you now have three layers to inspect: Home Assistant, the add-on, and the selected provider. If you choose this route, document the provider credentials, license constraints, enabled capabilities, and removal path before connecting it to real devices.

What real-world tests say, without turning them into benchmarks

The most useful public reports are not universal measurements. They are field notes that show where these routes become productive and where they become messy.

The Verge’s January 28, 2026 report is the optimistic case with caveats still attached. The reviewer used Claude Code and ha-mcp while migrating a complicated smart home, reporting that roughly 70% of about 200 devices were migrated and that a usable dashboard was built in roughly four hours. The same report says HomeKit-based devices could not be touched, and bridged-device onboarding involving systems such as Lutron and Hue kept failing until the ha-mcp route was used.[7]

That is a strong productivity signal for ha-mcp-style build work. It is not proof that an agent can migrate every house. The devices it cannot see, the bridges it cannot onboard, and the parts of Home Assistant it can only reach through a specific tool server are the parts you need to map before you trust the happy path.

Android Authority’s June 14, 2026 test is the cautionary counterweight. The author found that Claude’s MCP sandbox blocked configuration writes and used a Chrome-MCP browser-automation workaround. The same test observed deleted dashboard sections, wrong-device grabs, and a timezone mistake that opened curtains at night.[8]

Again, that is not a benchmark. It is one messy test. But it describes the exact class of failure that matters in a house: not “the agent hallucinated a sentence,” but “the agent changed the wrong surface, removed UI work, or acted at the wrong time.” Android Authority also included a reader poll with 1,527 votes in which 32% chose full access, 39% chose read-only, 16% chose troubleshooting-only, and 12% chose no access; that is a sentiment datapoint, not evidence of safety.[8]

Cost: API billing, Claude Code plans, and one pricing caveat

The official Anthropic conversation-agent integration uses Anthropic API billing. SmartHomeScene’s May 2026 snapshot lists Haiku 4.5 at about $1 per 1 million input tokens and $5 per 1 million output tokens, Sonnet 4.6 at about $3 and $15, and Opus 4.7 at about $5 and $25, respectively. The same overview frames typical Home Assistant interactions at roughly 500 to 2,000 tokens and estimates occasional use at cents to a couple of dollars monthly.[6]

Those numbers are useful for scale, not for a permanent budget. Model names and prices move. A chatty household, verbose prompts, dashboard-generation sessions, or trace-heavy debugging can consume more tokens than “turn on the kitchen lights.” If you use the official Anthropic integration, set API spend limits or monitoring before you make it a daily interface.

Claude Code is a different cost context. Pro and Max plan tiers around $20 per month and $100 per month are part of the Claude Code setup landscape, but agent-framework billing rules have been shifting. A secondary Dapta report says Anthropic stopped flat-rate Pro/Max plans from powering third-party agent frameworks on April 4, 2026; because that claim could not be cross-checked against official Anthropic pricing pages here, treat it as a lead to verify before building a setup around it.[9]

For model-choice tradeoffs rather than route selection, see OpenAI or Anthropic for your Home Assistant?. The setup decision here is simpler: know whether you are paying per API token, through a Claude client plan, or through another provider layer hidden inside an add-on.

Skeletal setup paths, with the risk check in the right place

These are not full recipes. They are the minimum shape of each install so you can spot the wrong route before you create tokens or expose entities.

If you choose this routeDo this firstThen install/connectBefore first real command
Official Anthropic conversation-agent integrationCreate an Anthropic API key, enable billing, and decide which entities the conversation agent should see.Add the Anthropic integration in Home Assistant and select it as a conversation agent.[1]Test with read-only questions and harmless devices. Check token usage after the first session.
Official MCP ServerDecide whether the client will connect through OAuth, a long-lived token, or local mcp-proxy.Enable Home Assistant’s MCP Server integration and connect Claude Desktop, Claude Code, or another supported client to /api/mcp.[2]Verify what tools/entities the client can see. Revoke and recreate tokens if you pasted one into the wrong place.
ha-mcpChoose read-only mode unless the task explicitly needs writes. Disable tools that are unrelated to the job.Install and configure the community MCP server, then connect it to the client.[3]Take a backup, test against a non-critical dashboard or package, and record which tools were enabled.
Claude Code sidebar add-onConfirm maintainer, update cadence, credential handling, and removal path.Install the community add-on from its source and configure Claude Code access.[4]Use a lab instance or a very narrow task first. Do not assume sidebar placement equals official support.
Amira or a similar multi-provider add-onConfirm license, provider credentials, supported model, and Home Assistant access scope.Install the add-on and choose Anthropic or another provider as configured by the project.[5]Audit both the add-on layer and the provider layer. Remove unused providers and keys.

If your hub is already fragile after outages, solve that before adding an agent. The boring recovery work in Smart Home Devices Offline After Outage? Recovery by Hub matters more than a clever Claude prompt when half the devices have stale state.

Choose this if

  • Use the official Anthropic conversation-agent integration if you want the simplest supported cloud route inside Home Assistant and are comfortable with Anthropic API billing and a carefully limited entity surface.
  • Use the official MCP Server if you want Claude Desktop, Claude Code, or another MCP client to reach Home Assistant through the documented local /api/mcp bridge.
  • Consider ha-mcp if your real task is building, auditing, repairing, or restructuring Home Assistant and the built-in MCP Server does not expose enough tools. Start read-only and expand deliberately.
  • Treat the Claude Code sidebar add-on as a convenience route for users who already understand Home Assistant add-ons and Claude Code access. It is not the canonical beginner setup.
  • Treat Amira and similar multi-provider add-ons as experimental or enthusiast routes unless their maintenance, license, and permission model match your tolerance for community software touching the house.

For deeper permission and token threat modeling, read Are AI agents a real smart home security risk? and Can an AI Agent Breach Actually Take Over Your Smart Home?. The security question is not abstract when a token can expose devices, dashboards, or configuration tools.

Recommendation matrix, verified August 25, 2026

Your situationBest first routeWhyStart with
You want Claude-like conversation inside Home Assistant with the least setup complexity.Official Anthropic conversation-agent integrationIt is the native official cloud route and does not require running a separate MCP server.Limited exposed entities, harmless device tests, API spend monitoring.
You want Claude Desktop or Claude Code to inspect and operate Home Assistant through a documented bridge.Official Home Assistant MCP ServerIt is the official local MCP integration and supports clients over /api/mcp.OAuth where possible; otherwise a named, revocable long-lived token.
You want an agent to help build dashboards, inspect traces, draft automations, or work around the built-in MCP tool limits.ha-mcpIt exposes broader Home Assistant tooling, including build/config-oriented capabilities.Read-only mode, per-tool controls, current backup, and a test target.
You want Claude Code available from inside the Home Assistant UI.Claude Code sidebar add-on, cautiouslyIt may be convenient, but it is community-maintained rather than official.Lab instance or narrow task; verify credential storage and uninstall path.
You want one add-on that can use Anthropic and other model providers.Amira or similar add-on, cautiouslyIt offers provider flexibility but adds another maintenance and permission layer.License check, provider-key audit, smallest useful access scope.

The safe default is still least privilege: read-only where possible, then one write-capable tool or entity group at a time. If a setup cannot explain its route, owner, token scope, rollback path, and cost exposure, it is not ready to control the house.

References

  1. Anthropic - Home Assistant, Home Assistant
  2. Model Context Protocol Server - Home Assistant, Home Assistant
  3. The Unofficial and Awesome Home Assistant MCP Server (ha-mcp), GitHub
  4. Claude Code for Home Assistant - AI Assistant directly in your HA, Home Assistant Community
  5. ha-claude, GitHub
  6. Home Assistant AI: Everything You Need To Know, SmartHomeScene, May 2026
  7. I used Claude to vibe-code my wildly overcomplicated smart home, The Verge, January 28, 2026
  8. I let Claude audit my messy Home Assistant setup, Android Authority, June 14, 2026
  9. Anthropic Kills Claude's All-You-Can-Eat Pricing Plan, Dapta

Known issues with this device / protocol

Spec-version history

For active regressions on this protocol, see Update Watch.

No linked Update Watch entries yet.

Report / Feedback

Flag a stale or incorrect compatibility claim -- it feeds the re-verification queue.

Blogarama - Blog Directory