Überblick
MCP Server (HTTP Transport) ist eine benutzerdefinierte Integration, die einen MCP-Server über HTTP betreibt, damit KI-Assistenten wie Claude mit Home Assistant arbeiten können. Sie unterstützt die Anmeldung per OAuth 2.0 über eine separate OIDC-Server-Integration, und Long-Lived Access Tokens lassen sich optional für lokale oder eigene Clients aktivieren. Die bereitgestellten Tools decken Entitäten, Dienste, Bereiche, Geräte, Verlauf und Statistiken ab, dazu das Erstellen und Bearbeiten von Automationen, Szenen, Skripten, Helfern und Dashboards. Außerdem gibt es Traces für Automationen und Skripte, ein Fehlerprotokoll, die Prüfung der Konfiguration und den Neustart. Optionale Einstellungen erlauben den Zugriff auf YAML-Konfigurationsdateien mit einem Backup vor jeder Änderung, auf Kamerabilder, Bilddateien und AppDaemon-App-Dateien, jeweils mit einem Datenschutzhinweis. Mit einer Einstellung für den Servernamen lassen sich Instanzen unterscheiden, wenn sich ein Client mit mehreren Home-Assistant-Installationen verbindet, und die Einrichtung erfolgt in der Benutzeroberfläche.
Zusammenfassung der README und des Codes von ganhammar/hass-mcp-server, automatisch erstellt und übersetzt. Stimmt etwas nicht, oder betreust du das Projekt und möchtest hier deinen eigenen Text? Melde dich
Unterstützt
Funktioniert lokal Spricht mit deinen Geräten in deinem eigenen Netzwerk. Keine Cloud des Herstellers dazwischen.
Aus dem Marketplace Wird über den Marketplace installiert, früher HACS.
Aktiv gepflegt Das Projekt hat in den letzten sechs Monaten eine neue Version oder Änderung veröffentlicht.
Einrichtung
Installiere sie aus dem Marketplace und starte Home Assistant neu. Füge sie dann unter Einstellungen > Geräte & Dienste hinzu.
MCP Server (HTTP-Transport)
- Native Home-Assistant-Authentifizierung aktivierenErlaube Long-Lived Access Tokens zur Authentifizierung. Wenn diese Option deaktiviert ist, wird die Integration OIDC Provider benötigt.
- Administratorkonto erforderlichNur Home-Assistant-Benutzer mit Administratorrechten dürfen den MCP-Endpunkt verwenden. Das entspricht dem, was Home Assistant selbst für den Großteil der Funktionen der Tools verlangt: Automationen, Skripte und Szenen ändern, Dienste aufrufen, die nur Administratoren vorbehalten sind, etwa den Neustart, Templates rendern und das Fehlerprotokoll lesen. Deaktiviere dies nur, wenn du verstehst, dass dann jeder Benutzer ohne Administratorrechte mit einem Token denselben Zugriff erhält.
- Zugriff auf Konfigurationsdateien aktivierenErlaube KI-Assistenten, YAML-Dateien auf der ersten Ebene des Konfigurationsverzeichnisses aufzulisten, zu lesen, zu schreiben und zu löschen. secrets.yaml ist immer gesperrt. Für Entitäten mit eigenen MCP-Tools ist auch die rohe YAML-Datei für direkte Änderungen gesperrt: automations.yaml, scenes.yaml und scripts.yaml müssen über create_automation / update_automation (und die entsprechenden Tools für Szenen und Skripte) geändert werden, die über die Speicherschicht von Home Assistant laufen und über die Benutzeroberfläche verwaltete Einträge konsistent halten. Die Dateien sind weiterhin in Backups enthalten, damit eine Wiederherstellung sie nie verliert. Jedes Speichern und Löschen erstellt automatisch zuerst ein vollständiges Backup (gespeichert in mcp_backups/ in deinem Konfigurationsverzeichnis). Jedes Speichern führt außerdem automatisch eine Prüfung der Konfiguration durch. Verwende batch_edit_config_files, wenn du mehrere Dateien auf einmal änderst: Es erstellt nur ein Backup und führt nur eine Konfigurationsprüfung für den gesamten Stapel durch. Backups können manuell über das Dateisystem wiederhergestellt werden, falls Home Assistant nicht startet. Vor dem Aktivieren: Verschiebe alle sensiblen Werte (API-Schlüssel, Tokens, Passwörter) nach secrets.yaml, denn direkt eingetragene Werte in anderen YAML-Dateien kann die KI lesen.
- Zugriff auf Kamerabilder aktivierenErlaube KI-Assistenten, das aktuelle Bild jeder Kamera-Entität abzurufen (über das Tool get_camera_image) und zu analysieren, was die Kamera sieht. Es wird keine Snapshot-Datei geschrieben. Datenschutzhinweis: Wenn aktiviert, kann die KI jede Kamera in Home Assistant ansehen.
- Zugriff auf Bilddateien aktivierenErlaube KI-Assistenten, Bilddateien (JPEG, PNG, GIF, WebP) vom Datenträger zu lesen (über das Tool get_image_file), zum Beispiel Kamera-Snapshots, die mit dem Dienst camera.snapshot gespeichert wurden. Der Zugriff ist auf Verzeichnisse beschränkt, die Home Assistant verwenden darf (das Konfigurationsverzeichnis und die konfigurierten Medienverzeichnisse). Datenschutzhinweis: Jedes Bild in diesen Verzeichnissen kann von der KI gelesen werden.
- Template-Rendering aktivierenErlaubt KI-Assistenten, beliebige Jinja2-Templates auszuwerten (über das Tool render_template). Ein Template kann in einem einzigen Aufruf jeden Zustand, jedes Attribut, jedes Gerät und jeden Bereich der Instanz lesen und Template-Funktionen wie states, state_attr, device_attr und integration_entities aufrufen. Deshalb beschränkt Home Assistant sein eigenes Template-Entwicklerwerkzeug auf Administratoren. Hinweis zum Datenschutz: Wenn die Option aktiviert ist, kann die KI alles lesen, was ein Template erreichen kann.
- Zugriff auf AppDaemon-App-Dateien aktivierenErlaube KI-Assistenten, AppDaemon-Anwendungsdateien im separat konfigurierten, begrenzten AppDaemon-Apps-Stammverzeichnis zu verwalten. Wenn du Schreibzugriff aktivierst, kann ein KI-/MCP-Client ausführbaren AppDaemon-Python-Code ändern. Das entspricht der Fähigkeit zur Codeausführung innerhalb der AppDaemon-Umgebung und dem Zugriff, der AppDaemon zur Verfügung steht. Pfade außerhalb der zugelassenen Stammverzeichnisse /share/, /media/ oder des älteren /addon_configs/a0d7b954_appdaemon/apps, .. -Traversierung und Symlink-Ausbrüche werden abgelehnt. Nur .py-, .yaml-, .yml- und .json-Dateien können erstellt, geschrieben oder gelöscht werden. Jedes Speichern und Löschen erstellt zuerst einen Snapshot des App-Verzeichnisbaums in .mcp_appdaemon_backups/; eine Wiederherstellung erstellt zuvor einen Snapshot. Es gibt kein direktes MCP-Shell- oder AppDaemon-Prozesssteuerungs-Tool, aber das Schreiben von AppDaemon-Python-Dateien entspricht weiterhin der Codeausführung innerhalb der AppDaemon-Umgebung und ihrer verfügbaren Home-Assistant-API-Berechtigungen. App-Dateien können Zugangsdaten enthalten: Halte sensible Werte aus lesbaren Dateien heraus, bevor du dies aktivierst.
- AppDaemon-Apps-StammverzeichnisAbsolutes AppDaemon-Apps-Stammverzeichnis. Standardmäßig /addon_configs/a0d7b954_appdaemon/apps, das nur existiert, wenn dieser Add-on-Ordner in Home Assistant Core eingebunden ist (nicht bei Home Assistant OS). Verwende andernfalls einen Ordner unter /share/ oder /media/ und lasse app_dir von AppDaemon auf denselben Ordner zeigen.
- MCP-ServernameName, den dieser Server an MCP-Clients meldet (serverInfo.name). Gib jeder Home-Assistant-Instanz einen anderen Namen, wenn sich ein Client mit mehr als einer verbindet: Manche Clients leiten den Namensraum, den sie für die Tools eines Servers anzeigen, von diesem Namen ab und behalten dann nur einen der Server. Solche Clients kürzen den Namen unter Umständen zuerst (VS Code behält die ersten 13 Zeichen), also sollten sich die Namen schon früh unterscheiden.
Nach der Einrichtung
- Native Home-Assistant-Authentifizierung aktivierenErlaube Long-Lived Access Tokens zur Authentifizierung. Wenn diese Option deaktiviert ist, wird die Integration OIDC Provider benötigt.
- Administratorkonto erforderlichNur Home-Assistant-Benutzer mit Administratorrechten dürfen den MCP-Endpunkt verwenden. Das entspricht dem, was Home Assistant selbst für den Großteil der Funktionen der Tools verlangt: Automationen, Skripte und Szenen ändern, Dienste aufrufen, die nur Administratoren vorbehalten sind, etwa den Neustart, Templates rendern und das Fehlerprotokoll lesen. Deaktiviere dies nur, wenn du verstehst, dass dann jeder Benutzer ohne Administratorrechte mit einem Token denselben Zugriff erhält.
- Zugriff auf Konfigurationsdateien aktivierenErlaube KI-Assistenten, YAML-Dateien auf der ersten Ebene des Konfigurationsverzeichnisses aufzulisten, zu lesen, zu schreiben und zu löschen. secrets.yaml ist immer gesperrt. Für Entitäten mit eigenen MCP-Tools ist auch die rohe YAML-Datei für direkte Änderungen gesperrt: automations.yaml, scenes.yaml und scripts.yaml müssen über create_automation / update_automation (und die entsprechenden Tools für Szenen und Skripte) geändert werden, die über die Speicherschicht von Home Assistant laufen und über die Benutzeroberfläche verwaltete Einträge konsistent halten. Die Dateien sind weiterhin in Backups enthalten, damit eine Wiederherstellung sie nie verliert. Jedes Speichern und Löschen erstellt automatisch zuerst ein vollständiges Backup (gespeichert in mcp_backups/ in deinem Konfigurationsverzeichnis). Jedes Speichern führt außerdem automatisch eine Prüfung der Konfiguration durch. Verwende batch_edit_config_files, wenn du mehrere Dateien auf einmal änderst: Es erstellt nur ein Backup und führt nur eine Konfigurationsprüfung für den gesamten Stapel durch. Backups können manuell über das Dateisystem wiederhergestellt werden, falls Home Assistant nicht startet. Vor dem Aktivieren: Verschiebe alle sensiblen Werte (API-Schlüssel, Tokens, Passwörter) nach secrets.yaml, denn direkt eingetragene Werte in anderen YAML-Dateien kann die KI lesen.
- Zugriff auf Kamerabilder aktivierenErlaube KI-Assistenten, das aktuelle Bild jeder Kamera-Entität abzurufen (über das Tool get_camera_image) und zu analysieren, was die Kamera sieht. Es wird keine Snapshot-Datei geschrieben. Hinweis zum Datenschutz: Wenn die Option aktiviert ist, kann die KI jede Kamera in Home Assistant ansehen.
- Zugriff auf Bilddateien aktivierenErlaube KI-Assistenten, Bilddateien (JPEG, PNG, GIF, WebP) von der Festplatte zu lesen (über das Tool get_image_file), zum Beispiel Kamera-Snapshots, die vom Service camera.snapshot gespeichert wurden. Der Zugriff ist auf Verzeichnisse beschränkt, die Home Assistant verwenden darf (das Konfigurationsverzeichnis und die konfigurierten Medienverzeichnisse). Hinweis zum Datenschutz: Jedes Bild in diesen Verzeichnissen kann von der KI gelesen werden.
- Template-Rendering aktivierenErlaubt KI-Assistenten, beliebige Jinja2-Templates auszuwerten (über das Tool render_template). Ein Template kann in einem einzigen Aufruf jeden Zustand, jedes Attribut, jedes Gerät und jeden Bereich der Instanz lesen und Template-Funktionen wie states, state_attr, device_attr und integration_entities aufrufen. Deshalb beschränkt Home Assistant sein eigenes Template-Entwicklerwerkzeug auf Administratoren. Hinweis zum Datenschutz: Wenn die Option aktiviert ist, kann die KI alles lesen, was ein Template erreichen kann.
- Zugriff auf AppDaemon-App-Dateien aktivierenErlaube KI-Assistenten, AppDaemon-Anwendungsdateien unterhalb des separat konfigurierten, begrenzten AppDaemon-Apps-Stammverzeichnisses zu verwalten. Schreibzugriff erlaubt einem KI-/MCP-Client, ausführbaren AppDaemon-Python-Code zu ändern, und gewährt damit Fähigkeiten, die der Codeausführung innerhalb der AppDaemon-Umgebung gleichkommen, sowie den Zugriff, der AppDaemon zur Verfügung steht. Pfade außerhalb der freigegebenen Stammverzeichnisse /share/, /media/ oder des älteren /addon_configs/a0d7b954_appdaemon/apps, .. Traversal und Symlink-Ausbrüche werden abgelehnt. Nur Dateien vom Typ .py, .yaml, .yml und .json können erstellt, geschrieben oder gelöscht werden. Bei jedem Speichern und Löschen wird zuerst ein Snapshot des App-Baums in .mcp_appdaemon_backups/ angelegt; bei einer Wiederherstellung wird vorher ein Snapshot erstellt. Dies bietet keine Shell- oder AppDaemon-Prozesssteuerung. App-Dateien können Zugangsdaten enthalten: Entferne vor dem Aktivieren sensible Werte aus lesbaren Dateien.
- AppDaemon-Apps-StammverzeichnisAbsolutes AppDaemon-Apps-Stammverzeichnis. Standardmäßig /addon_configs/a0d7b954_appdaemon/apps, das nur existiert, wenn dieser Add-on-Ordner in Home Assistant Core eingebunden ist (nicht in Home Assistant OS); verwende andernfalls einen Ordner unter /share/ oder /media/ und lass app_dir von AppDaemon auf denselben Ordner zeigen.
- MCP-ServernameName, den dieser Server an MCP-Clients meldet (serverInfo.name). Gib jeder Home Assistant Instanz einen anderen Namen, wenn sich ein Client mit mehr als einer verbindet: Manche Clients leiten den Namensraum, den sie für die Tools eines Servers anzeigen, aus diesem Namen ab und behalten dann nur einen der Server. Solche Clients kürzen den Namen unter Umständen zuerst (VS Code behält die ersten 13 Zeichen), also sollten sich die Namen schon am Anfang unterscheiden.
Texte aus dem Code von ganhammar/hass-mcp-server. Texte, für die das Repository keine Übersetzung hat, wurden automatisch übersetzt.
Fehlerbehebung
- ReparaturhinweiseMögliche Hinweise unter Einstellungen > Reparaturen:Der OIDC-Anbieter prüft die Zielgruppe (Audience) des Tokens nicht
Aus der README
A Home Assistant Custom Component that provides an MCP (Model Context Protocol) server using HTTP transport, allowing AI assistants like Claude to interact with your Home Assistant instance.
Why HTTP transport with OAuth? This project was built primarily to support MCP Streamable HTTP transport, enabling web-based clients like Claude that require OIDC and OAuth 2.0 Dynamic Client Registration (RFC 7591). Since Home Assistant already has an official MCP integration that supports SSE transport, there wasn't a need to duplicate that. For local or custom client setups, Long-Lived Access Token authentication can be enabled as an alternative.
- 🌐 HTTP transport (not SSE) - works remotely, not just locally
- 🔐 OAuth 2.0 authentication with Dynamic Client Registration (via hass-oidc-server)
- 🔑 Long-Lived Access Token authentication (opt-in) for local and custom client setups
- 🏠 Full Home Assistant API access (entities, services, areas, devices, history, statistics)
- 🔧 Easy HACS installation
- 📝 CRUD management of automations, scenes, scripts, and helper entities (input_boolean, counter, timer, schedule, and more)
- 🔍 Automation & script traces — inspect why a run fired, didn't fire, or took the wrong branch, step by step (read-only)
- 📋 Lovelace dashboard management (list, get/save/delete config, create/update/delete dashboards) with outline reads and JSON Patch edits so a single card can be changed without resending the whole…
Informationen
- Installationen
- 1.265 teilen Analysedaten
- GitHub-Sterne
- 83
- Verbindung
- Funktioniert lokal
- Pflege
- In den letzten 6 Monaten aktualisiert
- Version
- v2.0.1,
- Kategorie
- KI und Sprache, KI-Modelle
- Art
- Marketplace-Integration
- Voraussetzung
- Braucht den Marketplace (HACS bis Home Assistant 2026.10)
- Domain
mcp_server_http_transport- Probleme
- Problem melden











