Hi zusammen,
ich habe heute nach mal einen Prototyp eines Symcon-MCP-Servers als Modul entwickelt. Es ist wirklich verblüffend wie gut es auf anhieb funktionierte.
Das Modul kann über den Link installiert werden. Es Modul befindet sich aber noch in Entwicklung und dient nur zum Testen und Sammeln von Erfahrungen im Zusammenhang mit MCP.
Man stellt einfach die Verbindung mit dem Symcon-System her und eine beliebige KI versucht sich selbst zurechtzufinden und erlernt selbst, was, wie und wo gesteuert werden kann oder soll. Dabei versucht sie sich erst mal einen Überblick zu schaffen und baut sich nach und nach eine eigene Wissensdatenbank auf. Dabei müssen Aktoren nicht so genannt werden wie der Befehl.
Desto besser die Struktur in der Symcon-Console ist, desto schneller findet sich die KI zurecht. Aber selbst wenn etwas mal gar nicht nachvollziehbar ist, kann die KI Rückfragen stellen.
Beispel:
Aktor heißt “LI-01”
„Schalte das Licht im Badezimmer ein.“
Darauf kann die KI nachfragen, z.B. “Ich kann es nicht finden. Kannst du es mal einschalten?”
Dabei schneidet das MCP die Variablenänderung mit und die KI lernt, welches Licht hier im Badezimmer gemeint war.
Es hilft wenn man in Symcon eine Struktur nach Räumen aufgeteilt hat. Ich habe bisher nur 4-5 Stunden getüftelt, aber das hat schon ziemlich spaß gemacht.
Ich hab der KI gesagt, Schalte bitte meine Treppenbeleuchtung ein und habe mich dann vor meiner Treppe voller Erwartungen gestellt. Siehe da, es hat geklappt! Der Homematic-Wired-Aktor hieß EG-TH-LI-01 und war im Ordner “Treppenhaus”.
”Mach mal bitte rotes Licht in der Küche.”. ArtNet-Controller, hat funktioniert.
”Dimme wir mal ein Licht im Flur.” Hue-LED-Strip, hat funktioniert.
”Mach mal meine Rollade im Büro auf.” Daraufhin hat die KI die Rollade geschlossen.
”Du hast die Rollade da nicht auf, sondern zugemacht.” Die KI antwortete mit “Bitte entschuldige.” und hat die Rollade geöffnet.
”Schalte das Licht im Schlafzimmer in 10 Minuten an und in 15 Minuten die Rollade etwas auf” Funktioniert! Dafür wird dann ein entsprechendes Skript angelegt.
Aktuell habe ich den MCP-Server lokal auf meinem Mac ausgeführt, weil es auf meiner SymBox nicht auf Anhieb lief, mit eigenem Port (habe ich mir noch nicht näher angeschaut). Ich habe es mal hochgeladen, und ihr könnt auch gerne damit rumspielen.
Über das Skript mit dem Aufruf “MCP_HTTP=1 ./start-mcp-local.sh” könnt ihr den Server erstellen und starten. Vorher eine local-config.env erstellen. Eine Vorlage liegt im Ordner genauso wie eine detaillierte Anleitung.
Beste Grüße
iMaxxx