/ Verzeichnis / Playground / Home Assistant MCP
● Community homeassistant-ai 🔑 Eigener Schlüssel nötig

Home Assistant MCP

von homeassistant-ai · homeassistant-ai/ha-mcp

Sprich mit deinem Zuhause. 87 Tools decken Gerätesteuerung, Automationen, Dashboards, Energie, Verlauf ab — Claude wird zu deinem Home Assistant Power-User.

ha-mcp kapselt die REST- und WebSocket-APIs von Home Assistant als MCP-Tools. Über das bloße Einschalten von Lichtern hinaus kann es Automationen erstellen, Dashboards bearbeiten, Verlaufs-/Statistikdaten abfragen, HACS-Add-ons verwalten und die Entity-Registry erkunden — Claude kann das Smart-Home-Setup damit sowohl diagnostizieren als auch umgestalten.

Warum nutzen

Hauptfunktionen

Live-Demo

In der Praxis

ha-mcp.replay ▶ bereit
0/0

Installieren

Wählen Sie Ihren Client

~/Library/Application Support/Claude/claude_desktop_config.json  · Windows: %APPDATA%\Claude\claude_desktop_config.json
{
  "mcpServers": {
    "ha-mcp": {
      "command": "uvx",
      "args": [
        "ha-mcp"
      ]
    }
  }
}

Öffne Claude Desktop → Settings → Developer → Edit Config. Nach dem Speichern neu starten.

~/.cursor/mcp.json · .cursor/mcp.json
{
  "mcpServers": {
    "ha-mcp": {
      "command": "uvx",
      "args": [
        "ha-mcp"
      ]
    }
  }
}

Cursor nutzt das gleiche mcpServers-Schema wie Claude Desktop. Projektkonfiguration schlägt die globale.

VS Code → Cline → MCP Servers → Edit
{
  "mcpServers": {
    "ha-mcp": {
      "command": "uvx",
      "args": [
        "ha-mcp"
      ]
    }
  }
}

Klicken Sie auf das MCP-Servers-Symbol in der Cline-Seitenleiste, dann "Edit Configuration".

~/.codeium/windsurf/mcp_config.json
{
  "mcpServers": {
    "ha-mcp": {
      "command": "uvx",
      "args": [
        "ha-mcp"
      ]
    }
  }
}

Gleiche Struktur wie Claude Desktop. Windsurf neu starten zum Übernehmen.

~/.continue/config.json
{
  "mcpServers": [
    {
      "name": "ha-mcp",
      "command": "uvx",
      "args": [
        "ha-mcp"
      ]
    }
  ]
}

Continue nutzt ein Array von Serverobjekten statt einer Map.

~/.config/zed/settings.json
{
  "context_servers": {
    "ha-mcp": {
      "command": {
        "path": "uvx",
        "args": [
          "ha-mcp"
        ]
      }
    }
  }
}

In context_servers hinzufügen. Zed lädt beim Speichern neu.

claude mcp add ha-mcp -- uvx ha-mcp

Einzeiler. Prüfen mit claude mcp list. Entfernen mit claude mcp remove.

Anwendungsfälle

Praxisnahe Nutzung: Home Assistant MCP

Geräte steuern ohne Entity-IDs auswendig zu kennen

👤 Alle mit einer eingerichteten Home Assistant Installation ⏱ ~5 min beginner

Wann einsetzen: Du weißt, was du willst ("Küche auf 30% dimmen"), aber nicht die genaue entity_id.

Voraussetzungen
  • Home Assistant Long-Lived Access Token — Profil → Sicherheit → Token erstellen; als HA_TOKEN-Umgebungsvariable speichern
  • HA_URL gesetzt — HA_URL=http://homeassistant.local:8123 setzen (oder deine URL)
Ablauf
  1. Entity suchen
    Use ha-mcp. Find entities matching 'kitchen light'. Show entity_id, area, and current state.✓ Kopiert
    → 1–3 Kandidaten-Entities mit aktuellem Status
  2. Änderung anwenden
    Set kitchen ceiling lights to 30% brightness, warm white.✓ Kopiert
    → Service-Aufruf erfolgreich; Status bestätigt

Ergebnis: Geräte nach Absicht gesteuert, nicht nach Auswendiglernen.

Fallstricke
  • Mehrere Entities passen — falsche wird umgeschaltet — Entity-ID-Liste immer vor Massenaktionen bestätigen; Bereichsfilter verwenden

Komplexe Automation aus einer Klartextbeschreibung erstellen

👤 HA-Nutzer, die YAML vermeiden ⏱ ~15 min intermediate

Wann einsetzen: Du willst „wenn ich das Haus verlasse und es nach Sonnenuntergang ist und der Katzenfutterspender leer ist, schick mir eine Benachrichtigung" — ohne YAML zu schreiben.

Ablauf
  1. Absicht beschreiben
    Use ha-mcp. List my person tracker, sun, and cat feeder entities so we can wire an automation.✓ Kopiert
    → Relevante Entities mit Status-Schema
  2. YAML generieren
    Create automation 'cat-feeder-sundown-alert' with that logic. Don't deploy yet — show me the YAML.✓ Kopiert
    → Gültiges HA-Automations-YAML im Chat
  3. Deployen + tracen
    Deploy it. Then trigger it manually and show the trace so I can verify the conditions fired.✓ Kopiert
    → Automation in der UI; Trace zeigt erwartete Verzweigungen

Ergebnis: Funktionierende Automation, ohne /config/automations.yaml manuell zu bearbeiten.

Fallstricke
  • Automation deployed aber löst nie aus — Entity-Name-Tippfehler — Trace-Tool verwenden; prüfen ob entity_id exakt übereinstimmt

Energiespitze mit Verlauf und Statistiken untersuchen

👤 Smart-Home-Besitzer mit HA-Energie-Dashboard ⏱ ~25 min intermediate

Wann einsetzen: Deine Stromrechnung ist gestiegen und du willst wissen, was sich geändert hat.

Ablauf
  1. Gesamtwerte abrufen
    Use ha-mcp. Compare total kWh per circuit for last 30 days vs the prior 30. Flag deltas >20%.✓ Kopiert
    → Pro-Stromkreis-Tabelle mit hervorgehobenen Abweichungen
  2. Schlimmsten untersuchen
    For the worst-offending circuit, plot hourly usage for the last 7 days and identify the new pattern.✓ Kopiert
    → Stündliches Profil + verbale Beobachtung der Anomalie
  3. Verursachendes Gerät finden
    Which entity on that circuit changed behavior? Cross-reference automations that touch it.✓ Kopiert
    → Konkretes Gerät + Automation identifiziert

Ergebnis: Konkretes „der EV-Lader hat einen neuen Zeitplan verwendet"-Ergebnis, keine vage Vermutung.

Fallstricke
  • Statistiken nur so gut wie deine Sensorabdeckung — Lücken einräumen; vorschlagen, wo weitere Überwachung einzurichten ist

„Urlaubsmodus" einrichten, der Lichter, Schlösser, Jalousien und Benachrichtigungen umfasst

👤 Kurz vor einer Reise ⏱ ~30 min intermediate

Wann einsetzen: Du fährst in einer Stunde weg und möchtest Anwesenheitssimulation + Away-Mode-Verhalten.

Ablauf
  1. Betroffene Entities inventarisieren
    Use ha-mcp. List lights in living areas, all door locks, all blinds. Note which are HA-controllable.✓ Kopiert
    → Kategorisierte Entity-Liste mit Steuerbarkeits-Flag
  2. Skript erstellen
    Create a script 'vacation_mode_on' that arms locks, randomizes evening lights 18:30–22:30, sets blinds to 50%, and pauses cleaning automations.✓ Kopiert
    → Skript in HA; manueller Test erfolgreich
  3. Auslöser hinzufügen
    Bind it to an input_boolean 'vacation_mode' so I can toggle from the dashboard.✓ Kopiert
    → Schalter im Dashboard; Umschalten führt Skript aus

Ergebnis: Ein-Klick-Urlaubsmodus; du verlässt das Haus mit aktiviertem Dashboard.

Fallstricke
  • Schlösser automatisch verriegeln mit Personen im Inneren — Anwesenheitsprüfung hinzufügen; niemals verriegeln wenn jemand zuhause ist

Kombinationen

Mit anderen MCPs für 10-fache Wirkung

ha-mcp + filesystem

automations.yaml + scripts.yaml per Git sichern

Export all automations and scripts via ha-mcp, write to ./ha-config/, commit.✓ Kopiert

Werkzeuge

Was dieses MCP bereitstellt

WerkzeugEingabenWann aufrufenKosten
search_entities query: str, area?, domain? Erster Schritt in fast jedem Flow — entity_id finden 1 HA API call
call_service domain, service, target, data Beliebige Geräte- oder Szenenänderung anwenden 1 API call
create_automation yaml_or_object Automationen programmatisch erstellen 1 API call
get_history entity_id, start, end Statusverlauf zur Analyse abrufen 1 API call
get_statistics statistic_id, period (5min|hour|day|month) Langzeit-Aggregatdaten (Energie, Klima) 1 API call
trace_automation automation_id, run_id? Debuggen warum eine Automation ausgelöst hat oder nicht 1 API call

Kosten & Limits

Was der Betrieb kostet

API-Kontingent
Kein festes Limit — REST-API ist lokal
Tokens pro Aufruf
Variabel; Entity-Registry kann riesig sein ohne Filter
Kosten in €
Kostenlos (Open Source)
Tipp
Immer search_entities mit Filtern verwenden — vollständige Registry-Dumps sind token-intensiv

Sicherheit

Rechte, Secrets, Reichweite

Minimale Scopes: Long-Lived Access Token (vollständiger HA-Scope)
Credential-Speicherung: HA_TOKEN-Umgebungsvariable
Datenabfluss: Nur an deine HA-Instanz-URL — idealerweise im lokalen Netzwerk halten
Niemals gewähren: HA-Token an Cloud-LLMs, denen du nicht vertraust — das steuert physischen Zugang (Schlösser, Garage)

Fehlerbehebung

Häufige Fehler und Lösungen

Keine Verbindung zu HA

Prüfen ob HA_URL vom Ort des MCP-Laufs erreichbar ist; trusted_proxies prüfen wenn hinter Reverse Proxy

Prüfen: curl $HA_URL/api/ -H 'Authorization: Bearer $HA_TOKEN'
401 Unauthorized

Token abgelaufen oder widerrufen — neuen Long-Lived-Token im Profil generieren

Service-Aufruf gibt 400 zurück

Service-Signatur stimmt nicht überein — Schema im Entwickler-Tools-Panel prüfen, dann erneut versuchen

Automation deployed aber löst nicht aus

trace_automation verwenden um zu sehen welche Bedingung fehlgeschlagen ist; häufig: entity_id-Tippfehler oder falsche Zeitzone bei sun-Bedingung

Alternativen

Home Assistant MCP vs. andere

AlternativeWann stattdessenKompromiss
Home Assistant native voice assistants (Piper/Whisper)Sprachsteuerung ohne Cloud-LLM im Pfad gewünschtWeniger Flexibilität bei natürlicher Sprache; mehr Einrichtungsaufwand
ha-mcp-server (legacy/forks)Dein Fork hat Funktionen, die dieser nicht hatKleinere Oberfläche; dieser hat 87 Tools und aktive Wartung

Mehr

Ressourcen

📖 Offizielle README auf GitHub lesen

🐙 Offene Issues ansehen

🔍 Alle 400+ MCP-Server und Skills durchsuchen