MCP: externe Tools sicher nutzen
Track E ist der Andock-Track. In E3 verstehst du das Model Context Protocol protokolltief — Transport, Handshake, Tool-Discovery, Schemas — und bindest die CRM-MCP aus C5 sicher an.
Worum es hier geht
Wir binden die CRM MCP der Muster GmbH protokolltief an — denselben Server, dessen Tools der Helpdesk-Assistent in C5 im Workflow nutzt. Hier geht es eine Ebene tiefer: wie die Verbindung funktioniert und wie du sie absicherst. Editor-Ansichten zeigen wir als Konfigurations-Mockups (.cfg), Protokoll-Nachrichten als HTML-sichere pre-Blöcke.
Voraussetzung: Track B, idealerweise C5 (HTTP/Funktion/MCP im Workflow) und die Rolle Organisations-Admin oder höher zum Eintragen von MCP-Servern. Kein echter Endpunkt: alle URIs und Tokens sind Demo-Platzhalter (https://mcp.example.com, ${MCP_TOKEN}).
Quellen und Stand
Geprüft gegen das AuxData-Administrator-Handbuch Kap. 7.3 (MCP-Server) sowie 7.4/7.5 (Rechte, Best Practices) und die MCP-Spezifikation (Revision 2025-11-25; Abgleich 03.06.2026) plus die Instanz. Protokoll-Details (JSON-RPC, Handshake, Transporte, HTTP-Header, Tasks) sind gegen MCP-Spec & Instanz zu prüfen: das Handbuch nennt URI/Endpoint, aber keine konkrete Protokollversion.
MCP-Grundlagen
Offenes Protokoll, klare Rollen — und wo AuxData darin steht.
1Was MCP löst
MCP (Model Context Protocol) ist ein offenes Protokoll, das LLMs Zugriff auf standardisierte Tools, Prompts und Ressourcen erlaubt. (AH 7.3, wörtlich)
Das Problem dahinter: Ein Chatbot kann reden, ein Agent soll handeln — und externe Systeme (CRM, Kalender, Datenbank, Ticketsystem) sind uneinheitlich. Ohne Standard braucht jeder Client für jedes Tool eine Sonderintegration (N×M); MCP macht daraus N+M — das „USB-C der KI-Tools".
2Rollenmodell & AuxData-Einordnung
Die MCP-Spezifikation kennt drei Rollen: Host = Anwendung, mit der der Nutzer interagiert; Client = Protokoll-Komponente im Host, je eine Verbindung zu genau einem Server; Server = stellt Kontext und Fähigkeiten bereit.
AuxData-Einordnung (AH 7.3, wörtlich): „AuxData.ai fungiert als MCP-Client." AuxData verbindet sich also mit externen MCP-Servern, liest deren Fähigkeiten aus und macht ihre Tools in Workflows bzw. im Agent-Tool-Use nutzbar.
3Tools, Resources, Prompts
Drei Bausteine stellt ein MCP-Server bereit — am CRM-Beispiel:
- Tools
- Aktionen, die das Modell auslösen kann — z. B.
customer_lookup. - Resources
- lesbarer Kontext — z. B.
crm://schema/customer. - Prompts
- wiederverwendbare Vorlagen — z. B.
support_triage_prompt.
✓ Integrationsschritte erledigt
Transport & Auth
Wie Client und Server reden — und sich begrüßen.
1Protokollformat & Transporte
MCP nutzt JSON-RPC 2.0 als Nachrichtenformat. (MCP-Spec)
Es gibt zwei Standard-Transporte (Revision 2025-11-25): stdio (lokaler Prozess, Standard-Ein/Ausgabe) und Streamable HTTP (entfernter Server, ein HTTP-Endpoint mit POST/GET, optional SSE-Streaming). Für AuxData → externer Server ist Streamable HTTP der relevante Fall.
In Klartext: MCP-Nachrichten sind kleine JSON-Pakete nach einem festen Standard (JSON-RPC). Bei AuxData läuft das über einen normalen HTTPS-Endpoint — AuxData fragt an, der externe Server antwortet im selben Format.
2Die drei Pflichtfelder im Editor
AuxData-Editor-Felder (AH 7.3, wörtlich):
- URI
- Basis-URL, z. B.
https://mcp.example.com. - Endpoint
- HTTP-Pfad, Standard
/mcp. - Authorization
- Bearer-Token oder API-Key.

3Der initialize-Handshake
Bevor ein Tool aufgerufen wird, handeln Client und Server eine Protokollversion und ihre capabilities aus — der initialize-Handshake (MCP-Spec, Lifecycle):
→ initialize // protocolVersion: "2025-11-25", clientInfo: AuxData ← result // serverInfo + capabilities → notifications/initialized // Session steht → tools/list ← result // [customer_lookup, ticket_create]
POST an den MCP-Endpoint und akzeptiert application/json sowie text/event-stream. Nach der Initialisierung gehört die ausgehandelte Version in MCP-Protocol-Version; vergibt der Server eine Session, muss Mcp-Session-Id in Folge-Requests mit. Ob AuxData diese Header sichtbar macht oder intern setzt, gegen Instanz prüfen. (MCP-Spec 2025-11-25)Merksatz: Erst initialize → initialized, dann erst tools/list / tools/call. Keine Tool-Calls vor dem Handshake.
✓ Integrationsschritte erledigt
Tools entdecken
„Neu laden" — und das JSON-Schema je Tool lesen.
1„Neu laden" & die Listen-Methoden
„Neu laden" (AH 7.3, wörtlich) „fragt den Server nach verfügbaren Tools, Prompts und Resources ab." Auf Protokollebene löst das die Listen-Methoden tools/list, resources/list, prompts/list aus. (MCP-Spec)
Je Tool sichtbar (AH 7.3, wörtlich): Name, Beschreibung, JSON-Schema der erwarteten Argumente. Dieses inputSchema ist zentral, weil AuxData die Argumente aus Workflow-Variablen befüllt — ohne Schema weiß AuxData nicht, welche Felder das Tool erwartet.
2Ein Tool-Schema lesen
{
"name": "customer_lookup",
"description": "Findet Kundendaten anhand einer Kundennummer",
"inputSchema": {
"type": "object",
"properties": {
"customerId": { "type": "string" }
},
"required": ["customerId"]
}
}
So liest man es: type: object = das Tool erwartet ein Objekt; properties = die erlaubten Felder mit Typ; required = Pflichtfelder. AuxData mappt customerId später auf eine Workflow-Variable (z. B. die Kundennummer aus der Eingabe).
3Tool, Resource oder Prompt?
- customer_lookup
- Tool (Aktion).
- crm://schema/customer
- Resource (lesbarer Kontext).
- support_triage_prompt
- Prompt (Vorlage).
✓ Integrationsschritte erledigt
Tool-Nutzung im Workflow
Vom Schema zum echten tools/call — Rückbezug C5.
1Zwei Nutzungswege
AH 7.3 (wörtlich) nennt zwei Wege: (1) Ein konfigurierter MCP-Server ist im Workflow-Schritt-Editor unter Vorverarbeitung oder Nachverarbeitung als Tool auswählbar. (2) Alternativ nutzen LLMs mit Tool-Use-Capability die Tools autonom, wenn der Administrator dies im Agent-Editor aktiviert hat.
2Beispiel-Workflow (Supportfall)
Eingabe Kundennummer + Frage → Vorverarbeitung customer_lookup(customerId) → Ergebnis in Variable ${customer} → LLM-Schritt „Beantworte die Kundenfrage. Nutze Kundendaten: ${customer}" → optional Nachverarbeitung ticket_create(summary, priority) (nur nach Freigabe).
3tools/call: Request & Response
→ Request
{
"jsonrpc": "2.0", "id": 3,
"method": "tools/call",
"params": {
"name": "customer_lookup",
"arguments": { "customerId": "K-1842" }
}
}
← Response
{
"jsonrpc": "2.0", "id": 3,
"result": {
"content": [{ "type": "text",
"text": "{ status: Premium, offeneTickets: 1, vertrag: aktiv }" }],
"isError": false
}
}
Parameter-Mapping: Die arguments kommen aus Workflow-Variablen; das result.content wird in der Ergebnisvariable gespeichert und im Prompt referenziert.
${answer} (Vorschritt) bzw. ${result[N]} (1-basiert). Jeder MCP-/HTTP-Schritt kann sein Ergebnis als Versteckt markieren (intern weiterverarbeitet, nicht im Chat gezeigt) und optional in die Wissensdatenbank speichern (Neu / Anhängen / Überschreiben). (AH 5.9; 5)ticket_create) nur mit Human-in-the-loop / Freigabe zulassen. (MCP-Spec, Sicherheit)customer_lookup in die Vor- oder Nachverarbeitung — und warum?✓ Integrationsschritte erledigt
Eigenen MCP-Server anbinden
Felder ausfüllen, speichern, „Neu laden", Liste prüfen.
1Voraussetzung & Übersicht
Voraussetzung (AH 7.4): Organisations-Admin oder höher. MCP-Server werden auf Organisationsebene gepflegt und stehen dann allen Agenten der Organisation zur Verfügung.
Die Übersicht (AH 7.3) listet die eingetragenen Server mit Verbindungsstatus und Tool-Zahl.
2MCP-Server-Editor (Reiter Verbindung)


- Felder ausfüllen.
- Speichern.
- „Neu laden" drücken.
- Tool-/Resource-/Prompt-Liste prüfen (Name, Beschreibung, JSON-Schema).
3Demo-CRM-MCP (Schemas)
Tool customer_lookup inputSchema: { customerId: string (required) }
Tool ticket_create inputSchema: { summary: string, priority: enum[low,med,high] }
Resource crm://schema/customer Feldstruktur des CRM als lesbarer Kontext
Prompt support_triage_prompt Vorlage zur Erst-Triage eines Supportfalls
everything-Server); ein filesystem-Server nur mit isoliertem Demo-Ordner — niemals mit Home-Verzeichnis, Kundendaten oder produktiven Shares.✓ Integrationsschritte erledigt
Sicherheit
Drei AuxData-Regeln — und die Risiken aus der MCP-Spec.
1AuxData-Regeln
AH 7.3 (wörtlich) nennt drei harte Regeln:
- HTTPS + Zertifikat
- nur HTTPS-Server mit validen Zertifikaten sind zugelassen.
- URL-Whitelist
- greift ebenfalls (wie bei HTTP-Services/Funktionen, AH 7.2).
- Timeout
- jede Tool-Ausführung mit 15-Sekunden-Timeout begrenzt.
Secrets (AH 7.5): API-Keys/Tokens gehören in Umgebungsvariablen, nicht in Prompt oder Body — sie liegen verschlüsselt in der Datenbank.
2Risiken aus der MCP-Spezifikation
3Sicherheits-Checkliste
✓ Vor dem Produktivbetrieb
http:// — darfst du ihn in AuxData eintragen?✓ Integrationsschritte erledigt
Betrieb & Grenzen
Fehlerbilder lesen — und MCP richtig einordnen.
1Versions- und Transport-Grenzen
AH nennt URI/Endpoint, aber keine Protokollversion → Transport (stdio vs. Streamable HTTP), HTTP-Header und Version (2025-11-25 / 2025-06-18 / Legacy HTTP+SSE) sind implementierungsabhängig und vor Produktivbetrieb gegen Instanz + Server zu prüfen. (gegen MCP-Spec & Instanz prüfen)
2Drei Fehler-Ebenen
- Protokoll-Fehler
error-Objekt (z. B.-32602 Invalid params) → Aufruf hat das Tool nicht erreicht/akzeptiert; Schritt abbrechen und loggen.- Tool-Fehler
resultmitisError: true→ Tool lief, meldet aber fachlichen Fehler; Fallback oder Nutzerhinweis.- Timeout
- kein Ergebnis in 15 s (AuxData-Limit) → Workflow muss Abbruch/Retry definieren, nicht hängen bleiben.
← Tool-Fehler
{
"jsonrpc": "2.0", "id": 4,
"result": {
"content": [{ "type": "text", "text": "Kunde K-9999 nicht gefunden" }],
"isError": true
}
}
3MCP vs. HTTP-Service vs. Funktion
- HTTP-Service
- ein einzelner Stecker für einen bekannten REST-Endpunkt mit fester Signatur.
- Funktion
- eigener ES5.1-Code (SQL/HTTP/Mail/KnowledgeDB) — vertieft in E4.
- MCP
- ein ganzer Werkzeugkasten, den AuxData entdecken kann (Tools/Resources/Prompts standardisiert).
Merksatz: einzelner REST-Call → HTTP-Service; eigene Logik → Funktion; standardisiertes externes Tool-Ökosystem → MCP.
CRM-MCP protokolltief verstanden!
Du verstehst die CRM-MCP jetzt protokolltief — Rolle, Transport, Handshake, Tool-Discovery, Schemas, Workflow-Einsatz und Sicherheit — und kannst sie sicher anbinden. Mach das Quiz und geh dann weiter zu E4 — Funktionen & HTTP-Services mit ScriptEngine.
✓ Integrationsschritte erledigt
Sitzt MCP protokolltief?
7 Fragen aus den Stufen 1–7. Kein Zertifikat — zur Selbstkontrolle. Beliebig oft wiederholbar.