Home Assistant MCP Server
MCP ServerFreeControl smart home devices and automations via Home Assistant MCP.
Capabilities11 decomposed
mcp-standardized smart home device control via natural language
Medium confidenceTranslates natural language requests from LLMs into Home Assistant service calls through the Model Context Protocol (MCP) interface. The server exposes a tool registry that LLMs can discover and invoke, with each tool mapping to Home Assistant entity services (lights, climate, switches, covers, locks, vacuums, media players, fans). Requests flow through Express/LiteMCP servers, pass through token-based security validation middleware, and route to Home Assistant REST API endpoints with long-lived access tokens.
Implements MCP protocol as a first-class integration pattern rather than REST-only wrapper, enabling LLMs to discover and invoke Home Assistant tools through standardized schema-based function calling with native support for both Express and LiteMCP server transports
Provides standardized MCP tool discovery and invocation vs custom REST wrappers, enabling seamless integration with Claude and other MCP-compatible LLMs without custom prompt engineering
real-time smart home state streaming via server-sent events
Medium confidenceEstablishes persistent Server-Sent Events (SSE) connections that stream Home Assistant state changes to connected clients in real-time. The server maintains WebSocket connections to Home Assistant, listens for state_changed events, and broadcasts updates to all subscribed SSE clients with entity_id, old_state, new_state, and timestamp metadata. This enables LLM agents to maintain current awareness of home state without polling.
Bridges Home Assistant WebSocket events directly to SSE clients, providing real-time state propagation without polling or custom event subscription logic, enabling LLMs to maintain contextual awareness of home state changes
Eliminates polling overhead vs REST-based state queries, providing sub-second state update latency while reducing server load through event-driven architecture
entity type-specific control with service parameter mapping
Medium confidenceImplements entity type-specific control logic that maps generic control requests to Home Assistant service calls with appropriate parameters. For example, light control maps brightness/color requests to light.turn_on service with brightness/rgb_color parameters; climate control maps temperature requests to climate.set_temperature service. Each entity type (light, climate, switch, cover, lock, vacuum, media_player, fan) has dedicated control logic that validates parameters and constructs correct service calls. This abstraction hides Home Assistant service complexity from LLMs.
Implements entity type-specific control logic that abstracts Home Assistant service complexity, mapping generic control requests to correct services with parameter validation
Provides device-type-aware control vs generic service calling, enabling LLMs to control diverse devices through simplified interfaces without service-level knowledge
context-aware entity state querying with structured response formatting
Medium confidenceProvides endpoints to query current state of Home Assistant entities (devices, sensors, automations) and returns structured JSON responses with entity_id, state, attributes, and last_updated metadata. The server maintains a cached view of all Home Assistant entities and supports filtering by entity type (light, climate, switch, sensor, etc.). Responses are formatted to be LLM-friendly with human-readable state values and attribute descriptions.
Formats Home Assistant entity state responses specifically for LLM consumption with human-readable attributes and type-specific metadata, enabling agents to reason about device state without custom parsing logic
Provides LLM-optimized state formatting vs raw Home Assistant REST API responses, reducing token overhead and improving reasoning accuracy through structured context injection
automation and scene management with complex configuration support
Medium confidenceEnables creation, modification, triggering, and management of Home Assistant automations and scenes through MCP tools. Supports complex automation configurations including triggers (time, state, event), conditions (templates, state checks), and actions (service calls, scene activation). The server translates LLM requests into Home Assistant automation YAML/JSON and manages automation lifecycle (enable/disable/trigger). Scenes can be created from current state snapshots or manually configured.
Translates natural language automation descriptions into Home Assistant automation YAML with support for complex trigger/condition/action chains, enabling LLMs to create sophisticated automations without manual configuration
Abstracts Home Assistant automation YAML complexity through LLM-friendly tool interfaces vs requiring users to write YAML manually, enabling non-technical users to create complex automations
add-on and package lifecycle management with hacs integration
Medium confidenceProvides tools to browse, install, uninstall, start, stop, and configure Home Assistant add-ons and custom integrations through Home Assistant Community Store (HACS). The server exposes add-on discovery endpoints, installation status tracking, and configuration management. Supports both official Home Assistant add-ons and community-maintained packages. Configuration changes trigger add-on restarts and validate settings before application.
Integrates Home Assistant Supervisor add-on management with HACS community package discovery through a unified MCP interface, enabling LLM agents to extend Home Assistant capabilities dynamically
Automates add-on discovery and installation vs manual UI-based management, enabling programmatic Home Assistant capability expansion through LLM agents
token-based security validation and request authentication
Medium confidenceImplements security middleware that validates long-lived access tokens on all incoming requests before routing to Home Assistant. Tokens are validated against Home Assistant's token store, and requests without valid tokens are rejected with 401 Unauthorized responses. The middleware applies to all endpoints (device control, state queries, automation management) and prevents unauthorized access to Home Assistant. Token validation happens synchronously before request processing.
Implements synchronous token validation middleware that blocks unauthorized requests before Home Assistant API calls, preventing token-less access to smart home control
Provides request-level authentication vs relying solely on Home Assistant token validation, adding a security layer that prevents misconfigured MCP servers from exposing Home Assistant
tool registry and schema-based function discovery for llms
Medium confidenceMaintains a registry of all available MCP tools (device control, state queries, automation management, add-on management) with JSON Schema definitions for parameters and return types. The tool registry is exposed through MCP protocol endpoints, enabling LLMs to discover available tools, understand parameter requirements, and validate tool invocations against schemas. Each tool includes description, parameter schema, and example usage. LLMs use this registry to determine which tools to invoke for user requests.
Exposes Home Assistant entities as discoverable MCP tools with JSON Schema validation, enabling LLMs to understand available capabilities and validate parameters before invocation
Provides schema-based tool discovery vs hardcoded tool lists, enabling dynamic capability exposure as Home Assistant configuration changes
multi-transport server support (express and litemcp)
Medium confidenceImplements dual server transports for MCP protocol support: Express.js for HTTP/REST endpoints and LiteMCP for lightweight MCP-specific protocol handling. Both transports share the same underlying tool implementations and Home Assistant integration layer. Express handles traditional HTTP requests and SSE connections, while LiteMCP provides optimized MCP protocol support. Clients can choose transport based on their requirements (HTTP compatibility vs MCP protocol optimization).
Implements dual-transport architecture supporting both Express HTTP and LiteMCP protocol transports with shared tool/integration layer, enabling flexible deployment options
Provides transport flexibility vs single-transport solutions, allowing clients to choose HTTP or MCP protocol based on requirements without requiring separate server instances
stateless request routing with home assistant api delegation
Medium confidenceRoutes all device control, state query, and automation management requests to Home Assistant REST API endpoints using long-lived access tokens. The MCP server acts as a stateless proxy that translates tool invocations into Home Assistant service calls, maintaining no persistent state about devices or automations. Each request is independently validated, routed to the appropriate Home Assistant endpoint, and responses are returned to the client. This architecture enables horizontal scaling and simplifies deployment.
Implements stateless request routing that delegates all operations to Home Assistant REST API, eliminating state synchronization complexity and enabling horizontal scaling
Provides stateless architecture vs stateful proxies, enabling simple horizontal scaling and eliminating state consistency issues at the cost of increased latency
websocket-based event subscription to home assistant state changes
Medium confidenceEstablishes persistent WebSocket connections to Home Assistant and subscribes to state_changed events. The server maintains these connections internally and uses them to power SSE streaming and real-time state awareness. WebSocket subscriptions are established using Home Assistant's WebSocket API with long-lived tokens. The server handles connection lifecycle (reconnection on failure, heartbeat/ping-pong), event filtering, and broadcasts updates to connected SSE clients.
Maintains persistent WebSocket subscriptions to Home Assistant state_changed events with automatic reconnection and heartbeat management, enabling real-time event streaming without polling
Provides event-driven state updates vs REST polling, reducing latency and server load through WebSocket subscriptions with automatic connection management
Capabilities are decomposed by AI analysis. Each maps to specific user intents and improves with match feedback.
Related Artifactssharing capabilities
Artifacts that share capabilities with Home Assistant MCP Server, ranked by overlap. Discovered automatically through the match graph.
Home Assistant
** - Interact with Home Assistant to control smart home devices, query states, manage automations, and troubleshoot your smart home setup.
hass-mcp
MCP server for Home Assistant (REST/WebSocket) control.
domestic-motion
MCP server: domestic-motion
homeassconfig
MCP server: homeassconfig
Nanoleaf
** - Control Nanoleaf smart lights through MCP - turn on/off, adjust brightness, change colors, set effects, and discover devices
ThingsBoard
** - The ThingsBoard MCP Server provides a natural language interface for LLMs and AI agents to interact with your ThingsBoard IoT platform.
Best For
- ✓AI application developers building LLM-powered smart home assistants
- ✓Home Assistant power users integrating with Claude/GPT via MCP clients
- ✓Teams deploying multi-device home automation with LLM orchestration
- ✓LLM agents requiring low-latency state awareness for decision-making
- ✓Real-time monitoring dashboards or notification systems
- ✓Reactive automation workflows triggered by state changes
- ✓LLM agents controlling heterogeneous device types without service-level knowledge
- ✓Simplified control interfaces that abstract Home Assistant complexity
Known Limitations
- ⚠Requires Home Assistant instance with network accessibility and long-lived token generation
- ⚠Tool discovery and invocation latency depends on Home Assistant API response times (typically 100-500ms per command)
- ⚠No built-in command queuing or retry logic — failed commands fail immediately without automatic retry
- ⚠Security relies on token-based authentication; token compromise exposes full Home Assistant control
- ⚠SSE connections are unidirectional (server-to-client only) — requires separate channel for commands
- ⚠No built-in message buffering — clients connecting after events miss historical state changes
Requirements
Input / Output
UnfragileRank
UnfragileRank is computed from adoption signals, documentation quality, ecosystem connectivity, match graph feedback, and freshness. No artifact can pay for a higher rank.
About
Community MCP server for Home Assistant smart home platform. Provides tools to control lights, switches, and climate devices, query sensor states, trigger automations, and manage home entities.
Categories
Alternatives to Home Assistant MCP Server
Search the Supabase docs for up-to-date guidance and troubleshoot errors quickly. Manage organizations, projects, databases, and Edge Functions, including migrations, SQL, logs, advisors, keys, and type generation, in one flow. Create and manage development branches to iterate safely, confirm costs
Compare →AI-optimized web search and content extraction via Tavily MCP.
Compare →Scrape websites and extract structured data via Firecrawl MCP.
Compare →Are you the builder of Home Assistant MCP Server?
Claim this artifact to get a verified badge, access match analytics, see which intents users search for, and manage your listing.
Get the weekly brief
New tools, rising stars, and what's actually worth your time. No spam.
Data Sources
Looking for something else?
Search →