UniFi-Netzwerke und Kameras mit LLM-Agents verwalten
Wenn Sie schon einmal eine Firewall im UniFi Controller konfiguriert oder nach einem bestimmten Clip einer Kamera in UniFi Protect gesucht haben, wissen Sie, wie das abläuft. Sie öffnen die Weboberfläche, klicken sich durch Menüs, suchen nach der richtigen VLAN oder Client-MAC-Adresse. Die Automatisierung dieser Aufgaben mit Skripten ist möglich, aber Ubiquiti's API ist stellenweise eigenwillig und ändert sich von Version zu Version.
Das unifi-mcp-Projekt verfolgt einen anderen Ansatz. Es ist eine Sammlung von Servern, die das Model Context Protocol (MCP) verwenden und KI-Assistenten wie Claude Code, Codex oder OpenClaw mit UniFi-Controllern verbinden.
Was steckt hinter dem Projekt
Das Repository ist als Python- und TypeScript-Monorepo aufgebaut. Es gliedert sich in drei Hauptmodule, die die Ubiquiti-Produktbereiche abdecken:
- Network — ein Modul zur Verwaltung von Netzwerkgeräten. Es bietet 186 Tools für die Arbeit mit VLANs, Firewalls, Clients, Wi-Fi-Netzwerken und Geräten.
- Protect — ein Videoüberwachungs-Tool. Enthält 61 Funktionen für die Suche nach Ereignissen, die Analyse von Bewegungserkennungen und die Arbeit mit Kameras.
- Access — Zugangskontrollverwaltung. Enthält 36 Funktionen für die Arbeit mit Türen, Zugangsdaten und Zugangsprotokollen.
Zusätzlich enthält das Projekt einen separaten REST/GraphQL-Server für Clients, die das MCP-Protokoll noch nicht unterstützen, sowie ein Cloud-Relay-System zur Verbindung eines lokalen Netzwerks mit Remote-Agents über Cloudflare Workers.
Sicherheit und Schutz vor kritischen Fehlern
Einem Sprachmodell direkten Zugriff auf die Firewall Ihres Heim- oder Büronetzwerks zu gewähren, ist ein gewagter Schritt. Die Entwickler von unifi-mcp haben zwei Sicherheitsmechanismen eingebaut, um das Risiko zu minimieren, etwas zu beschädigen.
Der erste Mechanismus ist das Konzept „Vorschau und Bestätigung". Jede Konfigurationsänderung gibt zunächst eine Vorschau zurück: Der KI-Agent zeigt die genauen JSON-Daten oder Regellisten, die er an den Controller senden möchte, und wartet auf Ihre ausdrückliche Bestätigung.
Das zweite Element ist die automatische Bereinigung sensibler Daten. Standardmäßig werden alle Wi-Fi-Passwörter, VPN-Schlüssel, SNMP-Communities und Tokens aus den Tool-Antworten entfernt und durch ***REDACTED*** ersetzt. Das Modell sieht keine Geheimnisse im Kontext und kann sie nicht versehentlich in Logs „verraten". Wenn Sie jedoch ein vertrauenswürdiges lokales Administrationsskript ausführen, können Sie das Maskieren über Umgebungsvariablen deaktivieren.
Praktische Szenarien
Anstatt manuell durch die Oberfläche zu suchen, können Sie Abfragen in einfacher Sprache an den Agenten richten.
Für das Netzwerkmodul:
- „Zeige alle Clients im Gast-VLAN, ihre Signalstärke und den Datenverkehr"
- „Prüfe Firewall-Regeln, finde doppelte und widersprüchliche Richtlinien"
- „Erstelle eine Regel, die IoT-Geräten zwischen Mitternacht und 6 Uhr morgens den Internetzugang sperrt"
Für Sicherheitssysteme:
- „Finde alle Fahrzeugerkennungsereignisse am Eingang diese Woche"
- „Korreliere Zeitstempel: Wer hat um 2 Uhr morgens am Haupteingang einen Badge-Scan gemacht und welche Kamera hat in der Nähe gleichzeitig eine Bewegung aufgezeichnet"
Übrigens enthält das Repository für häufige Aufgaben bereits integrierte Skills für Agenten. Der Firewall Auditor führt beispielsweise 16 Netzwerksicherheitsprüfungen durch und gibt eine Bewertung auf einer 100-Punkte-Skala mit Korrekturempfehlungen aus.
Technische Funktionsweise
Das Projekt nutzt aktiv Funktionen aus aktuellen MCP-Protokollrevisionen. Da ein Tool mit 186 Funktionen den Kontextwindow eines LLMs füllen kann, bevor das Gespräch überhaupt beginnt, wurde hier Lazy Discovery implementiert. Zunächst übergibt der Server nur Such-Meta-Tools an den Assistenten, und spezifische Endpunkte werden bei Bedarf nachgeladen.
Der Start von Servern in einer lokalen Umgebung erfolgt mit einem einzigen Befehl über uvx:
uvx unifi-network-mcp@latest
uvx unifi-protect-mcp@latest
uvx unifi-access-mcp@latest
Die Konfiguration erfolgt über Umgebungsvariablen. Sie benötigen ein lokales Administratorkonto auf dem UniFi-Controller für die Verbindung. Hinweis: Konten mit Zwei-Faktor-Authentifizierung oder Ubiquiti SSO funktionieren nicht — Sie müssen einen separaten lokalen Service-Benutzer für MCP erstellen.
Beispielkonfiguration für Claude Desktop:
{
"mcpServers": {
"unifi-network": {
"command": "uvx",
"args": ["unifi-network-mcp@latest"],
"env": {
"UNIFI_HOST": "192.168.1.1",
"UNIFI_USERNAME": "mcp-service-account",
"UNIFI_PASSWORD": "your-safe-password"
}
}
}
}
Lohnt es sich?
Das Projekt wirkt für seine Klasse ausgereift: 588 Sterne auf GitHub, aktive Commits und Python 3.13+-Support. Es ist nützlich für Systemadministratoren, Home-Assistant-Enthusiasten und alle, die Automatisierung auf Ubiquiti aufbauen.
Wenn Sie zu Hause nur einen Access Point haben, lohnt es sich kaum, einen MCP-Server einzurichten. Aber bei komplexer Infrastruktur mit Firewalls, Kameras und Zugangskontrolle spart die Möglichkeit, einen Agenten zu fragen, statt manuell durch Dashboards zu suchen, viel Zeit.
Ähnliche Projekte