MCP Audit-Sweep — 2026-05-15

Quick-Scan der 7 Eigenbau-MCPs (ohne mcp-papierkram, der ist Trigger und schon gepatcht; mcp-hetzner/mcp-elevenlabs sind Fremd-Code, skip) gegen die Best-Practices-Regeln aus mcp-best-practices.

Fokus dieses Sweeps: die drei konkreten Regeln, die den Papierkram-Vorfall ausgeloest haben:

  • 1.1 — Raw-Tools-Gating in Hosted-MCPs
  • 2.1 — Upstream-Fehler mit Hints umwrappen
  • 1.3 — Reiche Docstrings auf list_/get_

Vollstaendiger Audit gegen alle 17 Checklisten-Punkte ist eine separate Session (siehe Folge-TODOs unten).

Stack-Status

MCPHosted?URLTools (decorator-count)
mcp-ticketpayindirekt (via mcp-vf-hosted)mcp-vf.agenticventures.de15
mcp-m365indirekt (via mcp-vf-hosted)mcp-vf.agenticventures.de18
mcp-gsuitelokal onlystdio0 (FastMCP-Auto-Registration?)
mcp-calcomdirekt hostedmcp-calcom.agenticventures.de10
mcp-whatsappdirekt hostedmcp-whatsapp.agenticventures.de15
mcp-replicatelokal onlystdio35
mcp-runwaylokal onlystdio10

Audit-Tabelle — die drei Kern-Regeln

MCP1.1 Raw-Gate2.1 Error-Hints1.3 Docstrings (avg chars list/get)Priority
mcp-ticketpaygap (1 raw_get, hosted)gap (raise_for_status nackt)mittel (190)high
mcp-m365ok (0 raw_*)partial (8 except-blocks, kein Hint-Pattern)tbdmedium
mcp-gsuiteok (0 raw_*)gaptbdlow (nicht hosted)
mcp-calcomgap (2 raw_*, direkt hosted!)gapgut (655)high
mcp-whatsappgap (2 raw_*, direkt hosted!)gapmittel (186)high
mcp-replicategap (2 raw_*)partialtbdlow (nicht hosted)
mcp-runwayok (0 raw_*)gaptbdlow (nicht hosted)

Legende: ok = Regel erfuellt, partial = teilweise, gap = Handlungsbedarf, tbd = bei diesem Sweep nicht tief geprueft.

Priorisierung

High — heute oder diese Woche

  1. mcp-ticketpay raw_get-Gate — 1 raw_get-Tool exponiert via mcp-vf-hosted. Selbes Risiko wie Papierkram. Patch: TICKETPAY_EXPOSE_RAW-Env, identisches Pattern.
  2. mcp-calcom raw-Gate — 2 raw_* Tools, direkt hosted unter mcp-calcom.agenticventures.de. Beobachtungs-Use-Case: Friseur-im-Sueden-Projekt nutzt das aktiv. Patch: CALCOM_EXPOSE_RAW-Env.
  3. mcp-whatsapp raw-Gate — 2 raw_* Tools, direkt hosted, im receptionist-Brain-Lambda im Einsatz. Patch: WHATSAPP_EXPOSE_RAW-Env.

Pattern: 1:1 die mcp-papierkram _format_404_hint() + RAW_ENABLED-Konstante uebernehmen. Ressourcen-Prefix-Map je API anpassen (TicketPAY hat versionierte Pfade /v3/events/..., Cal.com /v2/..., WhatsApp /v22.0/...).

Medium — naechster Sprint

  1. mcp-m365 Error-Hints — Graph-API hat 8 except-Bloecke aber keinen einheitlichen Hint-Pattern. Bei 404 auf z.B. einen SharePoint-Pfad sollte ein Hint zur Site-Liste kommen.
  2. Docstring-Aliase fuer ticketpay + whatsapp — analog zum Papierkram-Upgrade. Deutsche Synonyme + Beispiel-Calls.

Low — wenn Zeit ist

  1. mcp-replicate / mcp-runway — beide nur lokal, kein Production-Risiko aus „Modell halluziniert API-Pfad”. Trotzdem fuer Konsistenz nice-to-have.
  2. mcp-gsuite — keine raw_*, kein dringender Handlungsbedarf.

Was nicht in diesem Sweep gemessen wurde

(Hier landen Folge-Audits — separate Sessions:)

  • Audit-Log-Format-Konsistenz quer ueber MCPs (Regel 2.2). Aktuell hat NUR mcp-vf-hosted das strukturierte JSON-Audit-Format. Tool-Error-Digest-Lambda greift deswegen heute nur dort sinnvoll. Die direkt hosteten (calcom, whatsapp) braeuchten den gleichen Logger-Pattern.
  • Pydantic-Tool-Input-Validierung (Regel 4.3)
  • Per-User-Audit-Header (Regel 4.2) — nur relevant fuer MCPs die ueber OAuth-Boundary laufen
  • Tool-Anzahl-Cap (Regel 1.4) — mcp-replicate hat 35 Tools, evtl. Splitten?
  • count_only/fields-Parameter (Regeln 3.1, 3.2) — heute nirgends implementiert
  • /health-Sub-Probe (Regel 5.2)
  • Quota-Alarme (Regel 6.4)

Folge-TODOs (in _index)

  • High mcp-ticketpay: raw-gate + error-hints (analog mcp-papierkram, ~45 Min)
  • High mcp-calcom: raw-gate + error-hints (ditto, ~45 Min)
  • High mcp-whatsapp: raw-gate + error-hints (ditto, ~45 Min)
  • Medium mcp-m365: einheitlicher Error-Hint-Pattern (~1h)
  • Medium Docstring-Aliase fuer ticketpay + whatsapp list_/get_-Tools (~1h)
  • Medium Strukturierten Audit-Log-Pattern (JSON wie mcp-vf-hosted) auf mcp-calcom + mcp-whatsapp einbauen, damit tool-error-digest dort gleich aussagekraeftig ist
  • Low Vollaudit gegen alle 17 Regeln in mcp-best-practices.md fuer alle 8 MCPs