MCPVault
Blog
ReviewAugust 26, 20269 min read

Home Assistant MCP: Smart Home Control in Claude [2026]

Home Assistant MCP setup guide for Claude, Cursor and VS Code. Compare built-in remote access with local IDE tooling, then choose the right fit for home.

What Home Assistant MCP gives an AI client

Home Assistant MCP connects an AI client to a running Home Assistant instance so the client can inspect exposed entities and invoke services. That can mean asking Claude which lights are on, checking a sensor before debugging an automation, or giving an agent controlled access to build and test a dashboard.

The important choice is not just which client you use. Home Assistant now has an official MCP Server integration that exposes a remote /api/mcp endpoint, while community projects can put a local MCP process next to an IDE. They solve related problems, but their security boundary and setup are different. Pick the one that matches the work you actually want the agent to do.

This guide covers the Home Assistant MCP listing on MCPVault, a community IDE-focused server by Coolver. MCPVault currently labels that listing unclaimed and gives it a B quality grade from public repository signals. Treat that as a starting point for evaluation, not as a claim that its maintainer has reviewed the listing.

Choose the connection model before installing

There are two useful paths. The first is Home Assistant's official integration. It runs in Home Assistant and exposes MCP over HTTPS at /api/mcp. A compatible remote client connects with an authentication token. This is the better fit when the client supports remote MCP and you want a narrow, direct connection to Home Assistant's own exposed data and services.

The second path is a local MCP server installed on the computer where Cursor, VS Code, Claude Code, or another IDE runs. The MCP process then talks to an agent or API associated with your Home Assistant installation. The community Home Assistant MCP listing covered here uses that architecture and requires the HA Vibecode Agent add-on.

That distinction is the setup detail many generic guides skip: a local stdio configuration is not a substitute for the official remote endpoint. Conversely, the official endpoint is not automatically a full configuration-management agent. Before granting access, decide whether you need device-state and service access, or whether you need the agent to work with automations, configuration files, dashboards, logs, and deployments.

| Approach | Where MCP runs | Best for | Main setup requirement | | --- | --- | --- | --- | | Official Home Assistant MCP Server | Home Assistant | Remote-capable clients and controlled Home Assistant access | External URL and authentication token | | Coolver Home Assistant MCP | Your development computer | IDE-based automation and configuration work | HA Vibecode Agent plus Node.js |

Install the community Home Assistant MCP server for an IDE

The MCPVault listing points to Coolver's Home Assistant Vibecode MCP repository. Its README requires a running Home Assistant installation, the HA Vibecode Agent add-on version 2.2.0 or later, and Node.js 20 or later on the computer running the AI editor.

Start by installing the HA Vibecode Agent add-on in Home Assistant. In Home Assistant, open Settings, Add-ons, Add-on Store, then add this repository under Repositories:

https://github.com/Coolver/home-assistant-vibecode-agent

Install and start the add-on. Its web UI provides the Agent Key and the editor-specific connection details. Keep the key out of source control and do not paste it into an issue, chat transcript, or a shared workspace configuration.

On the computer running your IDE, verify Node.js is available:

node --version

The server is launched by the client through npx, so you do not need a separate global install. The repository's configuration uses this command:

npx -y @coolver/home-assistant-mcp@latest

For clients that accept an MCP JSON configuration, the shape is:

{
  "mcpServers": {
    "home-assistant": {
      "command": "npx",
      "args": ["-y", "@coolver/home-assistant-mcp@latest"],
      "env": {
        "HA_AGENT_URL": "http://homeassistant.local:8099",
        "HA_AGENT_KEY": "replace-with-your-agent-key"
      }
    }
  }
}

Use the URL and key supplied by your own agent UI. homeassistant.local is only an example from the project documentation. If your editor has an install tab in the add-on's web UI, prefer it over copying a generic configuration, because it can account for that editor's expected config location.

Connect with the official remote endpoint instead

If your client supports remote MCP, Home Assistant's official integration avoids the local Node.js process. Add the MCP Server integration in Home Assistant, then use the remote server URL in the client:

https://your-home-assistant-host/api/mcp

The official documentation says that the client must provide an authentication token. Do not expose this route over plain HTTP or put it behind an unauthenticated public proxy. A token gives the client access according to its Home Assistant permissions, so create a dedicated account or token with only the access the agent needs where your setup allows it.

This route is particularly useful for clients that have moved beyond local command configurations. It is also a clean way to keep the MCP server close to the Home Assistant runtime rather than installing a package on every workstation. For IDE-centric configuration work, however, the community server's agent architecture may offer the workflows you need.

Check the connection with a read-first prompt

Do not begin by asking an agent to change an automation. Use a harmless read request first:

List my climate entities and show their current state. Do not change anything.

Then verify the returned entities against the Home Assistant UI. This tests authentication, reachability, and tool discovery without creating a side effect. A second good test is to ask for the status of one known sensor.

Only after that should you grant the agent a write-oriented task. Ask it to propose an automation in plain language, inspect the proposed YAML or actions, and approve it before deployment. If your chosen server can modify files or run services, its permission scope is much more significant than a simple read-only dashboard integration.

MCPVault's quality-grade guide is useful here. A grade is a maintenance and documentation signal, not a security audit and not a permission model. Review the upstream repository, understand which tools it exposes, and use a separate Home Assistant user or narrowly scoped token when possible.

Client compatibility: what to verify

The Coolver project describes Cursor, VS Code, Claude Code, and other MCP-enabled IDEs as target clients. Compatibility is not just whether a client displays an MCP server name. Check these four things after adding it:

| Client | Community local server | Official remote endpoint | What to check | | --- | --- | --- | --- | | Cursor | Targeted by the project | Depends on current remote MCP support | Use the add-on's Cursor instructions | | VS Code | Targeted by the project | Depends on current remote MCP support | Confirm its MCP config and process logs | | Claude Code | Targeted by the project | Depends on current remote MCP support | Confirm command and environment variables | | Claude Desktop | Possible with a compatible local configuration | Use when its current version supports remote MCP | Check the current transport documentation |

  1. The client can start the configured command and shows no missing Node.js or package error.
  2. The configured HA_AGENT_URL resolves from the computer running the client, including on your local network.
  3. The Agent Key is accepted and tools appear in the client's MCP panel or logs.
  4. A read-only request returns the expected Home Assistant entities.

Claude Desktop may support a local server configuration, but the exact configuration UI and supported transport can change. The official remote endpoint may be the simpler route for clients that support remote MCP directly. Check the client documentation before assuming an IDE JSON example applies unchanged to Claude Desktop.

What this server can help with

According to its repository, the Coolver server is designed around more than toggling lights. Its paired agent can inspect configurations and devices, assist with automations and helpers, work with Lovelace dashboards and themes, analyze logs, and help manage HACS repositories. That makes it an IDE workflow tool rather than just a conversational smart-home remote.

That breadth also changes the safety conversation. A request to "fix my dashboard" might touch YAML, entities, a repository, or a deployment. Give the agent a specific target, ask it to explain planned changes first, and keep Home Assistant backups and version control in place. Never rely on an LLM-generated change as the only record of what was altered.

For more options, browse MCPVault's server directory and compare the listing's repository, grade, status, client compatibility, and declared tools before connecting one to your home.


Your server in the vault.

If you maintain an MCP server, claim its listing so developers can see accurate ownership and project details. Verification is free during early access and adds a do-follow link to your project.

Claim your listing or submit a server if it is not indexed yet.

Frequently Asked Questions

Does Home Assistant MCP work with Claude Desktop?

It can, provided your chosen Home Assistant server and Claude Desktop's current MCP transport support are compatible. A local MCP configuration can launch the Coolver package, while a remote-capable client can use Home Assistant's official /api/mcp endpoint. Check the current client documentation before configuring either route.

Do I need Node.js for Home Assistant MCP?

You need Node.js for the Coolver local MCP server because it is started with npx. You do not need that local process when using Home Assistant's official remote MCP Server integration with a client that supports remote MCP.

Is the Home Assistant MCP server safe to use?

It can be operated safely only with deliberate permissions and review. An MCP connection may read entity state, call services, or, depending on the server, edit configuration and deployments. Start read-only, use a dedicated credential where possible, and review proposed changes before applying them.

Why does the MCPVault listing show unclaimed?

An unclaimed listing is automatically indexed and has not been linked to an owner through MCPVault's claiming process. It does not mean the upstream project is abandoned. It means MCPVault has not yet confirmed the maintainer's ownership of that listing.

MCP ServerHome AssistantClaude DesktopInstall Guide