home-assistant-mcp
A Model Context Protocol (MCP) integration that enables AI assistants to search for and control Home Assistant devices through natural language commands in Cursor.
Documentation
Home Assistant MCP
A Model Context Protocol (MCP) integration for controlling Home Assistant devices using AI assistants.
Overview
This MCP allows AI assistants to control your Home Assistant devices. It provides tools to:
1. Search for entities in your Home Assistant instance
2. Control devices (turn them on/off)
3. Control light colors and brightness
Prerequisites
- Python 3.11 or higher
- Home Assistant instance running and accessible via API
- Home Assistant Long-Lived Access Token
Installation
Installing via Smithery
To install Home Assistant Integration for Claude Desktop automatically via Smithery:
npx -y @smithery/cli install @hpohlmann/home-assistant-mcp --client claudeManual Installation
1. Clone this repository
2. Set up a Python environment:
cd home-assistant
python -m venv .venv
source .venv/bin/activate # On Windows: .venv\Scripts\activate
pip install -U pip
pip install uv
uv pip install -e .Configuration
Get a Home Assistant Long-Lived Access Token
1. Go to your Home Assistant instance
2. Navigate to your profile (click on your username in the sidebar)
3. Scroll down to "Long-Lived Access Tokens"
4. Create a new token with a descriptive name like "MCP Integration"
5. Copy the token (you'll only see it once)
Set up in Cursor AI
Add the following configuration to your MCP configuration in Cursor:
{
"mcpServers": {
"home_assistant": {
"command": "uv",
"args": [
"--directory",
"/path/to/your/home-assistant-mcp",
"run",
"main.py"
],
"env": {
"HOME_ASSISTANT_TOKEN": "your_home_assistant_token_here"
},
"inheritEnv": true
}
}
}Replace:
- `/path/to/your/home-assistant` with the actual path to this directory
- `your_home_assistant_token_here` with your Home Assistant Long-Lived Access Token
Home Assistant URL Configuration
By default, the MCP tries to connect to Home Assistant at `http://homeassistant.local:8123`.
If your Home Assistant is at a different URL, you can modify the `HA_URL` variable in `app/config.py`.
Usage
Once configured, you can use Cursor AI to control your Home Assistant devices:
- Search for devices: "Find my living room lights"
- Control devices: "Turn on the kitchen light"
- Control light colors: "Set my living room lights to red"
- Adjust brightness: "Set my dining room lights to blue at 50% brightness"
Light Control Features
The MCP now supports advanced light control capabilities:
1. Color Control: Set any RGB color for compatible lights
2. Brightness Control: Adjust light brightness
Troubleshooting
- If you get authentication errors, verify your token is correct and has not expired
- Check that your Home Assistant instance is reachable at the configured URL
- For color control issues:
- Verify that your light entity supports RGB color control
- Check that the light is turned on before attempting to change colors
Future Capabilities
Dynamic Entity Exposure
The current implementation requires a two-step process to control devices:
1. Search for entities using natural language
2. Control the entity using its specific entity_id
A planned enhancement is to create a more dynamic way to expose entities to the control devices tool, allowing the AI to:
- Directly control devices through more natural commands (e.g., "turn off the kitchen lights")
- Cache frequently used entities for faster access
- Support more complex operations like adjusting brightness, temperature, or other attributes
- Handle entity groups and scenes more intuitively
This would significantly reduce the time to action and create a more seamless user experience when controlling Home Assistant devices through an AI assistant.
Frequently asked questions
What is home-assistant-mcp?
home-assistant-mcp is A Model Context Protocol (MCP) integration that enables AI assistants to search for and control Home Assistant devices through natural language commands in Cursor.
How do I install home-assistant-mcp?
Open the GitHub repository and follow its README. Most MCP servers are added to your client's MCP config, then called by your agent.
Is home-assistant-mcp open source?
Yes — it is hosted on GitHub at https://github.com/hpohlmann/home-assistant-mcp and has 24 stars.
Related MCP tools
Cognee is the open-source AI memory platform for agents. Give your AI agents persistent long-term memory across sessions with a self-hosted knowledge graph engine.
Automate browser based workflows with AI
Hindsight: Agent Memory That Learns
A privacy-first app that strips AI watermarks from content you own.
Agent framework and applications built upon Qwen>=3.0, featuring Function Calling, MCP, Code Interpreter, RAG, Chrome extension, etc.
The power of Claude Code / GeminiCLI / CodexCLI + [Gemini / OpenAI / OpenRouter / Azure / Grok / Ollama / Custom Model / All Of The Above] working as one.
Run your own MCP server? See who uses it and what to fix.
Measure it with TrackMCP