Over dit item
MCP Server (HTTP Transport) is een aangepaste integratie die een MCP-server via HTTP draait, zodat AI-assistenten zoals Claude met Home Assistant kunnen werken. De integratie ondersteunt OAuth 2.0-inloggen via een aparte OIDC-serverintegratie, en Long-Lived Access Tokens kunnen als optie worden ingeschakeld voor lokale of aangepaste clients. De beschikbare tools omvatten entiteiten, services, gebieden, apparaten, geschiedenis en statistieken, plus het maken en bewerken van automatiseringen, scènes, scripts, helpers en dashboards. Ook zijn er traces van automatiseringen en scripts, een foutenlogboek, configuratievalidatie en herstarten beschikbaar. Met instellingen die je zelf inschakelt krijg je toegang tot YAML-configuratiebestanden met een back-up vóór elke wijziging, cameraafbeeldingen, afbeeldingsbestanden en AppDaemon-appbestanden, elk met een privacyopmerking. Met een instelling voor de servernaam kun je instanties uit elkaar houden als één client verbinding maakt met meerdere Home Assistant-installaties, en de installatie gebeurt in de gebruikersinterface.
Automatische samenvatting van de README en de code van ganhammar/hass-mcp-server, automatisch vertaald. Klopt er iets niet, of ben je de maintainer en wil je hier je eigen tekst tonen? Neem contact op
Ondersteunt
Werkt lokaal Praat met je apparaten op je eigen netwerk. Geen cloud van de aanbieder ertussen.
Uit de Marketplace Wordt geïnstalleerd via de Marketplace, voorheen HACS.
Actief onderhouden De auteur heeft in de afgelopen zes maanden een release of wijziging gepubliceerd.
Instellen
Installeer de integratie vanuit de Marketplace en herstart Home Assistant. Voeg de integratie daarna toe onder Instellingen > Apparaten en diensten.
MCP Server (HTTP-transport)
- Native Home Assistant-authenticatie inschakelenSta Long-Lived Access Tokens toe voor authenticatie. Als dit is uitgeschakeld, is de OIDC Provider-integratie vereist.
- Beheerdersaccount vereisenAlleen Home Assistant-gebruikers met beheerdersrechten mogen het MCP-eindpunt gebruiken. Dit komt overeen met wat Home Assistant zelf vereist voor het grootste deel van wat de tools doen: automatiseringen, scripts en scènes wijzigen, services aanroepen die alleen voor beheerders zijn, zoals herstarten, templates renderen en het foutlogboek lezen. Schakel dit alleen uit als je begrijpt dat elke gebruiker zonder beheerdersrechten die een token heeft dan dezelfde toegang krijgt.
- Toegang tot configuratiebestanden inschakelenSta AI-assistenten toe om YAML-bestanden op het eerste niveau van de configuratiemap weer te geven, te lezen, te schrijven en te verwijderen. secrets.yaml is altijd geblokkeerd. Voor entiteiten met eigen MCP-tools is ook het ruwe YAML-bestand geblokkeerd voor directe bewerkingen: automations.yaml, scenes.yaml en scripts.yaml moeten worden gewijzigd via create_automation / update_automation (en de equivalenten voor scènes en scripts), die via de opslaglaag van Home Assistant lopen en items die via de gebruikersinterface worden beheerd consistent houden. De bestanden worden nog steeds meegenomen in back-ups, zodat een herstelactie ze nooit verliest. Bij elke opslagactie en elke verwijdering wordt eerst automatisch een volledige back-up gemaakt (opgeslagen in mcp_backups/ in je configuratiemap). Bij elke opslagactie wordt ook automatisch een configuratievalidatie uitgevoerd. Gebruik batch_edit_config_files als je meerdere bestanden tegelijk wijzigt: dat maakt maar één back-up en voert één configuratiecontrole uit voor de hele batch. Back-ups kunnen handmatig via het bestandssysteem worden hersteld als Home Assistant niet start. Voordat je dit inschakelt: verplaats alle gevoelige waarden (API-sleutels, tokens, wachtwoorden) naar secrets.yaml, want waarden die direct in andere YAML-bestanden staan, kan de AI lezen.
- Toegang tot cameraafbeeldingen inschakelenSta AI-assistenten toe om de huidige afbeelding van elke camera-entiteit op te halen (via de tool get_camera_image) en te analyseren wat de camera ziet. Er wordt geen snapshotbestand geschreven. Privacyopmerking: als dit is ingeschakeld, kan de AI elke camera in Home Assistant bekijken.
- Toegang tot afbeeldingsbestanden inschakelenSta AI-assistenten toe om afbeeldingsbestanden (JPEG, PNG, GIF, WebP) van schijf te lezen (via de tool get_image_file), bijvoorbeeld camerasnapshots die door de service camera.snapshot zijn opgeslagen. De toegang is beperkt tot mappen die Home Assistant mag gebruiken (de configuratiemap en de ingestelde mediamappen). Privacyopmerking: elke afbeelding in die mappen kan de AI lezen.
- Template-rendering inschakelenSta AI-assistenten toe om willekeurige Jinja2-templates te evalueren (via de tool render_template). Een template kan in één aanroep elke status, elk attribuut, elk apparaat en elk gebied van de installatie lezen en kan templatefuncties aanroepen zoals states, state_attr, device_attr en integration_entities. Daarom beperkt Home Assistant zijn eigen ontwikkelaarstool voor templates tot beheerders. Privacyopmerking: als dit is ingeschakeld, kan de AI alles lezen wat een template kan bereiken.
- Toegang tot AppDaemon-appbestanden inschakelenSta AI-assistenten toe om AppDaemon-applicatiebestanden te beheren binnen de apart ingestelde, afgebakende hoofdmap voor AppDaemon-apps. Schrijftoegang inschakelen laat een AI/MCP-client uitvoerbare AppDaemon Python-code wijzigen, wat een mogelijkheid geeft die gelijkstaat aan code-uitvoering binnen de AppDaemon-omgeving en toegang tot alles wat AppDaemon kan bereiken. Paden buiten de goedgekeurde hoofdmappen /share/, /media/ of de oude /addon_configs/a0d7b954_appdaemon/apps, .. traversal en symlink-ontsnappingen worden geweigerd. Alleen .py-, .yaml-, .yml- en .json-bestanden kunnen worden gemaakt, geschreven of verwijderd. Bij elke opslagactie of verwijdering wordt eerst een snapshot van de app-boomstructuur gemaakt in .mcp_appdaemon_backups/; bij herstel wordt eerst een snapshot van de huidige situatie gemaakt. Er is geen directe MCP-shell of tool voor procesbeheer van AppDaemon, maar het schrijven van AppDaemon Python-bestanden blijft gelijkstaan aan code-uitvoering binnen de AppDaemon-omgeving en de beschikbare Home Assistant API-rechten. Appbestanden kunnen inloggegevens bevatten: houd gevoelige waarden uit leesbare bestanden voordat je dit inschakelt.
- Hoofdmap AppDaemon-appsAbsolute hoofdmap voor AppDaemon-apps. Standaard is dit /addon_configs/a0d7b954_appdaemon/apps, die alleen bestaat waar die add-onmap in Home Assistant Core is gekoppeld (niet op Home Assistant OS). Gebruik anders een map onder /share/ of /media/ en laat app_dir van AppDaemon naar dezelfde map wijzen.
- MCP-servernaamNaam die deze server aan MCP-clients doorgeeft (serverInfo.name). Geef elke Home Assistant-instantie een andere naam als één client met meer dan één verbinding maakt: sommige clients leiden de naamruimte die ze voor de tools van een server tonen af van deze naam en houden dan maar één van de servers over. Zulke clients kunnen de naam eerst inkorten (VS Code houdt de eerste 13 tekens aan), dus maak de namen al vroeg verschillend.
Na het instellen
- Native Home Assistant-authenticatie inschakelenSta Long-Lived Access Tokens toe voor authenticatie. Als dit is uitgeschakeld, is de OIDC Provider-integratie vereist.
- Beheerdersaccount vereisenAlleen Home Assistant-gebruikers met beheerdersrechten mogen het MCP-eindpunt gebruiken. Dit komt overeen met wat Home Assistant zelf vereist voor het grootste deel van wat de tools doen: automatiseringen, scripts en scènes wijzigen, services aanroepen die alleen voor beheerders zijn, zoals herstarten, templates renderen en het foutlogboek lezen. Schakel dit alleen uit als je begrijpt dat elke gebruiker zonder beheerdersrechten die een token heeft dan dezelfde toegang krijgt.
- Toegang tot configuratiebestanden inschakelenSta AI-assistenten toe om YAML-bestanden op het eerste niveau van de configuratiemap weer te geven, te lezen, te schrijven en te verwijderen. secrets.yaml is altijd geblokkeerd. Voor entiteiten met eigen MCP-tools is ook het ruwe YAML-bestand geblokkeerd voor directe bewerkingen: automations.yaml, scenes.yaml en scripts.yaml moeten worden gewijzigd via create_automation / update_automation (en de equivalenten voor scènes en scripts), die via de opslaglaag van Home Assistant lopen en items die via de gebruikersinterface worden beheerd consistent houden. De bestanden worden nog steeds meegenomen in back-ups, zodat een herstelactie ze nooit verliest. Bij elke opslagactie en elke verwijdering wordt eerst automatisch een volledige back-up gemaakt (opgeslagen in mcp_backups/ in je configuratiemap). Bij elke opslagactie wordt ook automatisch een configuratievalidatie uitgevoerd. Gebruik batch_edit_config_files als je meerdere bestanden tegelijk wijzigt: dat maakt maar één back-up en voert één configuratiecontrole uit voor de hele batch. Back-ups kunnen handmatig via het bestandssysteem worden hersteld als Home Assistant niet start. Voordat je dit inschakelt: verplaats alle gevoelige waarden (API-sleutels, tokens, wachtwoorden) naar secrets.yaml, want waarden die direct in andere YAML-bestanden staan, kan de AI lezen.
- Toegang tot cameraafbeeldingen inschakelenSta AI-assistenten toe de huidige afbeelding van elke camera-entiteit vast te leggen (via de tool get_camera_image) en te analyseren wat de camera ziet. Er wordt geen snapshotbestand geschreven. Privacyopmerking: als dit is ingeschakeld, kan de AI elke camera in Home Assistant bekijken.
- Toegang tot afbeeldingsbestanden inschakelenSta AI-assistenten toe afbeeldingsbestanden (JPEG, PNG, GIF, WebP) van schijf te lezen (via de tool get_image_file), bijvoorbeeld camerasnapshots die door de service camera.snapshot zijn opgeslagen. Toegang is beperkt tot mappen die Home Assistant mag gebruiken (de configuratiemap en de ingestelde mediamappen). Privacyopmerking: elke afbeelding in die mappen kan door de AI worden gelezen.
- Template-rendering inschakelenSta AI-assistenten toe om willekeurige Jinja2-templates te evalueren (via de tool render_template). Een template kan in één aanroep elke status, elk attribuut, elk apparaat en elk gebied van de installatie lezen en kan templatefuncties aanroepen zoals states, state_attr, device_attr en integration_entities. Daarom beperkt Home Assistant zijn eigen ontwikkelaarstool voor templates tot beheerders. Privacyopmerking: als dit is ingeschakeld, kan de AI alles lezen wat een template kan bereiken.
- Toegang tot AppDaemon-appbestanden inschakelenSta AI-assistenten toe AppDaemon-applicatiebestanden te beheren binnen de apart ingestelde, afgebakende AppDaemon-appsroot. Schrijftoegang inschakelen betekent dat een AI/MCP-client uitvoerbare AppDaemon-Pythoncode kan wijzigen, wat gelijkstaat aan het kunnen uitvoeren van code binnen de AppDaemon-omgeving en toegang geeft tot alles waartoe AppDaemon toegang heeft. Paden buiten de goedgekeurde roots /share/, /media/ of de oude root /addon_configs/a0d7b954_appdaemon/apps, .. traversal en symlink-ontsnappingen worden geweigerd. Alleen .py-, .yaml-, .yml- en .json-bestanden kunnen worden aangemaakt, geschreven of verwijderd. Bij elke opslag of verwijdering wordt eerst een snapshot van de app-structuur gemaakt in .mcp_appdaemon_backups/; bij een herstel wordt eerst een snapshot van de huidige staat gemaakt. Dit biedt geen shell- of procesbeheer van AppDaemon. Appbestanden kunnen inloggegevens bevatten: haal gevoelige waarden uit leesbare bestanden voordat je dit inschakelt.
- AppDaemon-appsrootAbsolute AppDaemon-appsroot. Standaard /addon_configs/a0d7b954_appdaemon/apps, die alleen bestaat waar die add-onmap in Home Assistant Core is gekoppeld (niet op Home Assistant OS); gebruik anders een map onder /share/ of /media/ en laat app_dir van AppDaemon naar dezelfde map wijzen.
- MCP-servernaamNaam die deze server aan MCP-clients meldt (serverInfo.name). Geef elke Home Assistant-instantie een andere naam als één client met meer dan één verbinding maakt: sommige clients leiden de namespace die ze voor de tools van een server tonen af van deze naam en houden dan maar één van de servers over. Zulke clients kunnen de naam eerst inkorten (VS Code houdt de eerste 13 tekens aan), dus maak namen vroeg in de naam verschillend.
Teksten uit de code van ganhammar/hass-mcp-server. Teksten waarvoor de repository geen Nederlandse vertaling heeft, zijn automatisch vertaald.
Probleemoplossing
- ReparatiemeldingenMeldingen die het kan tonen onder Instellingen > Reparaties:OIDC-provider controleert de doelgroep van het token niet
Uit de 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…
Informatie
- Installaties
- 1,3K die analysegegevens delen
- GitHub-sterren
- 83
- Verbinding
- Werkt lokaal
- Onderhoud
- Bijgewerkt in de afgelopen 6 maanden
- Versie
- v2.0.1,
- Categorie
- AI en spraak, AI-modellen
- Soort
- Marketplace-integratie
- Vereist
- Vereist de Marketplace (HACS op 2026.10 en ouder)
- Domein
mcp_server_http_transport- Problemen
- Probleem melden











