Control and Manage Home Assistant with Natural Language
Face it, we all need help managing our HA setups. There’s always that gap between what you have in mind and the time it takes to actually implement it.
I built a bridge that lets your favorite LLM tool control Home Assistant directly… not just to turn lights on and off, but to modify your automations.
It’s called an MCP Server - Model Context Protocol
You tell it:
“Pause the evening music automation for 3 days” → it disables the automation and adds an automation to turn it back on later.
“The automation when I come home doesn’t work anymore, check what’s going on” → it finds the bug and proposes a fix with improved edge case handling.
“Reduce backyard sprinkler time when humidity is high” → it modifies that weird formula you came up with last spring.
Next for me: Convert it to an HA addon and try to integrate it with Assist.
I tested all available MCP servers for Home Assistant and noticed they aren’t quite optimized for daily use with language models. I wanted to push the limits of what an AI agent can do. For example, there was no tool for “fuzzy search” of entities — with this one, you don’t need the exact word to find entities, which gives much better results in everyday use.
For the same goal, I optimized several tool descriptions to “nudge” the LLM agent to use the right tools in the right sequence.
Also, the coverage of the native MCP server is still limited — for example, it doesn’t yet allow managing automations. My current goal is to build a fully independent MCP server, but in the future, once the native one becomes more mature, I plan to make them work together: the native MCP will host the basic and stable tools, while mine will focus on edge and advanced tools with this opinionated nudging.
I’ll update my roadmap (see the GitHub wiki) to make this clearer.
These all sound like potentially great contributions to the native MCP server integrations. What’s the motivation to develop them as a standalone custom integration?
For now, I like it as a separate project. There is a learning curve to Core development that I’m not willing to invest in as this is a weekend project.
I kind of tried, but just cloning the Core repo took 1h on my laptop
Beside, as I said, I want to push the limits and that’s not in line with Core.
I published under MIT licence if someone wants to copy some parts or ideas to Core or elsewhere.
I’ve been using this extensively since you made it available, its added real value to me and how I use Home Assistant. Its also saved me a significant amount of time. I just wanted to say a massive thank you.
Trying to get it up and running, but have some issues:
Installed as add on into my HA VM. Installation seems to complete ok, however I do not see add-on in the list of installed ones.
Accessing once again add-on installation screen I can get to add-on configuration screen though and there I see it being installed already and running. After checking log I can see that it should be available under http://0.0.0.0:9583/private_redacted. So it is not showing HA address, where I’d expect it to be exposed.
However after changing the URL to HA IP it seems to respond, though with error:
It might be due to attempt of connecting from the web browser, though, so I assume it is working OK.
As instructed I added mcp-proxy (how to verify installation is properly concluded?).
I tried to configure Claude Desktop to connect adding to its configuration file (claude_desktop_config.json on Mac):