- omada-mcp Container auf pve-LXC (.126, endpointId=2, ipvlan .176), Stack Id=200, gestoppt - Erkenntnis: jmtvms/tplink-omada-mcp nutzt Omada OPEN API (CLIENT_ID/SECRET/OMADAC_ID/SITE_ID), NICHT username/password → .env-Schema + compose-Kommentare + .env.template angepasst - omada-mcp in ~/.claude/settings.json eingetragen (SSE .176:3000) - Letzter manueller Schritt: Open-API-App im Controller-UI anlegen (Platform Integration), Client-Creds + SITE_ID in .env → Container starten → reload → dann VLANs + Adoption Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
3.7 KiB
MCP-Inventar — BF (Single Source of Truth gegen "1000 MCP-Leichen")
Regel: Jeder MCP-Server, der für BF läuft, steht hier — sonst existiert er nicht. Kein lokaler Ad-hoc-
npx-Wildwuchs auf Laptops. Zentral = Docker auf einem Host, FQDN-adressiert. Wer einen MCP abschaltet, streicht die Zeile (oder setzt Statusretiredmit Datum).
Aktive / geplante MCPs
| MCP | Zweck / Geräte | Host | Transport / Endpoint | Image | Config | Status |
|---|---|---|---|---|---|---|
| MikroMCP (AliKarami) | MikroTik hAP ax² ap1/ap2 (RouterOS 7) — WLAN/CAPsMAN, später Router-Cutover | jetzt: lokal (dieser Mac) / Ziel: Mac mini .167 Docker |
jetzt stdio (npx mikromcp serve) / Ziel HTTP :3000 |
ghcr.io/alikarami/mikromcp:latest (HTTP) bzw. npm mikromcp (stdio) |
mcp/mikromcp/ + Claude-Code user-config |
🟢 live (stdio), doctor 12/12, in Claude Code ✓Connected |
| pve-mcp (samik081) | Proxmox VE API (Host .100) |
DS923 (.10), macvlan-IP .173 |
SSE http://10.40.41.173:3000/sse |
ghcr.io/samik081/mcp-pve:latest |
— (Stack via Portainer) | 🟢 live, in Claude Code eingetragen |
| omada-mcp (jmtvms) | TP-Link Omada Controller → ES208G (+ künftige Omada-Geräte) | pve-LXC (.126, endpointId=2), ipvlan-IP .176 |
SSE http://10.40.41.176:3000/sse (MCP_TRANSPORT=sse) |
jmtvms/tplink-omada-mcp:latest |
mcp/omada/ ✓, in settings.json ✓ |
🟠 Container deployed (gestoppt) — braucht Open-API-Client-Creds (UI: Platform Integration → Open API). User/PW funktioniert NICHT, nur Client-Credentials. |
| omada-controller | Omada Software Controller (keine MCP) | DS923 (.10), macvlan-IP .175 |
HTTPS https://10.40.41.175:8043 |
mbentley/omada-controller:6.2 |
omada/docker-compose.yml |
🟢 live, configured, Wizard ✅ |
| komodo-mcp (samik081) | Docker-Management 5 Hosts via Komodo Core (ersetzt Portainer) | DS923 (.10), macvlan-IP .176 |
SSE http://10.40.41.176:3000/sse |
ghcr.io/samik081/mcp-komodo:latest |
mcp/komodo/ ✓ (.env.example → .env nach Phase 1) |
🟡 geplant — Migration: mcp/komodo/MIGRATION.md |
| Docker-Überblick via Portainer CE 2.40.0 | .126:9443 |
— | portainer/portainer-mcp |
mcp/portainer/ (Token .env ✓) |
⏳ retired nach Komodo-Migration — Token aufheben bis Phase 4 | |
| ALLNET ALL-SG8316M Core-Switch | — | — | — | — | ⛔ bewusst NICHT (Telnet/1-VTY/15-min-Lock auf Core = zu fragil). User-Entscheid: erst beschriebener Weg, sonst Omada-Core-Tausch. |
Legende: 🟢 live · 🟡 staged (Config da, nicht deployed) · 🔴 blockiert · ⛔ bewusst nicht gemacht
Anti-Sprawl-Regeln
- Zentral statt lokal: MCPs laufen als Container auf einem festen Host, nicht als
npxpro Laptop. - Eine Zeile pro MCP in dieser Tabelle. Kein Eintrag → abschalten.
- Config im Git (
mcp/<name>/), Secrets nur in.env(gitignored). - FQDN statt IP, sobald eingerichtet (DNS-Rewrite) → Endpoint-Spalte updaten.
- Review-Datum: mind. halbjährlich diese Tabelle gegen tatsächlich laufende Container prüfen
(
docker psauf den Hosts).
ALLNET — warum kein MCP
ALL-SG8316M (Core) nach FW-2.2.1-Flash: Web-UI tot, nur Telnet-CLI, kein SSH/REST/SNMP-Write,
nur 1 VTY-Line, ~15 min Busy-Lock bei Stale-Sessions. Ein MCP darüber wäre auf dem Core-Switch
(an dem alles hängt) fragil und lockout-gefährlich. → Management bleibt bei der bestehenden
Telnet-CLI-Toolchain (switch/cli/). Strategische Option: Core-Switch (Methusalem, Bj. 2015)
gegen einen Omada-Switch tauschen → fällt unter denselben Omada-Controller/omada-mcp.
Das ist Hardware-Ausgabe + Core-Cutover → User-Entscheidung (offen).