A Model Context Protocol (MCP) server project that integrates with Home Assistant to provide smart home control capabilities.
The server provides prompts for each domain's set of tools.
The server implements control for various Home Assistant domains. Currently supports:
Example tools include:
light-turn_on()
climate-turn_off()
alarm_control_panel-disarm()
lock-lock()
humidifier-turn_off()
Create a .env
file in the root directory with:
HOMEASSISTANT_TOKEN=your_long_lived_access_token_here # get it from your Home Assistant instance after onboarding
HOMEASSISTANT_BASE_URL=your_home_assistant_url_here # e.g. http://homeassistant.local:8123
Follow the instructions on how to install Home Assistant and get a long lived access token.
On MacOS: ~/Library/Application\ Support/Claude/claude_desktop_config.json
On Windows: %APPDATA%/Claude/claude_desktop_config.json
To prepare the package for distribution:
uv sync
uv build
This will create source and wheel distributions in the dist/
directory.
uv publish
Note: You'll need to set PyPI credentials via environment variables or command flags:
--token
or UV_PUBLISH_TOKEN
--username
/UV_PUBLISH_USERNAME
and --password
/UV_PUBLISH_PASSWORD
Since MCP servers run over stdio, debugging can be challenging. For the best debugging experience, we strongly recommend using the MCP Inspector.
You can launch the MCP Inspector via npm
with this command:
npx @modelcontextprotocol/inspector uv --directory /Users/miguel/Documents/home-assistant-server/home-assistant-server run home-assistant-server
Upon launching, the Inspector will display a URL that you can access in your browser to begin debugging.
Thanks for your interest in contributing to this project!
Please see CONTRIBUTING.md for guidelines.
MIT License - see LICENSE for details.
Seamless access to top MCP servers powering the future of AI integration.