Live-Call-Funktionen
Mit Live-Call-Funktionen kann Ihr AI-Agent während eines laufenden Gesprächs auf externe Systeme zugreifen.
Die Verbindung erfolgt über einen MCP-Server. MCP steht für Model Context Protocol und ist eine standardisierte Schnittstelle, über die AI-Agenten mit externen Diensten kommunizieren können.
Wann sind Live-Call-Funktionen sinnvoll?
Live-Call-Funktionen eignen sich, wenn der AI-Agent während des Gesprächs aktuelle Daten abrufen, Eingaben prüfen oder Aktionen in externen Systemen ausführen soll.
Typische Beispiele sind:
Kundendaten abrufen
Termine prüfen oder buchen
Tickets erstellen
Eingaben validieren
Regeln berechnen, z. B. Datumsgrenzen oder Nummernformate
Berechnungen und Validierungen sollten vom MCP-Server übernommen werden, nicht vom AI-Agenten. Wenn zum Beispiel eine Kundennummer genau 13-stellig sein muss oder ein Datum nicht in der Vergangenheit liegen darf, sollte der MCP-Server diese Prüfung durchführen und ein eindeutiges Ergebnis zurückgeben.
Voraussetzung: Sie benötigen einen erreichbaren MCP-Server.
Schritt 1: MCP-Server hinterlegen

Öffnen Sie in app.sipgate.com den gewünschten AI-Agenten.
Wechseln Sie zum Tab Integrationen.
Klicken Sie im Bereich Live-Call-Funktionen auf Hinzufügen.
Füllen Sie das Formular aus:
Name (optional): Ein interner Anzeigename für den Server.
URL: Die HTTPS-Adresse Ihres MCP-Servers.
Token (optional): Ein Authentifizierungstoken, falls Ihr Server eine Absicherung erfordert.
Klicken Sie auf Speichern. sipgate verbindet sich automatisch mit dem Server und prüft die Verbindung.
Achtung: Die URL muss mit https:// beginnen. Verbindungen ohne TLS werden nicht akzeptiert.
Schritt 2: Tools des MCP-Servers prüfen
Nach erfolgreicher Verbindung zeigt sipgate die vom Server bereitgestellten Tools in der Übersicht an. Prüfen Sie dort:
Toolname: Darf maximal 28 Zeichen lang sein. Längere Namen werden in der Übersicht als Fehler markiert und können dazu führen, dass der AI-Agent das Tool nicht zuverlässig nutzt.
Tool-Beschreibungen: Die Beschreibungen werden vom MCP-Server empfangen und übernommen. Je präziser die Beschreibung, desto besser erkennt der AI-Agent, wann er das Tool einsetzen soll. Passen Sie – wenn möglich – die Tool-Beschreibung seitens des MCP-Servers an.
Parameter: Jeder Parameter sollte ebenfalls eine aussagekräftige Beschreibung haben. Die Informationen in welchem Format (string, array, etc.) dieser vom MCP Server erwartet wird und ob dieser optional oder erforderlich sind für einen erfolgreichen Austausch zwischen Agent und MCP-Server entscheidend.
Tipp: Die Beschreibung ist der wichtigste Teil eines Tools – sie ist das einzige, woraus der Agent ableitet, wann und wie er das Tool einsetzt.
Eine gute Beschreibung:
nennt klar den Zweck des Tools
erklärt ggf. Einschränkungen (z.B. maximal 3 Ergebnisse, nur Werktage)
vermeidet technisches Implementierungs-Wissen (was im Hintergrund passiert, ist für den Agenten irrelevant)
Eine schlechte Beschreibung ist zu allgemein oder fehlt ganz. Der Agent wird das Tool dann falsch oder gar nicht einsetzen.
Schritt 3: MCP-Server in Ihr Playbook integrieren

Der AI-Agent arbeitet zielorientiert. Beschreiben Sie im Playbook, was er erreichen soll – nicht, wie er Schritt für Schritt vorgehen soll.
Gut: „Ermittle die Kundennummer des Anrufers anhand seiner Telefonnummer get_customer und begrüße ihn mit seinem Namen get_name."
Weniger gut: „1. Ruf das Tool get_customer auf. 2. Speichere die ID. 3. Ruf dann get_name auf …"
Der AI-Agent entscheidet selbst, welche Tools er in welcher Reihenfolge nutzt, um das Ziel zu erreichen.
Achtung: Geschäftslogik, Validierung und State-Management gehören nicht in das Playbook – das ist Aufgabe des MCP-Servers. Das Playbook beschreibt Ziele, der MCP-Server stellt die Werkzeuge bereit.
Tipp: Pro Aufgabe möglichst ein Tool
Wenn Sie MCP-Tools in einzelnen Playbook-Aufgaben referenzieren, empfiehlt sich folgende Faustregel: pro Aufgabe möglichst nur ein Tool. Das verbessert die Zuverlässigkeit im laufenden Gespräch, da jeder Schritt genau einem Zweck entspricht und der Agent keine parallelen Tool-Aufrufe innerhalb einer Aufgabe koordinieren muss.
Beispiel: Playbook-Struktur für eine Terminbuchung
Bedingung für das Playbook: Wenn der Nutzer einen Termin buchen möchte oder nach freien Terminen fragt.
1
Tageszeit erfragen
Frage den Nutzer, zu welchem Tagesabschnitt er den Termin bevorzugt. Die vier Optionen sind: vormittag, mittag, nachmittag oder abend. Merke dir die Antwort als preferred_timeslot für alle weiteren Tool-Aufrufe.
✅
2
Terminvorschläge holen
Rufe get_next_suggestions mit der gemerkten preferred_timeslot auf. Präsentiere dem Nutzer die zurückgegebenen Terminvorschläge mit Datum und Uhrzeit.
❌
3
Slot bestätigen oder Alternative
Frage den Nutzer: Passt einer der Vorschläge? Möchte er einen speziellen Tag nennen? Oder passt keiner der Vorschläge? • Slot gewählt → merke Termin, weiter zu Task 5 (Vorname erfassen) • Spezieller Tag → weiter zu Task 4 (Tag erfragen & Tagesvorschläge) '• Keiner passt → zurück zu Task 2 (Terminvorschläge holen)
✅
4
Tag erfragen & Tagesvorschläge
Frage nach dem gewünschten Datum. Rufe get_suggestions_for_day auf und präsentiere die Vorschläge. Kehre zur Logik von Task 3 zurück.
Fehlerbehandlung:
• invalid date format → Erkläre dem Nutzer, dass das Datum nicht erkannt wurde, und frage erneut nach einem gültigen Datum (Format: TT.MM.JJJJ)
• Datum zu weit in der Zukunft → Informiere den Nutzer, dass maximal 2 Monate im Voraus gebucht werden kann, und frage nach einem näheren Datum
• Sonstiger Fehler → Erkläre das Problem und kehre zu Task 3 (Slot bestätigen oder Alternative) zurück, damit der Nutzer einen anderen Tag wählen oder neue Vorschläge anfordern kann
❌
5
Vorname erfassen
FALLS der Vorname noch nicht bekannt ist: Frage gezielt danach. FALLS bereits bekannt: überspringe diesen Task.
✅
6
Nachname erfassen
FALLS der Nachname noch nicht bekannt ist: Frage gezielt danach. FALLS bereits bekannt: überspringe diesen Task.
✅
7
Telefonnummer erfassen
Die Rufnummer des Anrufers steht im Kontext unter „Nutzer mit der Rufnummer: …" — diese direkt verwenden, NICHT danach fragen. Nur falls dieser Eintrag fehlt oder der Anrufer anonym ist: Frage gezielt nach der Telefonnummer.
✅
8
Kontaktdaten bestätigen
Lies Vorname, Nachname und Telefonnummer noch einmal vor und bitte um Bestätigung. Falls der Nutzer eine Korrektur vornimmt: Übernimm die Korrektur und lies die Daten erneut vor.
❌
9
Termin buchen
Rufe book_appointment auf mit den Termin-Daten (start, end) und den Kontaktdaten (firstname, lastname, phone). FALLS Buchung erfolgreich (success: true): Bestätige die Buchung mit Datum und Uhrzeit und fahre mit Task 10 (Bedanken & verabschieden) fort.
Fehlerbehandlung:
• Slot vergeben (409 / „no longer available") → Informiere den Nutzer, dass der Slot inzwischen vergeben ist, und kehre zu Task 2 (Terminvorschläge holen) zurück
• Sonstiger Fehler → Erkläre dem Nutzer kurz, dass etwas schiefgelaufen ist, und frage ob er einen anderen Termin wählen möchte (zurück zu Task 3 – Slot bestätigen oder Alternative) oder ob er es später nochmals versuchen möchte
✅
10
Bedanken & verabschieden
Bedanke dich beim Nutzer für das Gespräch und wünsche ihm einen schönen Tag. Keine weiteren Angebote machen.
❌
Verbindung aktualisieren
Wenn Sie Ihren MCP-Server aktualisiert haben, zum Beispiel neue Tools hinzugefügt haben, öffnen Sie die Live-Call-Funktionen-Übersicht des Agents unter Integrationen. Klicken Sie dort auf Aktualisieren. Die aktuelle Toolliste wird dann neu abgerufen.
Live-Call-Funktionen testen
Es empfehlen sich manuelle Testanrufe, bei denen das Playbook aktiv genutzt wird.
Prüfen Sie dabei:
Triggert der Agent die richtigen Tools?
Werden die Parameter korrekt befüllt?
Fragt der Agent fehlende Parameter zuverlässig ab?
Werden Eingaben vom MCP-Server validiert?
Gibt der Agent bei ungültigen Daten sinnvolles Feedback?
Reagiert der Agent sinnvoll auf Fehlermeldungen des Servers?
Sicherheitshinweise
Beachten Sie bei der Einrichtung Ihres MCP-Servers die folgenden allgemeinen technischen Empfehlungen. Welche Schutzmaßnahmen angemessen sind, hängt vom jeweiligen Anwendungsfall, den verarbeiteten Daten und den angebundenen Systemen ab.
Zugriff auf den MCP-Server: Legen Sie fest, wer mit Ihrem MCP-Server kommunizieren darf. Öffentliche Tool Calls sollten nur für unkritische Funktionen genutzt werden, zum Beispiel einfache Prüfungen oder Vorgänge, die einem öffentlichen Online-Formular entsprechen. Sobald personenbezogene oder sensible Daten zurückgegeben oder Aktionen mit Auswirkungen auf ein System ausgeführt werden, sollte der Zugriff zusätzlich geschützt werden, zum Beispiel durch Authentifizierung, Sicherheitstoken oder andere geeignete Zugriffskontrollen.
Zugriffsrechte des MCP-Servers: Vergeben Sie nur die Berechtigungen, die der MCP-Server für den jeweiligen Zweck benötigt. Wenn der MCP-Server zum Beispiel Daten in ein Drittsystem schreiben soll, sollte er nicht automatisch vollständigen Lese- und Schreibzugriff auf alle Daten dieses Systems erhalten. Prüfen Sie regelmäßig, ob die vergebenen Berechtigungen weiterhin erforderlich sind.
Identitätsprüfung: Gehen Sie grundsätzlich davon aus, dass ein Anrufer zunächst nicht zuverlässig identifiziert ist. Bevor sensible Daten zurückgegeben oder Aktionen ausgeführt werden, sollte der MCP-Server prüfen, ob der Anrufer dazu berechtigt ist. Je nach Anwendungsfall können zusätzliche Prüfmerkmale wie eine Paketnummer, ein Codewort, ein Einmalcode oder ein Passwort verwendet werden. Die übermittelte Rufnummer allein sollte nicht als zuverlässige Identitätsprüfung verwendet werden.
Eingabevalidierung: Validieren Sie alle Eingaben serverseitig. Verlassen Sie sich nicht darauf, dass ein AI-Agent Werte immer korrekt erkennt oder prüft. Formale Prüfungen, zum Beispiel Längen, Zahlenformate, Pflichtfelder oder Prüfziffern, sollten vom MCP-Server übernommen werden.
Datenweitergabe und Datensparsamkeit
Geben Sie nur Daten zurück, die für den aktuellen Vorgang erforderlich sind. Der MCP-Server sollte so gestaltet sein, dass keine Informationen an unberechtigte Anrufer ausgegeben werden. Prüfen Sie insbesondere bei personenbezogenen oder vertraulichen Daten, ob die Ausgabe für den jeweiligen Zweck notwendig ist.
Zuletzt aktualisiert

