UniFi MCP
UniFi MCP
Ein Model Context Protocol-Server für UniFi Network und UniFi Protect, damit ein KI-Assistent Fragen zu deinem Netzwerk beantworten kann – und, wenn du es erlaubst, auch darauf zugreifen kann.
Er spricht direkt mit deiner UniFi-OS-Konsole (UDR, UDM/UDM-Pro/SE, UCG, Cloud Key) über dein lokales Netzwerk. Kein Cloud-Dienst, kein Ubiquiti-Konto, nichts verlässt dein LAN, außer dem, was du mit deinem Assistenten teilst.
Funktioniert mit jedem MCP-Client. Erhältlich als Ein-Klick-.mcpb-Plugin für Claude Desktop, als per npx ausführbarer Server und als normales Node-Projekt.
Was du fragen kannst
Welche Geräte sind gerade mit meinem WLAN verbunden und an welchem Access Point hängen sie? Hat irgendetwas im Netzwerk eine schlechte Verbindung? Zeig mir die Türklingel-Ereignisse von letzter Nacht. Mach ein Foto von der Kamera an der Haustür. Welche Ports werden aus dem Internet weitergeleitet? Starte den Access Point im Wohnzimmer neu. (erfordert aktivierte Aktionen)
Related MCP server: UniFi MCP Server
Highlights
Network: Geräte, Clients (live und historisch), WLANs, VLANs und Subnetze, Firewall-Regeln, Portweiterleitungen, Site-Health und WAN-Status, Ereignisprotokoll, Alarme, historische Statistiken, Gast-Gutscheine.
Protect: Kameras und Türklingeln, Live-Snapshots als Bilder, Bewegung-/Klingel-/Smart-Erkennungs-Ereignisse, Sensoren, Lichter, Klingeln, RTSPS-Stream-URLs.
Drei Berechtigungsstufen – standardmäßig schreibgeschützt; Aktionen und Konfigurationsänderungen sind optionale Schalter.
Zwei Authentifizierungsmethoden – offizieller API-Schlüssel und/oder ein lokales Administratorkonto, wobei jede einen anderen Teil der UniFi-API freischaltet. Für die volle Abdeckung beides verwenden.
Kompakte Ausgabe – jedes Listen-Tool fasst standardmäßig zusammen (
detail: "full"liefert die rohen UniFi-Objekte), damit die Antworten lesbar und kostengünstig bleiben.Notausgang –
unifi_raw_requesterreicht jeden Endpunkt, für den es kein eigenes Tool gibt.
Voraussetzungen
Eine UniFi-OS-Konsole, die vom Rechner mit dem MCP-Server aus erreichbar ist.
Node.js 20.18.1 oder neuer (nur für die npx-/Quellcode-Installation – das
.mcpb-Plugin verwendet die Laufzeit, die mit Claude Desktop mitgeliefert wird).Anmeldedaten, siehe Authentifizierung.
Installation
Option A – Claude-Desktop-Plugin (.mcpb)
Lade
unifi-mcp-<version>.mcpbaus dem aktuellsten Release herunter.Öffne Claude Desktop → Einstellungen → Erweiterungen und ziehe die Datei hinein (oder doppelklicke sie).
Trage in den Einstellungen die Konsolenadresse und die Anmeldedaten ein und entscheide, ob Aktionen erlaubt werden sollen.
Alles ist gebündelt, eine separate Node-Installation ist nicht nötig.
Die
npx-Beispiele unten verwenden das veröffentlichte npm-Paket. Bis zur ersten npm-Veröffentlichung kannst du npx direkt auf das Repository zeigen lassen:npx -y github:mbgroen/unifi-mcp.
Option B – Claude Code
claude mcp add unifi \
--env UNIFI_HOST=192.168.1.1 \
--env UNIFI_USERNAME=mcp-readonly \
--env UNIFI_PASSWORD='your-password' \
--env UNIFI_API_KEY='your-api-key' \
-- npx -y @mbgroen/unifi-mcpOption C – jeder andere MCP-Client
Füge dies zur MCP-Server-Konfiguration des Clients hinzu (Cursor, VS Code, Windsurf, Zed, eigene Anwendungen):
{
"mcpServers": {
"unifi": {
"command": "npx",
"args": ["-y", "@mbgroen/unifi-mcp"],
"env": {
"UNIFI_HOST": "192.168.1.1",
"UNIFI_API_KEY": "your-api-key",
"UNIFI_USERNAME": "mcp-readonly",
"UNIFI_PASSWORD": "your-password",
"UNIFI_PERMISSION_MODE": "read-only"
}
}
}
}Option D – aus dem Quellcode
git clone https://github.com/mbgroen/unifi-mcp.git
cd unifi-mcp
npm install
npm run build
cp .env.example .env # fill it in
node dist/index.js # speaks MCP over stdioAuthentifizierung
UniFi OS stellt zwei API-Familien bereit, die nicht austauschbar sind. Dieser Server unterstützt beide und wählt automatisch die konfigurierte aus – die Einrichtung beider bietet die breiteste Abdeckung.
API-Schlüssel | Lokales Konto | |
Wo | Einstellungen → Control Plane → Integrationen → API-Schlüssel erstellen | Einstellungen → Administratoren → Administrator hinzufügen (nur lokaler Zugriff, keine 2FA) |
Variable |
|
|
Abdeckung | Offiziell unterstützte Teilmenge: Standorte, Geräte, Clients, Gutscheine, Protect-Kameras/Snapshots | Alles, was die UniFi-Web-App selbst nutzt: Statistiken, Ereignisse, Alarme, Firewall, Portweiterleitungen, WLAN-/VLAN-Konfiguration, Protect-Ereignisprotokoll |
Stabilität | Stabil, dokumentiert | Inoffiziell; kann sich mit einem UniFi-Update ändern |
Für einen schreibgeschützten Zugriff ein lokales Administratorkonto mit der Rolle Viewer einrichten. Aktionen und Konfigurationsänderungen erfordern ein Konto mit Admin-Rechten.
Zwei-Faktor-Authentifizierung wird für das lokale Konto nicht unterstützt – die Sitzungsanmeldung hat keine Möglichkeit, einen Code abzufragen. Erstelle ein separates lokales Konto ohne 2FA für diesen Server. (Dein eigenes Konto behält seine 2FA.)
Berechtigungsstufen
Der Server weigert sich, Tools auszuführen, die er nicht ausführen darf – ein nicht erlaubtes Tool wird nicht nur beim Aufruf blockiert, es wird gar nicht erst aufgelistet.
Modus |
| Plugin-Schalter | Was hinzukommt |
Schreibgeschützt (Standard) |
| beide aus | Nur lesen. Nichts an deinem Netzwerk kann sich ändern. |
Aktionen |
| Aktionen erlauben | Client blockieren/freigeben, Client neu verbinden, Gerät neu starten, LED blinken lassen, PoE-Port neu starten, SSID ein-/ausschalten, Geschwindigkeitstest ausführen, Gast-Gutscheine verwalten, Clients umbenennen, Türklingel-Nachricht festlegen. Alles umkehrbar. |
Volle Kontrolle |
| Konfigurationsänderungen erlauben | Firewall-Regeln, Portweiterleitungen, WLAN- und Netzwerkeinstellungen, Firmware-Updates, Protect-Aufnahmemodi und Schreibzugriff über |
Beginne mit schreibgeschützt. Erhöhe die Stufe nur, wenn du möchtest, dass der Assistent tatsächlich Änderungen vornimmt, und denke daran: Ein Assistent handelt auf der Grundlage dessen, was er liest – einschließlich Gerätenamen und Notizen, die aus dem Netzwerk selbst stammen.
Tools
Schreibgeschützt
Tool | Was es tut |
Konsole | |
| Prüft die Verbindung zur UniFi-Konsole: welche Anmeldedaten funktionieren, welche Anwendungen erreichbar sind und was dieser Server derzeit tun darf. Zuerst verwenden, wenn etwas fehlschlägt. |
| Notausgang für Endpunkte ohne dediziertes Tool. GET ist in jedem Berechtigungsmodus verfügbar; andere Methoden erfordern volle Kontrolle. Pfade sind relativ zur gewählten API-Oberfläche. |
UniFi Network | |
| Listet die UniFi-Network-Standorte auf dieser Konsole auf, mit dem Standortnamen, der an andere Tools übergeben werden kann. |
| Listet übernommene UniFi-Geräte (Gateway/Router, Access Points, Switches) mit Modell, Status, Firmware, Betriebszeit, Client-Anzahl und Auslastung auf. |
| Vollständige Details für ein UniFi-Gerät anhand der MAC-Adresse, einschließlich Funkmodule, Ports, Temperaturen und Uplink. |
| Listet Clients im Netzwerk mit IP, Signal, Durchsatz und dem verwendeten Access Point oder Switch-Port auf. |
| Listet alle Clients auf, die der Controller je gesehen hat, einschließlich offline Clients, deren festen IPs, Notizen und blockiertem Status. |
| Listet die konfigurierten SSIDs mit Sicherheitseinstellungen, Band und aktiviertem Status auf. |
| Listet LANs, VLANs und WAN-Konfiguration einschließlich Subnetzen und DHCP-Bereichen auf. |
| Listet Portweiterleitungsregeln auf dem Gateway auf. |
| Listet Firewall-Regeln (und optional Firewall-Gruppen) auf, die auf dem Gateway konfiguriert sind. |
| Gesamtzustand pro Subsystem (WAN, LAN, WLAN, VPN): Status, Betriebszeit, Latenz, Durchsatz und letztes Speedtest-Ergebnis. |
| Aktuelle Network-Ereignisse: Client-Verbindung/-Trennung, Roaming, Geräteneustarts, Konfigurationsänderungen. |
| Offene (oder archivierte) Alarme, die von der Network-Anwendung ausgelöst wurden. |
| Zeitreihenstatistiken für den Standort, einen Access Point, das Gateway oder einen einzelnen Client (Durchsatz, Clients, Latenz). |
| Listet Gast-Hotspot-Gutscheine mit ihrer Dauer, ihrem Kontingent und ihrer Nutzung auf. |
UniFi Protect | |
| Version, Speicher- und Aufnahmestatus des UniFi-Protect-NVR, der auf dieser Konsole läuft. |
| Listet Kameras und Türklingeln mit Verbindungsstatus, Aufnahmemodus, Akkustand und letzter Bewegung/Klingel auf. |
| Vollständige Details einer Kamera oder Türklingel, einschließlich ihrer Funktionsflags und Einstellungen. |
| Ruft ein aktuelles Standbild von einer Kamera oder Türklingel ab und gibt es als Bild zurück, damit es direkt angesehen werden kann. |
| Aktuelle Protect-Ereignisse: Bewegung, intelligente Erkennungen (Person, Fahrzeug, Paket), Türklingel-Läuten und Geräteverbindung/-trennung. |
| Listet Protect-Sensoren, -Leuchten, -Klingeln, -Viewer und -Türschlösser auf. |
| Gibt die RTSPS-URL für eine Kamera zurück, damit sie in VLC, ffmpeg oder einem Mediaplayer geöffnet werden kann. |
Aktionen (sicher)
Tool | Was es tut |
UniFi Network | |
| Blockiert ein Gerät im Netzwerk oder hebt eine bestehende Blockierung auf. Mit demselben Tool vollständig umkehrbar. |
| Erzwingt eine erneute Verbindung eines WLAN-Clients (Kick). Nützlich, um ein Gerät auf ein anderes Band oder einen anderen Access Point zu verschieben. |
| Autorisiert einen Client am Gastportal für einen Zeitraum oder widerruft diesen Zugriff. |
| Vergibt einem Client einen freundlichen Namen und/oder eine Notiz im Controller. |
| Startet einen Access Point, Switch oder das Gateway selbst neu. Ein Soft-Restart startet die Software neu; ein Hard-Restart führt einen Stromzyklus durch. |
| Lässt ein UniFi-Gerät seine LED blinken, damit es physisch gefunden werden kann, oder stoppt das Blinken. |
| Führt einen Stromzyklus an einem PoE-Switch-Port durch und startet so das angeschlossene Gerät neu. |
| Schaltet eine SSID ein oder aus, z. B. ein Gast- oder IoT-Netzwerk. |
| Startet einen Geschwindigkeitstest auf dem Gateway oder liest den Status des laufenden Tests. |
| Erstellt einen oder mehrere Gast-Hotspot-Gutscheine. |
| Löscht einen Gastgutschein, sodass er nicht mehr verwendet werden kann. |
UniFi Protect | |
| Zeigt eine benutzerdefinierte Nachricht auf dem Bildschirm einer UniFi-Türklingel an oder setzt sie auf den Standard zurück. Umkehrbar. |
| Schaltet ein UniFi-Protect-Flutlicht ein oder aus oder übergibt die Steuerung zurück an die Bewegungserkennung. |
Konfiguration (voll)
Tool | Was es tut |
UniFi Network | |
| Schaltet eine bestehende Portweiterleitungsregel ein oder aus. |
| Schaltet eine bestehende Firewall-Regel ein oder aus. |
| Ändert Einstellungen an einer SSID (Name, Passwort, Band, Gastrichtlinie, ...). Nur die angegebenen Schlüssel werden geändert. |
| Ändert Einstellungen an einer LAN-/VLAN-/WAN-Definition. Nur die angegebenen Schlüssel werden geändert. |
| Startet ein Firmware-Upgrade auf einem UniFi-Gerät. Das Gerät startet neu, wenn es abgeschlossen ist. |
UniFi Protect | |
| Legt fest, wann eine Kamera aufnimmt: immer, nur bei Erkennungen oder nie. Dies wirkt sich auf Ihr Sicherheitsmaterial aus. |
| Ändert beliebige Einstellungen an einem Protect-Gerät (Kamera, Sensor, Leuchte, Klingel, Viewer). Nur die angegebenen Schlüssel werden geändert. |
Jedes List-Tool akzeptiert detail: "summary" | "full"; standortbezogene Tools akzeptieren site, um den konfigurierten Standort zu überschreiben.
Konfigurationsreferenz
Variable | Standard | Beschreibung |
| (erforderlich) | Hostname oder IP der Konsole. |
| — | API-Schlüssel für die offizielle Integrations-API. |
| — | Lokales UniFi-OS-Konto für die interne API. |
| — | Einmaliger 2FA-Code, falls Sie unbedingt ein Konto mit 2FA verwenden müssen. |
|
| Name des Netzwerk-Standorts. |
|
|
|
|
| Boolesche Alternative, die auf |
|
| Boolesche Alternative, die auf |
|
| Netzwerk-Tools verfügbar machen. |
|
| Protect-Tools verfügbar machen. |
|
| Zertifikat der Konsole verifizieren. Konsolen verwenden ein selbstsigniertes Zertifikat auf ihrer lokalen Adresse. |
|
| Timeout pro Anfrage. |
Mindestens ein Anmeldedatensatz ist erforderlich; der Server beendet sich mit einer Erklärung, wenn keiner konfiguriert ist.
Sicherheitshinweise
Die Anmeldedaten liegen in der Konfiguration Ihres MCP-Clients. In Claude Desktop speichert das Plugin den API-Schlüssel und das Passwort im Schlüsselbund des Betriebssystems, da sie als
sensitivemarkiert sind.Die TLS-Verifizierung ist standardmäßig deaktiviert, da UniFi-Konsolen ein selbstsigniertes Zertifikat für ihre LAN-Adresse verwenden. Die Verbindung ist dennoch verschlüsselt, aber nicht authentifiziert – behalten Sie den Server in einem vertrauenswürdigen Netzwerk oder installieren Sie ein ordnungsgemäßes Zertifikat und setzen Sie
UNIFI_VERIFY_TLS=true.Alles, was ein Assistent aus Ihrem Netzwerk liest (Clients, Notizen, SSIDs, Ereignismeldungen), ist nicht vertrauenswürdige Eingabe. Das ist ein weiterer Grund, den Server schreibgeschützt zu lassen, sofern Sie keinen Grund für mehr haben.
Es wird nichts irgendwohin gesendet, außer an Ihre Konsole und an den MCP-Client, mit dem Sie verbunden sind.
Fehlerbehebung
Führen Sie zuerst unifi_status aus – es zeigt an, welche Anmeldedaten authentifiziert wurden, welche Anwendungen geantwortet haben und welcher Berechtigungsmodus aktiv ist.
Symptom | Wahrscheinliche Ursache |
| Verwendung eines Ubiquiti-SSO-Kontos anstelle eines lokalen Kontos, oder das Konto hat 2FA aktiviert. |
| Erstellen Sie ein lokales Konto ohne 2FA. |
| Falscher |
| Setzen Sie |
Protect-Tools melden | Protect ist auf dieser Konsole nicht installiert, oder der API-Schlüssel hat keinen Protect-Zugriff. Setzen Sie |
Ein Tool fehlt in der Liste | Es ist eine höhere Berechtigungsstufe erforderlich, oder die entsprechende Anwendung ist deaktiviert. |
| Diese Daten sind nicht in der Integrations-API enthalten – fügen Sie |
Entwicklung
npm install
npm run build # compile TypeScript to dist/
npm run typecheck # types only
npm run inspect # MCP Inspector against the local build
npm run bundle # build unifi-mcp-<version>.mcpbHinzufügen eines Tools: Definieren Sie es mit defineTool() in src/tools/, deklarieren Sie seine tier und feature und exportieren Sie es aus src/tools/index.ts. scripts/sync-manifest-tools.mjs hält manifest.json synchron (es wird als Teil von npm run bundle ausgeführt).
Veröffentlichung
npm version minor # bumps package.json and creates the v-tag
git push --follow-tagsDer Release-Workflow erstellt das Bundle und hängt unifi-mcp-<version>.mcpb sowie SHA256SUMS.txt an den GitHub-Release an.
Kompatibilität
Entwickelt gegen UniFi OS 4.x mit UniFi Network 9.x und UniFi Protect 6.x auf einer UDR, mit In-Wall- und Standalone-Access-Points, einer LTE-Kamera und einer Türklingel. Andere UniFi-OS-Konsolen verwenden dieselbe API-Oberfläche. Endpunkte, die eine bestimmte Konsole oder Firmware nicht implementiert, geben einen klaren Fehler zurück, anstatt stillschweigend zu scheitern.
Lizenz
MIT – siehe LICENSE.
Nicht verbunden mit, unterstützt von oder gesponsert durch Ubiquiti Inc. UniFi ist eine Marke von Ubiquiti Inc.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseDqualityDmaintenanceEnables comprehensive management of UniFi network infrastructure through the UniFi Cloud API, including device control, client management, camera settings, and access door control through natural language.3952Apache 2.0
- AlicenseBqualityDmaintenanceEnables AI assistants to manage and monitor UniFi Network Controllers through natural language. Provides 25 read-only tools for discovering devices and clients, viewing security configurations, analyzing network statistics, and exporting configuration data.41MIT
- FlicenseNot gradedqualityDmaintenanceProvides AI assistants with access to UniFi Network and Protect infrastructure for managing devices, monitoring clients, analyzing network health, viewing camera snapshots, and getting optimization recommendations across multiple UniFi controllers.2
- AlicenseCqualityAmaintenanceEnables AI agents to manage UniFi network infrastructure via the Model Context Protocol, supporting device management, network configuration, security, and QoS through local or cloud APIs.4352235Apache 2.0
Related MCP Connectors
Let AI operate servers without SSH. Choose actions, approve risky changes, and audit every step.
Connect AI assistants to GitHub - manage repos, issues, PRs, and workflows through natural language.
Operate Linux, macOS and Windows from your LLM. Every action runs through an auditable allowlist.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/mbgroen/unifi-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server