Ha MCP
Comprehensive Model Context Protocol server for managing Home Assistant through AI assistants.
Connector by homeassistant-ai · GitHub account verified by the MCP Registry
Install
Works with Claude Code, Codex, VS Code, Cursor, Windsurf, Claude Desktop. Read the repository before you give any tool access to your data.
npx agentmarket install connector/homeassistant-ai-ha-mcp
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: workflow-automation, monitoring-observability
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this server can do and what it asks for, from its tool list and install config. Checked Oct 25, 2026.
- Tools
- 6 read · 7 write · 0 delete · 3 not yet classified
- Secrets
- None asked for
- Install scripts
- None found
- Runs as
- Python package
Tools by what they do 16
Read from the source code; the running server may list different tools.
Read 6 · Look things up without changing anything.
echo_toolha_get_appha_get_logsha_get_skill_guidelist_filesread_file
Write 7 · Create, change, send or run things.
create_sessionha_eval_templateha_manage_appha_manage_backupha_manage_custom_toolstore_filessubmit_form
Not yet classified 3 · We could not tell from the name and description.
end_sessiongreetingtool
Files it touches
- Any path the agent passes to its tools
Tools (16)
Read from the source code; the running server may differ. Descriptions are the server’s own words; hidden characters are shown as [U+…].
create_sessionCreate a new session and return its identifier. Mints an unguessable `uuid4`, records an initial session owned by the current principal, and returns the id as a string. Store it and pass it back as a `session_id` argument on later calls to persist state across a session — only an id created this way resolves. State is keyed by the authenticated principal, so the id organizes sessions within a user; on an unauthenticated connection the id is the only thing standing between callers, which is why it is unguessable.
echo_toolEcho the input text
end_sessionEnd a session and delete all of its state. Validates the id like any other resolution (an unknown or foreign id is rejected), then deletes the session's key so the id no longer resolves.
greetingProvides a simple info.
ha_eval_templateExecute a Jinja2 template render, or an automation condition check, in Home Assistant. Renders templates with Home Assistant's template engine (all states, functions and filters available), or checks a condition block the way an automation would and returns true/false. When to use: any one-shot answer DERIVED from current HA state (an average across sensors, a count of entities matching a condition, a rendered message with live values), and testing a template or condition before embedding it in an automation. One render beats fetching N states and doing the math yourself. When NOT to use: a…
ha_get_appGet installed or available Home Assistant apps (add-ons), or details for one. Do not use this tool to change app state or configuration; use ``ha_manage_app``. Use ``slug`` for details, ``source="installed"`` for an inventory, or ``source="available"`` for store discovery. Requires Home Assistant OS or Supervised.
ha_get_logsGet Home Assistant logs from various sources. Prefer source='system' for triage: it returns HA's own deduplicated system_log entries with counts, first_occurred and the full exception traceback, and its counts run since each error first occurred. error_log with structured=True counts only what is inside the fetched window (reported as window_start/window_end; every install reads a capped window) and drops tracebacks, which structured=False gets back; use it for entries below system_log's WARNING+ ~50-entry cap, or for the per-component rollup. In structured mode limit/order do not apply: issu…
ha_get_skill_guideDescription is built at runtime.
ha_manage_appManage Home Assistant apps (add-ons) or proxy an app API. For app inventory, status, and Supervisor metadata, call ``ha_get_app`` first; use proxy mode here for documented app-specific read APIs, and do not infer private app API schemas. Use exactly one mode: lifecycle/store action, configuration fields, ``path`` proxy, or ``path`` with ``array_patch``. Requires Home Assistant OS or Supervised. When ha-mcp itself runs as an app it cannot update its own running slug; update ha-mcp from the Home Assistant Apps UI. ``options`` merges top-level keys and one nested mapping level; supply complete…
ha_manage_backupDescription is built at runtime.
ha_manage_custom_toolCreate and run a custom tool in a sandbox, or manage saved custom tools. LAST RESORT — search for existing tools first. **Modes** (mutually exclusive): ``code`` + ``justification``; ``run_saved``; ``list_saved=True``. **Available functions in sandbox:** - ``api_get(endpoint)`` / ``api_post(endpoint, data)`` — HA REST API, for operations not covered by existing tools - ``ws_send(message)`` — send a HA WebSocket command, for operations only available over WebSocket (most registry CRUD, template rendering, Lovelace operations). ``message`` must include a ``"type"`` field; the MCP serve…
list_filesList all uploaded files with metadata.
read_fileRead an uploaded file's contents by name.
store_filesStore uploaded files. Receives file objects with name, size, type, data (base64).
submit_formValidate and process form submission.
Show 1 more tools
tool
Compare and alternatives
Signals
- Stars
- 5,200
- Forks
- 244
- Open issues
- 12
- Contributors
- 92
- Weekly downloads
- 60,509
- Last commit
- Oct 24, 2026 (4 days ago)
- Last release
- Oct 14, 2026 (14 days ago)
- Last package publish
- Oct 14, 2026 (14 days ago)
From GitHub (fetched Oct 24, 2026) and the package registry.
Details
- Registry name
io.github.homeassistant-ai/ha-mcp- Version
- 8.7.0
- Auth
- No auth
- Packages
- pypi ha-mcpoci
ghcr.io/homeassistant-ai/ha-mcp:8.7.0 - License
- MIT
- Repository
- github.com/homeassistant-ai/ha-mcp
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
More from homeassistant-ai
Cite this page
Ha MCP. Agent Mart. https://agentmart.dev/connectors/homeassistant-ai-ha-mcp (last updated 2026-10-24)