ha-mcp
Home Assistant MCP Server - Complete control of Home Assistant through MCP
Decision gist · record as of 2026-08-14
Yes. Active maintenance, low install friction, permissive MIT license, no known vulnerabilities, and broad Python 3.13–3.14 support make it a solid choice. The custom component integration path is particularly smooth for Home Assistant users. Install if you want AI assistants to control your smart home; the recommended in-process setup requires no separate token management.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Requires Python 3.13 or 3.14 (requires_python: <3.15,>=3.13).
- Home Assistant instance and access token needed for actual operation.
- Low friction: pure Python wheel with no compiled dependencies.
License · maintenance · safety
MIT (permissive) — MIT license (permissive): you may use, modify, and distribute freely with minimal restrictions. No copyleft obligations.
last release 2026-08-10 (4 days) · last repo commit 2026-08-14 · 4,381 stars
0 known vulnerabilities (OSV.dev, 2026-08-14) · 427,611 downloads/mo, #6,748 on PyPI
Alternatives
Verify before relying
pip install ha-mcp
ha-mcp --help
# Or via uvx:
uvx ha-mcp@latest- Performance characteristics under concurrent AI client connections.
- Full feature parity across all Home Assistant installation types (OS, Supervised, Container, Core) in practice.
- Stability of the in-process custom component on long-running Home Assistant instances.
What it is and what it does
ha-mcp is a Model Context Protocol server that bridges AI assistants and Home Assistant. It exposes Home Assistant's device control, state queries, service calls, and automation management through an MCP interface, allowing AI models to interact with smart homes using natural language. The package can run as a Home Assistant custom component (in-process, recommended), a standalone add-on, Docker container, or via PyPI/uvx as an HTTP server. It depends on fastmcp for MCP protocol handling, httpx for HTTP requests, pydantic for data validation, python-dotenv for environment configuration, cryptography and truststore for secure connections, and packaging utilities.
The server supports multiple deployment modes and authentication strategies—webhook-based remote access through Nabu Casa or reverse proxies, local-only operation, optional Home Assistant account sign-in, and OIDC integration for external identity providers. A Home Assistant sidebar panel allows administrators to manage tools, feature flags, and settings. The package is actively maintained (last commit 2026-08-14) and marked Production/Stable.
Use it for
- Control smart home devices (lights, locks, thermostats) via natural language through Claude, ChatGPT, or other MCP-compatible AI clients.
- Query device states and automations from an AI assistant without manual Home Assistant dashboard navigation.
- Execute Home Assistant services and automations through conversational AI on local network or remote access.
- Integrate Home Assistant into AI workflows for home automation decision-making and multi-step tasks.
- Deploy ha-mcp in Home Assistant OS, Supervised, Container, or Core installations with a single install method.
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes.
Active maintenance, low install friction, permissive MIT license, no known vulnerabilities, and broad Python 3.13–3.14 support make it a solid choice. The custom component integration path is particularly smooth for Home Assistant users. Install if you want AI assistants to control your smart home; the recommended in-process setup requires no separate token management.
Install
ha-mcp on PyPI
Before you install
Low friction: pure Python wheel with no compiled dependencies. Active maintenance—last release 4 days ago, repository at 4381 stars. Requires Python 3.13 or 3.14 only; supports current versions.
Requires Python 3.13 or 3.14 (requires_python: <3.15,>=3.13). Home Assistant instance and access token needed for actual operation.
License in practice
MIT license (permissive): you may use, modify, and distribute freely with minimal restrictions. No copyleft obligations.
Quickstart
pip install ha-mcp
ha-mcp --help
# Or via uvx:
uvx ha-mcp@latest
Verify before relying
- Performance characteristics under concurrent AI client connections.
- Full feature parity across all Home Assistant installation types (OS, Supervised, Container, Core) in practice.
- Stability of the in-process custom component on long-running Home Assistant instances.
Package facts
| License | MIT permissive |
| Python support | Supports the current Python release <3.15,>=3.13 |
| Install friction | Low. Pure-Python wheel |
| Runtime dependencies | 9 packagesfastmcphttpxpydanticpython-dotenvtruststorecryptographypydantic-montytzdatapackaging |
| Maintenance | Actively maintained 4 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 427,611 / month, #6,748 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | Development Status :: 5 - Production/StableIntended Audience :: DevelopersLicense :: OSI Approved :: MIT LicenseProgramming Language :: Python :: 3Programming Language :: Python :: 3.13Programming Language :: Python :: 3.14Topic :: Home AutomationTopic :: Software Development :: Libraries :: Python Modules |
Evidence: ha_mcp-8.2.0-py3-none-any.whl
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “home assistant ai integration”
- ha-mcpProvides a Model Context Protocol (MCP) server that connects AI…
- ha-mcp-devAn MCP server that lets AI assistants control Home Assistant smart…
- hass-web-proxy-libProvides base classes and utilities for Home Assistant integrations…
Give your agent the search over MCP, or paste the wish link into any chat.
More Python Modules packages
Converts domain names between Unicode and ASCII-compatible encoding (Punycode) according to IDNA 2008 and Unicode Technical Standard 46, with security validation and broader script coverage than the standard library.
Install it if you work with internationalized domain names, need to validate domains, or use HTTP clients that depend on it transitively.
Setuptools is a Python build backend and package management tool that handles building, distributing, and installing Python packages, including support for C/C++ extension modules.
PyYAML parses and emits YAML 1.1 data format, enabling serialization and deserialization of configuration files and Python objects to and from human-readable YAML text.
Pydantic validates Python data structures against type hints, coercing and checking input at runtime to ensure it matches a declared schema.
Provides reusable metadata objects for use with PEP-593 `typing.Annotated` to express common constraints like bounds, collection sizes, and predicates on types.
Install it if you use or build libraries that need to express type constraints in a standardized, inspectable way—or if you want to annotate your own types with…
Provides runtime tools to inspect and introspect Python type annotations, enabling programmatic examination of type hints at execution time.
See also ha-mcp-dev · hass-nabucasa · nextcloud-mcp-server · astro-airflow-mcp · plugwise · mcpforunityserver · aiohomematic · excel-mcp-server · python-matter-server · arcade-mcp-server