Zum Inhalt

MCP-Katalog

Stand: 2026-05-25

Ziel

MCPs werden als kontrollierte Toolschicht fuer Agenten genutzt. Neue MCPs werden nur eingefuehrt, wenn sie eine bestehende Luecke schliessen und nicht bereits durch eine vorhandene Integration abgedeckt sind.

Risikoklassen

Klasse Beschreibung Verhalten
read_only reine Discovery, Status, Suche, Inventar automatisch erlaubt
write_reviewed Aenderungen mit Diff, Plan oder PR Approval erforderlich
privileged SSH, Proxmox, NetBox write, M365 write Approval und Logging erforderlich
dangerous Loeschen, Firewall-Default, Key-Export, Secret-Dump standardmaessig blockiert

Ziel-MCPs

MCP Status Risiko Backend Zweck
Context7 vorhanden read_only extern technische Dokumentation
grep.app vorhanden read_only extern Code-/Repo-Recherche
Filesystem geplant write_reviewed lokal/OpenCode Doku, Runbooks, Skripte im Projektkontext
Git/Gitea geplant write_reviewed Gitea Branches, PRs, Issues, Commits, Wiki-Sync
NetBox aktiv ueber MCPHub write_reviewed NetBox API IPAM/DCIM Discovery und geplante Aenderungen
Proxmox aktiv ueber MCPHub privileged Proxmox API VM/LXC/Storage/Netzwerk-Inventar
SSH geplant privileged OpenSSH kontrollierte Serverautomation
PowerShell geplant privileged PowerShell/Graph/Exchange M365, Intune, AD, Exchange Online
HTTP/OpenAPI aktiv ueber Lanstyle Tools API read_only bis write_reviewed interne APIs Open-WebUI-kompatible Fassade fuer NPM, Gitea, NetBox und Proxmox
Docker geplant privileged Docker API/CLI Containerstatus, Logs, kontrollierte Deployments
Browser vorhanden in Codex, fuer OpenCode zu klaeren read_only bis write_reviewed Browser Automation UI-Pruefung, Admin-Oberflaechen
Vaultwarden Helper geplant privileged Bitwarden CLI/API Secret-Referenzen ohne Klartextausgabe

Vorbereitete interne MCP-Basis

Repository-Pfad:

  • agent-runtime/mcp/lanstyle-infra-mcp

Status:

  • Code-Skelett vorhanden
  • FastMCP-basiert
  • aktuell read-only
  • Secret-Zugriff nur ueber Environment/Vaultwarden-Wrapper
  • strukturierte Logs mit Redaction

Vorbereitete Tools:

Tool Klasse Zweck
netbox_get_status read_only NetBox API-Status lesen
netbox_list_sites read_only Standorte lesen
netbox_list_prefixes read_only Prefixe/VLAN-Bezug lesen
npm_list_proxy_hosts read_only NPM Proxy Hosts lesen
proxmox_get_version read_only Proxmox Version lesen
proxmox_list_cluster_resources read_only Proxmox Ressourcen inventarisieren
gitea_get_version read_only Gitea Version lesen
hermes_context_search read_only kuratierten Hermes-/Obsidian-/Qdrant-Kontext fuer OpenCode suchen
hermes_session_summary_preview read_only Session-Zusammenfassung und Memory-Kandidaten als Preview erzeugen, ohne Speicherung

Hermes Context Tools

Stand 2026-05-30:

hermes_context_search ist als read-only Kontextwerkzeug fuer OpenCode vorbereitet. Es durchsucht serverseitig die kuratierten Qdrant-Collections lanstyle_obsidian_memory, lanstyle_docs und lanstyle_inventory. Obsidian nutzt LiteLLM-Embeddings, MkDocs/Inventory nutzen den passenden Ollama/Nomic-Embedding-Pfad. Die Antwort liefert kompakte Quellen mit title, source_path, source_system, collection, confidence, updated, Score und customer_context.

Wichtig fuer Operatorfragen: Wenn eine Frage eindeutig Lanstyle-Kontext enthaelt, zum Beispiel VLAN70, br70, 10.222.*, GB10 oder Agent Runtime, wird customer_context=lanstyle gesetzt. Kundenkontexte wie TecMed bleiben strikt gefiltert, damit keine Systeme vermischt werden.

Grenzen:

  • keine Infrastrukturwrites
  • keine Shell
  • keine Proxmox-/NetBox-/NPM-/DNS-Aenderungen
  • keine Secret-Ausgabe
  • Antwortgroesse begrenzt

hermes_session_summary_preview erzeugt nur eine Preview fuer Session Summary und Memory Candidates. Kandidaten werden nicht automatisch gespeichert und brauchen Review.

Write-Planning MCP

Repository-Pfad:

  • agent-runtime/mcp/lanstyle-infra-write-plan-mcp

Status:

  • plan-only
  • keine Live-Writes
  • keine Secrets erforderlich
  • Approval immer erforderlich

Vorbereitete Tools:

  • netbox_plan_prefix_change
  • gitea_plan_repository_change
  • proxmox_plan_guest_change

Startwrapper:

  • agent-runtime/scripts/start-lanstyle-infra-mcp.sh

OpenCode-Beispiel:

  • agent-runtime/configs/opencode-mcp.example.json

Aktivierungsrunbook:

  • agent-runtime/runbooks/opencode-mcp-activation.md

Implementierungsstandard

Eigene MCPs werden bevorzugt mit FastMCP gebaut:

  • kleine, fokussierte Toolsets
  • JSON-Schema fuer Ein- und Ausgabe
  • strukturierte Logs
  • Run-ID-Unterstuetzung
  • klare Fehlercodes
  • keine Secrets in Responses
  • getrennte read/write Tools
  • Schreibtools mit dry_run und approval_id

Namensschema

Toolnamen muessen OpenCode-kompatibel und eindeutig sein:

  • netbox_get_prefixes
  • netbox_get_ip
  • netbox_plan_ip_assignment
  • proxmox_list_guests
  • proxmox_get_guest_config
  • gitea_create_branch
  • gitea_open_pr
  • ssh_run_readonly
  • ssh_plan_change

Keine Tools mit generischen Namen wie run, list, write, todo_write bereitstellen. Diese Namen fuehren bei OpenCode/Ollama zu Tool-Schema-Missverstaendnissen.

Vorbereitete Tokens

  • NetBox:
  • Vaultwarden-Eintrag: Lanstyle / NetBox API Token Agent Legacy Write
  • Test: HTTP 200 auf /api/status/
  • Langfristig durch v2-Token ersetzen.
  • Proxmox:
  • Vaultwarden-Eintrag: Lanstyle / Proxmox API Token Agent
  • Token-ID: root@pam!lanstyle-agent
  • Test: HTTP 200 auf /api2/json/version
  • Hinweis: privsep=0; spaeter engeres Rollenmodell planen.

MCPHub Aktivierung

Stand 2026-05-25:

  • MCPHub laeuft im Agent-Runtime-LXC 259.
  • Runtime-Image: lanstyle/mcphub:1.0.5-fastmcp-20260525.
  • MCP-Code wird aus /opt/agent-runtime/mcp/ in den Container gemountet.
  • Secrets liegen nur in /opt/agent-runtime/mcphub/lanstyle-infra.env.
  • Aktive Server:
  • lanstyle-infra-readonly: 7 Read-only-Tools
  • lanstyle-infra-write-plan: 3 Dry-Run-Planungstools
  • Smoke-Test erfolgreich gegen NetBox, NPM, Proxmox und Gitea.
  • OAuth-State ist aktiv.
  • Dynamic Client Registration erfordert Authentifizierung.
  • Externer Zugriff bleibt zusaetzlich ueber NPM Access List Max begrenzt.
  • Unauthentifizierte Dynamic-Registration-Tests liefern keinen Client; MCPHub ist damit nicht mehr offen registrierbar.

OpenAPI-Fassade fuer Open WebUI

Stand 2026-05-25:

  • Dienst: lanstyle-tools-api
  • LXC: Agent Runtime 259
  • Interner Endpoint: http://10.222.70.20:3010
  • OpenAPI-Spec: http://10.222.70.20:3010/openapi.json
  • Auth: Bearer Token aus Vaultwarden und /opt/agent-runtime/mcphub/lanstyle-infra.env
  • Open-WebUI-Connection: lanstyle-tools-api
  • Zugriff: alle bekannten Open-WebUI-User per access_grants

Die Fassade stellt nur kontrollierte Funktionen bereit:

  • Read-only Discovery fuer NetBox, NPM, Proxmox und Gitea
  • Plan-only Endpunkte fuer NetBox-, Gitea- und Proxmox-Aenderungen
  • keine Live-Writes

Damit kann Open WebUI externe Toolserver nutzen, ohne MCPHub direkt als OpenAPI-Endpunkt zweckzuentfremden.