6 Punkte von GN⁺ 2026-03-23 | Noch keine Kommentare. | Auf WhatsApp teilen
  • Pinterest berichtet von seinen Erfahrungen beim Aufbau mit MCP als Standard zur Tool-Anbindung für AI-Agenten und der produktionsreifen Integration in echte Engineering-Workflows wie IDEs, interne Chats und AI-Agenten
  • Entscheidung für eine Architektur aus mehreren domänenspezifischen MCP-Servern (Presto, Spark, Airflow usw.) plus zentralem Register statt eines einzelnen monolithischen Servers
  • Anwendung des Least-Privilege-Prinzips auf sensible Daten durch eine doppelte Authentifizierungsebene aus Endnutzer-JWT + SPIFFE-Mesh-Identität und zugriffskontrollen auf Basis von Business-Gruppen
  • Erreichte messbare Ergebnisse von 66.000 Aufrufen pro Monat, 844 monatlich aktiven Nutzern und geschätzt 7.000 eingesparten Stunden pro Monat
  • Der Schlüssel dazu, MCP nicht nur als Experiment, sondern als Produktivitätsinfrastruktur für Engineers zu etablieren, waren ein sicherheitsorientiertes Design, eine integrierte Deployment-Pipeline und die direkte Integration in Tools, die Mitarbeitende bereits nutzen

Hintergrund der MCP-Einführung

  • Model Context Protocol (MCP) ist ein Open-Source-Standard, der beim Austausch zwischen LLMs und Tools bzw. Datenquellen ein einheitliches Client-Server-Protokoll nutzt, statt für jedes Modell und jedes Tool eigene Integrationen zu implementieren
  • Pinterest nutzt MCP nicht für simples Q&A, sondern als Grundlage für die Automatisierung von Engineering-Aufgaben — von „Lies die Logs und finde das Problem“ bis zu „Analysiere ein Bug-Ticket und schlage einen Fix-PR vor“

Entwurf der anfänglichen Architektur

Cloud-Hosting statt lokal

  • Zwar werden auch lokale MCP-Server (stdio-Kommunikation) unterstützt, als Standardpfad (paved path) wurden jedoch intern in der Cloud gehostete MCP-Server gewählt
    • Ziel war der Betrieb in einer Umgebung, in der sich internes Routing und Sicherheitslogik leicht anwenden lassen
    • Lokale Server sind nur für Experimente erlaubt

Viele kleine Server vs. ein monolithischer Server

  • Statt eines einzelnen großen Servers entschied man sich für mehrere kleine MCP-Server pro Domäne
    • So lassen sich pro Server unterschiedliche Zugriffskontrollen anwenden
    • Außerdem wird verhindert, dass der Kontext des Modells unnötig aufgebläht wird
  • Frühes Feedback: Der Aufbau eines neuen MCP-Servers erforderte zu viel Vorarbeit wie Deployment-Pipeline, Service-Konfiguration und Betriebs-Setup
    • Als Lösung wurde eine integrierte Deployment-Pipeline aufgebaut — Teams müssen nur noch die Tool-Logik definieren, die Plattform übernimmt Deployment und Skalierung automatisch

Internes MCP-Register

  • Eine Single Source of Truth, die die Liste freigegebener MCP-Server und deren Verbindungswege verwaltet
  • Web-UI: Menschen können Server durchsuchen sowie zuständiges Team, Support-Kanal, Sicherheitsstatus, Live-Status und verfügbare Tools einsehen
  • API: AI-Clients (interner AI-Chat, IDE-Integration, Agenten) nutzen sie zur Server-Erkennung und -Validierung sowie zur Entscheidung „Darf dieser Nutzer Server X verwenden?“
  • Nur im Register eingetragene Server gelten als für Produktion freigegebene Server — es bildet das Rückgrat der Governance

Aktueller Stand der produktiven MCP-Server

Wichtige Server (nach Nutzung)

  • Presto MCP-Server: Der am stärksten genutzte Server nach Traffic — Agenten (einschließlich AI-gestützter IDEs) fragen Presto-basierte Daten on demand ab und können Daten direkt im Workflow nutzen, ohne in Dashboards wechseln zu müssen
  • Spark MCP-Server: Grundlage der AI-gestützten Spark-Debugging-Erfahrung — unterstützt die Diagnose fehlgeschlagener Spark-Jobs, die Zusammenfassung von Logs und die strukturierte Erfassung von Root-Cause-Analysen, wodurch operative Threads in wiederverwendbares Wissen überführt werden
  • Knowledge MCP-Server: Ein allgemeiner Wissensendpunkt — interne AI-Bots nutzen ihn für Unternehmenswissen, Q&A, Dokumentation und Debugging-Fragen

Integration in interne Pinterest-Services

  • Integration von MCP-Tools in die interne LLM-Web-Chat-Oberfläche, die viele Pinterest-Mitarbeitende täglich nutzen
    • Das Frontend verarbeitet automatisch den OAuth-Flow und gibt anschließend die Liste der Tools zurück, die für den aktuellen Nutzer erlaubt sind
    • Der AI-Chat-Agent bindet MCP-Tools direkt an das Agenten-Toolset und bietet damit die gleiche Erfahrung wie bei normalen Tool-Aufrufen
  • AI-Bots auf der internen Chat-Plattform wurden ebenfalls mit MCP-Tools ausgestattet
    • Authentifizierung und Autorisierung laufen über die Register-API
    • Unterstützung dafür, bestimmte MCP-Tools auf bestimmte Kanäle zu beschränken (z. B. Spark-MCP-Tools nur im Airflow-Support-Kanal)

Sicherheit, Governance und Richtlinien

MCP-Sicherheitsstandard

  • Es wurde ein eigener MCP Security Standard definiert — für alle MCP-Server, die nicht nur experimentell sind, sind ein zuständiges Team, die Registrierung im internen Register sowie die Freigabe von Review-Tickets durch Sicherheit/Recht/Datenschutz/(falls zutreffend) GenAI verpflichtend
  • Auf Basis der Review-Ergebnisse werden Sicherheitsrichtlinien wie die zugelassenen Nutzergruppen für den Server festgelegt

Doppelte Schicht für Authentifizierung (AuthN) und Autorisierung (AuthZ)

  • Flow auf Basis von Endnutzer-JWTs

    1. Der Nutzer interagiert über eine Oberfläche wie AI-Chat, IDE-Plugin oder AI-Bot
    2. Der Client führt einen OAuth-Flow gegen den internen Auth-Stack aus und übergibt anschließend das JWT an das MCP-Register und den Zielserver
    3. Envoy validiert das JWT, setzt die Header X-Forwarded-User und X-Forwarded-Groups und wendet grobgranulare Sicherheitsrichtlinien an
    4. Innerhalb des Servers erfolgt die feingranulare Rechtekontrolle mit dem Decorator @authorize_tool(policy='…') (z. B. darf get_revenue_metrics nur von der Gruppe Ads-eng aufgerufen werden)
  • Zugriffskontrolle auf Basis von Business-Gruppen

    • Statt allen authentifizierten Pinterest-Mitarbeitenden und -Auftragnehmern pauschalen Zugriff zu geben, extrahieren sensible Server die Mitgliedschaft in Business-Gruppen aus dem JWT und prüfen, ob der Nutzer zu einer freigegebenen Gruppe gehört
    • Der Presto MCP-Server ist technisch über breite Oberflächen erreichbar, aber nur freigegebene Gruppen wie Ads, Finance und bestimmte Infrastruktur-Teams können Sessions aufbauen und hochprivilegierte Tools ausführen
  • SPIFFE-basierter Flow nur für Services

    • In risikoarmen, schreibgeschützten Szenarien wird ausschließlich SPIFFE-basierte Authentifizierung (Mesh-Identität) verwendet
    • Sie kommt nur zum Einsatz, wenn kein Endnutzer im Loop ist und der Blast Radius streng begrenzt ist

Unterschiede zum MCP-OAuth-Standard

  • Die offizielle MCP-Spezifikation definiert pro Server einen OAuth-2.0-Authentifizierungsflow (Consent-Screen, serverseitige Token-Verwaltung), Pinterest verwendet jedoch einen Ansatz zur Wiederverwendung bestehender Sessions
    • Wenn Nutzer Oberflächen wie den AI-Chat öffnen, sind sie bereits über den internen Auth-Stack authentifiziert — zusätzliche Login-Prompts oder Consent-Dialoge sind nicht nötig
    • Envoy und Policy-Decorator übernehmen die Autorisierung transparent im Hintergrund

Human-in-the-Loop

  • Da MCP-Server automatisierte Aktionen ermöglichen, ist der Blast Radius größer als bei manueller Bedienung
  • Entsprechend der Agenten-Guidance ist vor sensiblen oder kostspieligen Aktionen eine menschliche Freigabe erforderlich — der Agent schlägt die Aktion vor, und ein Mensch genehmigt oder lehnt sie ab (auch gesammelt möglich)
  • Mithilfe von elicitation wird vor riskanten Aktionen (z. B. dem Überschreiben von Tabellendaten) eine Bestätigung angefordert

Observability und Erfolgskennzahlen

  • Auf alle MCP-Server werden Bibliotheksfunktionen angewendet — Logging von Ein- und Ausgaben, Aufrufzahlen, Exception-Tracking und Telemetrie sind standardmäßig enthalten
  • Metriken auf Ökosystem-Ebene: Anzahl registrierter MCP-Server und Tools, Gesamtzahl der Server-Aufrufe sowie geschätzte Zeiteinsparung pro Aufruf (von Server-Eigentümern auf Basis leichten Nutzerfeedbacks und des Vergleichs mit früheren manuellen Workflows geschätzt)
  • Eine einzige North-Star-Metrik: eingesparte Zeit (time saved) — Anzahl der Aufrufe × eingesparte Minuten pro Aufruf zur groben Abschätzung der Wirkung
  • 66.000 Aufrufe pro Monat, 844 monatlich aktive Nutzer, geschätzt 7.000 eingesparte Stunden pro Monat

Noch keine Kommentare.

Noch keine Kommentare.