@orellbuehler/homeassistant-mcp 0.7.0 → 0.7.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/README.md +40 -11
  2. package/package.json +6 -1
package/README.md CHANGED
@@ -1,21 +1,46 @@
1
- # homeassistant-mcp
1
+ # Home Assistant MCP Server
2
2
 
3
3
  [![npm](https://img.shields.io/npm/v/@orellbuehler/homeassistant-mcp.svg)](https://www.npmjs.com/package/@orellbuehler/homeassistant-mcp)
4
+ [![npm downloads](https://img.shields.io/npm/dm/@orellbuehler/homeassistant-mcp.svg)](https://www.npmjs.com/package/@orellbuehler/homeassistant-mcp)
4
5
  [![CI](https://github.com/OrellBuehler/homeassistant-mcp/actions/workflows/ci.yml/badge.svg)](https://github.com/OrellBuehler/homeassistant-mcp/actions/workflows/ci.yml)
5
6
  [![node](https://img.shields.io/node/v/@orellbuehler/homeassistant-mcp.svg)](https://nodejs.org)
6
7
  [![license: MIT](https://img.shields.io/badge/license-MIT-blue.svg)](./LICENSE)
7
8
 
8
- MCP server for [Home Assistant](https://www.home-assistant.io/) that exposes the
9
- [REST API](https://www.home-assistant.io/integrations/api/) and WebSocket registries as tools for
10
- AI agents.
9
+ A [Model Context Protocol](https://modelcontextprotocol.io/) server that turns your
10
+ [Home Assistant](https://www.home-assistant.io/) instance into a safe workbench for AI agents —
11
+ built to **author and validate configuration and automations**, not to control your home.
11
12
 
12
- It is built to **help an agent author and validate Home Assistant configuration and automations** —
13
- not to control your home. It tells the agent what exists live (entities, services, events, areas,
14
- devices), validates the agent's work (render Jinja2 templates, check config, read the error log),
15
- authors automations (create/replace/delete via the config API), can reload reloadable domains after
16
- YAML edits, can configure the Energy dashboard (sources and the Individual-devices list), manage
17
- Lovelace resources, and prune HACS repositories. It deliberately has **no tools to turn devices
18
- on/off, set states, or fire events**.
13
+ Point Claude (or any MCP client) at it and the agent can:
14
+
15
+ - **See what exists, live** entities, services, events, areas, devices, labels, state history,
16
+ logbook.
17
+ - **Author configuration** — create/edit automations, configure the Energy dashboard, manage
18
+ Zigbee (ZHA) groups, register Lovelace resources, prune HACS repositories, rename entities,
19
+ reload YAML domains.
20
+ - **Validate its own work** — render Jinja2 templates against live state, run HA's config check,
21
+ read the error log, and inspect step-by-step execution traces of automations it wrote.
22
+ - **Never touch your devices** — there is deliberately no `call_service`, no `set_state`, and no
23
+ `fire_event`. The agent writes config; it cannot turn anything on or off.
24
+
25
+ 42 tools, zero install (`npx`), works with Claude Code, Claude Desktop, Cursor, and any other MCP
26
+ client.
27
+
28
+ ## Example prompts
29
+
30
+ > "Create an automation that turns on the porch light 30 minutes before sunset, but only when
31
+ > someone is home."
32
+
33
+ > "My 'goodnight' automation didn't fire last night. Figure out why."
34
+
35
+ > "Write a template sensor for net grid power and validate it against live state before I put it
36
+ > in my YAML."
37
+
38
+ > "Set up my Energy dashboard: grid import/export from these two sensors, solar from the inverter,
39
+ > and add every smart plug as an individual device."
40
+
41
+ > "Group the three living-room bulbs into one Zigbee group so they dim in sync."
42
+
43
+ > "I uninstalled a HACS card — find and remove the dangling Lovelace resource."
19
44
 
20
45
  ## Install
21
46
 
@@ -82,6 +107,10 @@ available immediately. Verify with `claude mcp list` (should show `homeassistant
82
107
 
83
108
  ## Tools
84
109
 
110
+ 42 tools in 12 groups. REST tools go through the
111
+ [Home Assistant REST API](https://www.home-assistant.io/integrations/api/); WebSocket tools use the
112
+ config registries that are not exposed over REST.
113
+
85
114
  **Entities & state** (REST)
86
115
 
87
116
  | Tool | Description |
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@orellbuehler/homeassistant-mcp",
3
- "version": "0.7.0",
3
+ "version": "0.7.1",
4
4
  "description": "Model Context Protocol server for Home Assistant: introspect entities, services, events, registries, render templates and validate configuration to help AI agents author HA configs and automations.",
5
5
  "type": "module",
6
6
  "bin": {
@@ -26,11 +26,16 @@
26
26
  },
27
27
  "keywords": [
28
28
  "mcp",
29
+ "mcp-server",
29
30
  "model-context-protocol",
30
31
  "home-assistant",
31
32
  "homeassistant",
32
33
  "hass",
33
34
  "home-automation",
35
+ "smart-home",
36
+ "automation",
37
+ "claude",
38
+ "ai-agents",
34
39
  "llm",
35
40
  "ai"
36
41
  ],