Home Assistant MCP Server
MCP ServerFreeControl smart home devices and automations via Home Assistant MCP.
Capabilities9 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, using a tool registry that maps device types (lights, climate, covers, switches, locks, vacuums, media players) to their corresponding Home Assistant service schemas. The system validates requests through security middleware before routing to the Home Assistant REST API, enabling Claude, GPT, and other LLMs to control devices with structured, type-safe function calling.
Implements MCP tool registry pattern specifically for Home Assistant service schemas, enabling LLMs to discover and call device control functions with type safety and validation before execution, rather than requiring manual prompt engineering or hardcoded function definitions
Provides standardized MCP interface for Home Assistant control (vs. custom REST wrappers), enabling seamless integration with any MCP-compatible LLM client without reimplementation
real-time smart home state streaming via server-sent events
Medium confidenceEstablishes Server-Sent Events (SSE) channels that stream Home Assistant state changes in real-time to connected LLM clients, using WebSocket connections to the Home Assistant instance to capture entity state updates and relay them as structured JSON events. This enables agents to maintain current context about device states without polling, supporting reactive automation workflows where the LLM responds to state changes as they occur.
Bridges Home Assistant WebSocket events to MCP clients via SSE, providing a standardized real-time state channel that LLMs can subscribe to without managing WebSocket connections themselves, abstracting Home Assistant's event model into a simpler stream interface
Enables real-time state awareness for LLM agents without polling (vs. periodic REST calls), reducing latency and server load while maintaining compatibility with stateless LLM inference patterns
automation and scene creation/management via llm-driven configuration
Medium confidenceAllows LLMs to create, edit, enable/disable, and trigger Home Assistant automations and scenes through structured tool calls that generate YAML-compatible automation definitions. The system accepts natural language descriptions of automation logic (e.g., 'turn on lights when motion is detected after sunset') and translates them into Home Assistant automation entities with triggers, conditions, and actions, supporting complex configurations with multiple conditions and sequential actions.
Exposes Home Assistant automation creation as MCP tools, enabling LLMs to generate and deploy automations programmatically rather than requiring manual YAML editing, with support for complex multi-condition logic and sequential action chains
Provides LLM-driven automation authoring (vs. manual YAML or UI-only configuration), reducing friction for non-technical users while maintaining full Home Assistant automation expressiveness
add-on and package discovery, installation, and lifecycle management
Medium confidenceExposes Home Assistant add-on and Home Assistant Community Store (HACS) package management through MCP tools, allowing LLMs to browse available add-ons, install/uninstall them, start/stop services, and manage configurations. The system queries Home Assistant's add-on registry and HACS repositories, presents available packages with descriptions and dependencies, and executes lifecycle operations through the Home Assistant supervisor API.
Abstracts Home Assistant supervisor API and HACS repository management into MCP tools, enabling LLMs to discover and manage extensions without requiring users to navigate the Home Assistant UI or manually edit configuration files
Provides programmatic add-on management for LLM agents (vs. manual UI-based installation), enabling automated setup workflows and intelligent recommendations based on user context
context-aware entity state querying and filtering
Medium confidenceProvides MCP tools for querying Home Assistant entity states with filtering, aggregation, and context enrichment capabilities. The system allows LLMs to retrieve current states of specific entities or groups of entities (e.g., 'all lights in the living room', 'all temperature sensors'), apply filters based on attributes or state values, and receive structured responses that include entity metadata, attributes, and historical context. This enables agents to make informed decisions based on comprehensive home state awareness.
Implements entity state querying as MCP tools with built-in filtering and aggregation, allowing LLMs to retrieve contextual information about home state without requiring knowledge of Home Assistant's REST API structure or entity naming conventions
Provides structured entity querying for LLM context (vs. unstructured state dumps), enabling agents to make informed decisions based on filtered, aggregated home state data
security-validated request routing with token-based access control
Medium confidenceImplements security middleware that validates all incoming requests through token-based authentication and authorization before routing to Home Assistant tools. The system uses long-lived access tokens stored securely, validates request signatures or bearer tokens, applies rate limiting per client, and logs all operations for audit trails. This ensures that only authorized LLM clients can issue commands to the home automation system, preventing unauthorized device control.
Implements MCP-level security middleware that validates tokens before routing to Home Assistant, preventing unauthorized access at the protocol layer rather than relying on Home Assistant's built-in auth alone
Provides application-level access control for MCP clients (vs. relying solely on Home Assistant token validation), enabling multi-client deployments with per-client rate limiting and audit trails
tool registry discovery and schema exposition for llm function calling
Medium confidenceExposes a dynamic tool registry that LLM clients can query to discover available smart home control functions, their parameters, return types, and usage constraints. The system generates JSON schemas for each tool (e.g., turn_on_light, set_temperature) based on Home Assistant service definitions, includes descriptions and examples, and allows clients to introspect capabilities without hardcoding function definitions. This enables LLMs to understand what operations are available and how to call them correctly.
Dynamically generates MCP tool schemas from Home Assistant service definitions, enabling LLMs to discover and call device control functions without hardcoding function definitions or requiring manual schema maintenance
Provides dynamic tool discovery (vs. static hardcoded functions), enabling LLM agents to adapt to different Home Assistant configurations and automatically support new devices without code changes
multi-provider llm client support via standardized mcp interface
Medium confidenceImplements the Model Context Protocol (MCP) standard, enabling the server to work with any MCP-compatible LLM client (Claude, GPT, Llama, custom agents) without client-specific code. The system exposes tools and resources through the MCP protocol, handles protocol-level serialization/deserialization, and maintains compatibility with both Express-based REST clients and LiteMCP protocol clients. This abstraction allows a single Home Assistant MCP server to serve multiple LLM platforms simultaneously.
Implements MCP protocol standard to provide a single Home Assistant integration point for any MCP-compatible LLM client, rather than building client-specific adapters or requiring clients to implement Home Assistant integration directly
Enables multi-LLM-provider support through a single standardized interface (vs. building separate integrations for each LLM platform), reducing maintenance burden and enabling future LLM platforms to integrate without code changes
context management and state persistence for multi-turn llm conversations
Medium confidenceManages conversation context and home state snapshots across multiple LLM turns, allowing agents to maintain awareness of previous commands and their effects. The system stores recent command history, entity state changes, and automation triggers in memory or external storage, provides context update endpoints for LLM clients to refresh state, and enables agents to reason about cause-and-effect relationships between their actions and home state changes. This supports stateful multi-turn conversations where the LLM can understand the consequences of its previous commands.
Provides context management endpoints that allow LLM clients to refresh and track home state across multiple conversation turns, enabling agents to understand cause-and-effect relationships between their commands and resulting state changes
Enables stateful multi-turn conversations for LLM agents (vs. stateless single-turn interactions), allowing agents to reason about complex workflows and understand the consequences of their actions
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.
Homey
** - Interact with Homey to control smart home system. Supports devices, flows, and zones. Contains a few goodies for better integrations with LLMs.
Nanoleaf
** - Control Nanoleaf smart lights through MCP - turn on/off, adjust brightness, change colors, set effects, and discover devices
@atomicbotai/computer-use-mcp
MCP server exposing desktop computer-use as an MCP tool
lamda
The most powerful Android RPA agent framework, next generation mobile automation.
Best For
- ✓AI developers building LLM-powered smart home agents
- ✓Teams integrating Claude or GPT with Home Assistant instances
- ✓Builders creating voice/chat interfaces for home automation
- ✓Developers building reactive LLM agents that respond to home events
- ✓Teams creating real-time monitoring dashboards with LLM integration
- ✓Builders implementing multi-agent smart home orchestration
- ✓Non-technical users who want LLM-assisted automation setup
- ✓Developers building dynamic home automation platforms
Known Limitations
- ⚠Requires Home Assistant instance with long-lived access token — cannot work with local-only setups without token generation
- ⚠Tool registry is static per deployment — adding new device types requires server restart
- ⚠No built-in rate limiting on device commands — rapid successive calls could overwhelm Home Assistant or devices
- ⚠Service schema validation depends on Home Assistant version — incompatibilities may arise with major HA updates
- ⚠SSE connections are unidirectional — clients cannot send commands over the same connection, requiring separate HTTP endpoints
- ⚠State change events are not persisted — clients connecting after an event miss historical context
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
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 →