Installation¶
home-assistant-agent is a standard Python package and a prebuilt container image.
Pick the path that matches how you want to run it.
Requirements¶
- Python 3.11 – 3.14.
- A reachable Home Assistant instance with a long-lived access token — see Backing Platform to deploy one locally.
From PyPI (recommended)¶
Optional extras¶
The base install ships the MCP server runtime. Install the extra for what you need:
| Extra | Install | Pulls in |
|---|---|---|
| (base) | pip install home-assistant-agent |
FastMCP MCP-server runtime (agent-utilities[mcp]) |
agent |
pip install "home-assistant-agent[agent]" |
Pydantic-AI agent server + Logfire tracing |
all |
pip install "home-assistant-agent[all]" |
MCP server, agent server, and tracing |
test |
pip install "home-assistant-agent[test]" |
pytest, pytest-asyncio, pytest-cov, pytest-xdist |
From source¶
git clone https://github.com/Knuckles-Team/home-assistant-agent.git
cd home-assistant-agent
pip install -e ".[all]" # editable install with every extra
With uv:
Prebuilt Docker image¶
A multi-stage, slim image is published on every release (installs
home-assistant-agent[all], entrypoint home-assistant-mcp):
docker pull knucklessg1/home-assistant-agent:latest
docker run --rm -i \
-e HOME_ASSISTANT_URL=http://your-home-assistant:8123 \
-e HOME_ASSISTANT_TOKEN=your_long_lived_access_token \
knucklessg1/home-assistant-agent:latest # stdio transport (default)
For an HTTP server with a published port and the agent server, see Deployment.
Verify the install¶
Next steps¶
- Deployment — run it as a long-lived MCP server (and agent server) behind Caddy + DNS.
- Usage — call the tools, the API, and the CLI.
- Configuration — every environment variable.