LLM.coPrivate, self-hosted LLM deployments
Legal AI infrastructure for firms
AI RFP discovery and response drafting
Automatic.coBusiness process automation
Secure AI virtual data roomsha-mcp
ha-mcp is a Python-based Model Context Protocol server that bridges AI assistants (Claude, ChatGPT) with Home Assistant smart home systems. It exposes 85+ tools for controlling devices, querying states, and managing automations through natural language.
Key facts
Objective fields from the source. Values we can't verify are shown as “Unknown” rather than guessed.
| Field | Value |
|---|---|
| Repository | homeassistant-ai/ha-mcp |
| Owner | homeassistant-ai |
| Primary language | Python |
| License | MIT — OSI-approved |
| Stars | 3.9k |
| Forks | 152 |
| Open issues | 10 |
| Latest release | v7.10.0 (2026-07-06) |
| Last updated | 2026-07-07 |
| Source | https://github.com/homeassistant-ai/ha-mcp |
What ha-mcp is
Built on FastMCP, ha-mcp translates MCP tool calls into Home Assistant service calls and state queries. Deployable as a HACS custom component (in-process), Home Assistant add-on, Docker container, or local Python package; supports HTTP streaming transport and optional webhook-based remote access.
Get the ha-mcp source
Clone the repository and explore it locally.
git clone https://github.com/homeassistant-ai/ha-mcp.gitcd ha-mcp# follow the project's README for install & configurationNeed it deployed, integrated, or customized instead? DEV.co ships production installs.
Best use cases
Implementation considerations
- Choose one install method per client to avoid connection hangs; the custom component (HACS) is recommended for simplicity and requires no token management.
- Enable webhook authentication (`ha_auth`) for multi-user setups to avoid sharing a secret URL; local-only mode is available if remote access is not needed.
- Monitor the 10 open issues and breaking changes (e.g., v7.3.0 moved `ha_config_set_yaml` to beta); test upgrades in non-critical environments first.
- Review the 85+ exposed tools in the settings panel to disable unused ones (especially file/YAML editing) if your organization has strict change-control policies.
- Stdio transport is not production-ready; use HTTP (Docker/PyPI) or the custom component instead.
When to avoid it — and what to weigh
- Your Home Assistant lacks network connectivity — ha-mcp requires a running Home Assistant instance. Offline-only smart home setups cannot use this server.
- You need guaranteed security certifications or compliance audits — This is an unofficial, community-maintained project with no published security audit or SLA. Production IoT environments with regulatory requirements should review or fork the code independently.
- You cannot expose any endpoint (local or remote) — Even local stdio mode has documented connection issues. All deployment methods require either a local HTTP port or a webhook URL, making fully isolated setups impractical.
- Your AI client does not support MCP — Only Claude Desktop, Claude.ai, ChatGPT with MCP plugins, and MCP-compatible clients can use ha-mcp. Older chatbots or custom systems require additional integration work.
License & commercial use
MIT License. Permits use, modification, and distribution for commercial and private purposes with attribution and no warranty.
MIT is a permissive OSI license that explicitly allows commercial use. However, this is an unofficial, unmaintained-by-Home-Assistant project; commercial deployments should review the code, test thoroughly, and consider forking or contracting support, as the project has no SLA or guaranteed support channel.
DEV.co evaluation signals
Editorial assessment — not user reviews. Directional, with an explicit confidence level.
| Signal | Assessment |
|---|---|
| Maintenance | Active |
| Documentation | Adequate |
| License clarity | Clear |
| Deployment complexity | Low |
| DEV.co fit | Strong |
| Assessment confidence | High |
The custom component uses Home Assistant's native user authentication when `ha_auth` is enabled, avoiding token exposure. However, the secret URL mode (default) requires protecting the webhook URL; ensure Home Assistant's HTTPS and Nabu Casa or reverse proxy are configured correctly. The project is not professionally audited; teams handling sensitive devices (locks, cameras) should review the code. Avoid enabling file/YAML editing tools unless necessary.
Alternatives to consider
Home Assistant Cloud API + custom LLM integration
Home Assistant Cloud exposes a REST API; custom integration code can call it without MCP. Suited for teams with in-house LLM expertise and no need for Claude/ChatGPT integration.
Home Assistant Automations + Node-RED
Traditional automation rules and visual flows require no LLM or MCP. Ideal for deterministic, rule-based use cases; does not enable natural-language control.
OpenAI GPT home integration plugins (ChatGPT ecosystem)
ChatGPT plugins for smart home (if available for your vendor). Tightly coupled to ChatGPT but may not require running an external MCP server; check availability for your devices.
Build on ha-mcp with DEV.co software developers
Start with the HACS custom component (no token needed) or explore Docker/PyPI deployments. Use the setup wizard to configure your AI client in minutes.
Talk to DEV.coRelated on DEV.co
Explore the category and the services that help you build with it.
ha-mcp FAQ
Do I need a token to use the custom component?
Can I use ha-mcp with ChatGPT, or only Claude?
What happens if I install ha-mcp two different ways (custom component + add-on)?
Is the server actively maintained?
Work with a software development agency
Evaluating ha-mcp is the easy part; running it is not. DEV.co offers software development services and AI software development services for mcp servers teams that need a partner past the proof of concept.
Ready to add AI control to your smart home?
Start with the HACS custom component (no token needed) or explore Docker/PyPI deployments. Use the setup wizard to configure your AI client in minutes.