Homeassistant MCP logo

Homeassistant MCP

by tevonsb

Connects an MCP-compatible client to Home Assistant for device control, state monitoring, automations, add-ons, and HACS packages.

Install Homeassistant MCP

Pick your client, then add it in one click or paste the config.

No confirmed install command yet

We only publish a config when the install details come from the project itself — its README, its docs, or a verified owner. We haven’t found those for tevonsb/homeassistant-mcp, and we’d rather show nothing than a guess you’d paste into your client.

Open setup steps on GitHub

Overview

The tevonsb/homeassistant-mcp MCP server connects an MCP-compatible LLM application to a local Home Assistant instance. It uses Home Assistant host, token, and WebSocket settings to expose device control, state queries, automation management, add-on operations, and HACS package management. An SSE endpoint can stream device, automation, service-call, and script updates, with optional filtering by domain or entity. Reach for it when an agent needs to monitor or operate a Home Assistant installation through natural language or an HTTP-capable client.

Use cases

  • Control smart-home devices from an LLM client
  • Monitor Home Assistant entity states
  • Manage automations through agent requests
  • Stream filtered device events over SSE
  • Administer add-ons and HACS packages

Key features

  • Home Assistant device control
  • Entity state monitoring
  • Automation creation and management
  • Add-on and HACS package management
  • Server-Sent Events subscriptions
  • Token-based authentication and rate limiting

Security & health

What it can reach and how reliably it runs — from our own checks, not the maintainer’s claims.

ActiveLast checked Today

Recent health check succeeded.

13/14 checks healthy over the last 80d

Adoption & maintenance

Factual signals from GitHub, npm, and our automated checks — not a rating.

GitHub stars576Stargazers on the source repository.
Last commit9mo agoMost recent push to the default branch.
Directory activity7 viewsConfig copies, upvotes, and views on AllMCPs.

How Homeassistant MCP works

What tevonsb/homeassistant-mcp MCP server does

The tevonsb/homeassistant-mcp MCP server gives an LLM application access to a local Home Assistant installation through MCP. It covers common smart-home operations such as switching lights and switches, adjusting climate settings, moving covers, controlling media players, fans, locks, and vacuums, and reading sensor or contact states. Camera-related capabilities include motion detection and snapshots as described by the project.

Beyond individual devices, the server supports Home Assistant administration tasks. Agents can query and monitor states, work with areas and floors, create or edit automations, enable or disable them, trigger them manually, and modify existing rules. Add-on operations include browsing, installing, removing, starting, stopping, restarting, and managing versions or configuration. HACS-related operations cover custom integrations, themes, Python scripts, AppDaemon apps, and NetDaemon apps.

How it works

The application communicates with Home Assistant using its HTTP host configuration and WebSocket URL, authenticating with a long-lived Home Assistant access token. MCP provides the interface used by the LLM client, while the server handles Home Assistant API access and validation.

A separate Server-Sent Events endpoint provides live updates. Clients can subscribe to state changes, automation triggers and executions, service calls, or script executions. Subscriptions can be narrowed to a domain or entity, making the stream useful for agents that need current device context instead of repeated polling.

Setup and configuration

To run the tevonsb/homeassistant-mcp MCP server from source, use Node.js 20.10.0 or newer and npm. Clone the repository, install dependencies with npm install, and build it with npm run build. The project also includes Docker support; after creating an environment file, start it with Docker Compose and check the /health endpoint on the configured port.

Set HASS_HOST to the Home Assistant URL, HASS_TOKEN to a long-lived access token, and HASS_SOCKET_URL to the Home Assistant WebSocket endpoint. PORT defaults to 3000, while NODE_ENV and DEBUG control runtime behavior. The repository also documents separate environment files for development, production, and testing.

Claude Desktop can run the built server directly through a client configuration that supplies the Node command and environment variables. The README specifically notes that this direct client setup is separate from the Docker deployment method.

Tools and capabilities

Supported areas include:

  • Controlling lights, climate devices, covers, switches, media players, fans, locks, and vacuums.
  • Reading states from sensors, contacts, cameras, and other Home Assistant entities.
  • Creating, editing, duplicating, enabling, disabling, and manually triggering automations.
  • Browsing and managing Home Assistant add-ons.
  • Managing HACS packages and supported package types.
  • Receiving filtered real-time events through SSE.

The API examples show a general control operation with commands such as turn_on, turn_off, and toggle, plus light parameters for brightness, color temperature, and RGB color.

Limitations and notes

A running Home Assistant instance is required. The project lists a long-lived access token as a prerequisite. HACS must be installed for package-management features, and Supervisor access is required for add-on management. These administrative capabilities may therefore be unavailable in installations without those Home Assistant components or permissions.

The documented Docker deployment exposes the service on port 3000 by default. SSE clients need an HTTP-capable connection and must provide the configured token when subscribing.

Reviews

No reviews yet — be the first to share how it worked for you.

Frequently Asked Questions about Homeassistant MCP

Clone the repository, run `npm install`, and build it with `npm run build` using Node.js 20.10.0 or newer. Docker Compose deployment is also documented.

Yes. It notes that this direct setup is separate from Docker.

The Home Assistant connection uses `HASS_HOST`, `HASS_TOKEN`, and `HASS_SOCKET_URL`. `PORT`, `NODE_ENV`, and `DEBUG` are also supported server settings, with port 3000 as the default.

Yes. Add-on management requires Supervisor access, and HACS must be installed for the package-management features.

Related MCP servers

Add a badge to your READMEShow it’s listed — live SVG, Markdown or HTML.

AllMCPs Directory Badge

Full Badge Customizer

Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.

Badge Style:
Live Dynamic SVG PreviewHomeassistant MCP AllMCPs Directory Badge
Markdown (GitHub README)
[![AllMCPs](https://allmcps.com/api/badge/tevonsb-homeassistant-mcp?style=directory)](https://allmcps.com/mcp/tevonsb-homeassistant-mcp)
HTML Embed
<a href="https://allmcps.com/mcp/tevonsb-homeassistant-mcp"><img src="https://allmcps.com/api/badge/tevonsb-homeassistant-mcp?style=directory" alt="Homeassistant MCP on AllMCPs" /></a>