Zum Inhalt

Daktela MCP Server

Der Daktela MCP Server verbindet KI-Assistenten (Claude Code, Claude Desktop, Cursor und andere) über das Model Context Protocol (MCP) mit Ihrem Daktela Contact Centre. Er bietet Zugriff auf Ihre Contact-Centre-Daten und ermöglicht Aufgaben wie Qualitätsaudits von E-Mails, Überprüfungen der Verkaufspipeline und Anrufanalysen — ganz ohne Programmierung.

Info

Standardmäßig bietet der MCP Server schreibgeschützten Zugriff auf Ihre Daktela-Daten. Schreibzugriff kann für bestimmte Rollen aktiviert werden, aber nur der Daktela-Support kann ihn für Ihre Instanz einschalten — siehe Schreibzugriff unten.

Es gibt zwei Möglichkeiten, den Daktela MCP Server zu nutzen:

  • Gehostet (integriert) — der MCP Server läuft als Teil Ihrer Daktela-Instanz. Keine Installation erforderlich.
  • Selbst gehostet — betreiben Sie den Open-Source-PHP-Server selbst fĂĽr individuelle Deployments oder Cloud-Setups.

Was ist MCP?

Das Model Context Protocol ist ein offener Standard, der es KI-Anwendungen ermöglicht, sich mit externen Datenquellen und Werkzeugen zu verbinden. Durch die Verbindung mit dem Daktela MCP Server erhält Ihr KI-Assistent strukturierten Zugriff auf Ihre Daktela-Instanz — und ermöglicht so Analyse- und Berichtsaufgaben ohne individuellen Code.


Schreibzugriff

Standardmäßig stellt der MCP Server nur schreibgeschützte Werkzeuge bereit — er kann keine Datensätze erstellen oder aktualisieren. Schreibgeschützte Vorgänge sind immer verfügbar und werden vom Schreibzugriff nie beeinträchtigt.

Info

Schreibzugriff ist kein Self-Service. Um ihn zu aktivieren, wenden Sie sich an den Daktela-Support und bitten Sie darum, ihn fĂĽr Ihre Instanz einzuschalten.

Sobald der Daktela-Support den Schreibzugriff aktiviert hat, muss Ihr Daktela-Administrator noch die Berechtigung MCP Write Access für die betreffende(n) Rolle(n) unter Verwalten → Benutzer → Zugriffe erteilen — siehe Zugriffe. Für jede Rolle standardmäßig deaktiviert — bis sie erteilt wird, werden Schreibvorgänge mit einem Fehler wegen unzureichender Berechtigungen abgelehnt.

Dies gilt fĂĽr alle MCP-Clients (Claude, Cursor und alle anderen).


Gehostet (integriert)

Der gehostete MCP Server ist in Ihre Daktela-Instanz integriert. Es werden weder PHP, Docker noch Composer benötigt. Es stehen zwei Authentifizierungsmethoden zur Verfügung:

  • OAuth-Anmeldung (empfohlen) — melden Sie sich ĂĽber einen gefĂĽhrten Browser-Bildschirm an. Kein Token muss generiert oder kopiert werden.
  • Zugriffstoken (manuell) — generieren Sie einen persönlichen Token und fĂĽgen Sie ihn in die Konfiguration Ihres Clients ein. NĂĽtzlich fĂĽr Clients, die keine OAuth-basierten Verbindungen unterstĂĽtzen, oder fĂĽr Headless-/Skript-Setups.

Tip

Bevor Sie Ihren KI-Client einrichten, öffnen Sie in Daktela Einstellungen → System → Integrationen → Daktela MCP Server → Einrichtungsanleitung. Dort werden die genaue Server-URL und Konfigurationsausschnitte für Ihre Instanz angezeigt — eine schnelle Referenz für beide unten beschriebenen Authentifizierungsmethoden.

OAuth-Anmeldung (empfohlen)

Wenn Ihr KI-Client die Verbindung zu entfernten MCP-Servern über OAuth unterstützt — zum Beispiel, indem Sie Daktela als „Remote-MCP-Connector" hinzufügen und einfach dessen Server-URL eingeben — ist dies der schnellste Weg zur Verbindung.

  1. FĂĽgen Sie in Ihrem KI-Client den Daktela MCP Server ĂĽber seine URL hinzu: https://YOUR_DOMAIN/mcp-server/mcp.
  2. Der Client erkennt, dass eine Authentifizierung erforderlich ist, und öffnet einen Daktela-Anmelde-/Genehmigungsbildschirm in Ihrem Browser.
  3. Wenn Sie bereits bei Daktela angemeldet sind, klicken Sie auf Genehmigen, um Zugriff zu gewähren. Andernfalls melden Sie sich zuerst mit Ihren üblichen Daktela-Anmeldedaten an und genehmigen dann.
  4. Nach der Genehmigung ist Ihr KI-Client automatisch verbunden — Sie sehen oder verwenden nie einen rohen Zugriffstoken.

Info

Im Hintergrund verwendet dies den standardmäßigen OAuth-2.0-+-PKCE-Autorisierungsablauf, der in der MCP-Spezifikation definiert ist, einschließlich dynamischer Client-Registrierung und Token-Austausch. Der resultierende Zugriffstoken ist auf Ihren Daktela-Benutzer beschränkt und 60 Minuten lang gültig.

Tip

Noch nicht jeder MCP-Client unterstĂĽtzt OAuth-basierte Remote-Verbindungen. Falls Ihrer dies nicht tut, verwenden Sie stattdessen die unten beschriebene Methode Zugriffstoken.

Zugriffstoken (manuell)

Wenn Ihr KI-Client keine OAuth-basierten Remote-Verbindungen unterstützt oder Sie eine Headless-/Skript-Integration einrichten, generieren Sie stattdessen einen persönlichen Zugriffstoken.

Schritt 1 — Zugriffstoken abrufen

Sie benötigen einen persönlichen API-Zugriffstoken aus Ihrem Daktela-Benutzerprofil. Gehen Sie zu Ihrem Benutzerprofil → Access Tokens und generieren Sie einen neuen Token.

Tip

Erstellen Sie einen eigenen Token für Ihren KI-Assistenten, damit Sie ihn bei Bedarf unabhängig widerrufen können.

Schritt 2 — KI-Client konfigurieren

FĂĽgen Sie die untenstehende Konfiguration zu Ihrem KI-Client hinzu. Ersetzen Sie YOUR_DOMAIN durch Ihren Daktela-Hostnamen (z. B. yourcompany.daktela.com) und YOUR_ACCESS_TOKEN durch den Token aus Schritt 1.

Claude Code

FĂĽgen Sie dies zu Ihrer Projektdatei .mcp.json hinzu:

{
  "mcpServers": {
    "daktela": {
      "type": "http",
      "url": "https://YOUR_DOMAIN/mcp-server/mcp",
      "headers": {
        "X-Daktela-Access-Token": "YOUR_ACCESS_TOKEN"
      }
    }
  }
}

Alternativ können Sie die Konfiguration global in Ihrer Claude-Code-Einstellungsdatei vornehmen (macOS / Linux: ~/.claude/settings.json; Windows: %USERPROFILE%\.claude\settings.json, was sich zu C:\Users\<you>\.claude\settings.json auflöst):

{
  "mcpServers": {
    "daktela": {
      "type": "http",
      "url": "https://YOUR_DOMAIN/mcp-server/mcp",
      "headers": {
        "X-Daktela-Access-Token": "YOUR_ACCESS_TOKEN"
      }
    }
  }
}

Claude Desktop

Fügen Sie Folgendes zu Ihrer Claude-Desktop-Konfigurationsdatei hinzu. Der Speicherort der Datei hängt von Ihrem Betriebssystem ab:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json (löst sich zu C:\Users\<you>\AppData\Roaming\Claude\claude_desktop_config.json auf)
{
  "mcpServers": {
    "daktela": {
      "type": "http",
      "url": "https://YOUR_DOMAIN/mcp-server/mcp",
      "headers": {
        "X-Daktela-Access-Token": "YOUR_ACCESS_TOKEN"
      }
    }
  }
}

Tip

Unter Windows ist der Ordner AppData im Datei-Explorer standardmäßig ausgeblendet. Um den Claude-Ordner schnell zu öffnen, drücken Sie Win+R, fügen Sie %APPDATA%\Claude ein und drücken Sie die Eingabetaste. Alternativ aktivieren Sie Ausgeblendete Elemente unter Ansicht → Einblenden im Datei-Explorer.

Andere MCP-Clients

Jeder Client, der den MCP-HTTP-Transport unterstĂĽtzt, kann sich mit Folgendem verbinden:

  • URL: https://YOUR_DOMAIN/mcp-server/mcp
  • Authentifizierung: HTTP-Header X-Daktela-Access-Token: YOUR_ACCESS_TOKEN

Selbst gehostet (fortgeschritten)

Für individuelle oder Cloud-Deployments können Sie den MCP Server mithilfe des Open-Source-PHP-Pakets selbst betreiben.

Anforderungen

  • PHP 8.2 oder höher
  • Composer (PHP-Paketmanager)
  • Eine Daktela-Instanz mit API-Lesezugriff
  • Ein API-Zugriffstoken aus Ihrem Daktela-Konto

Installation

  1. Klonen Sie das Repository:

    git clone https://github.com/Daktela/daktela-v6-php-mcp-server.git
    cd daktela-v6-php-mcp-server
    
  2. Installieren Sie die Abhängigkeiten:

    composer install
    

Konfiguration

Der Server wird ĂĽber Umgebungsvariablen konfiguriert. Erstellen Sie eine .env-Datei auf Basis des bereitgestellten Beispiels oder ĂĽbergeben Sie die Variablen direkt beim Start des Servers.

Variable Erforderlich Standard Beschreibung
DAKTELA_URL Ja — Die URL Ihrer Daktela-Instanz, z. B. https://your-instance.daktela.com
DAKTELA_ACCESS_TOKEN Ja — API-Zugriffstoken aus Ihrem Daktela-Konto
CACHE_ENABLED Nein true Caching von Referenzdaten aktivieren (Warteschlangen, Benutzer, Status usw.)
CACHE_TTL_SECONDS Nein 3600 Cache-Dauer in Sekunden

Tip

Sie können in Ihrer Daktela-Instanz unter Verwalten → Benutzer → Benutzer bearbeiten → Access Tokens einen API-Zugriffstoken generieren.

Deployment-Optionen

Der selbst gehostete Server unterstĂĽtzt zwei Transportmodi: stdio (fĂĽr lokale KI-Desktop-Apps) und HTTP (fĂĽr Remote-/Cloud-Deployments).

Claude Desktop — Docker

Dies ist der empfohlene Ansatz fĂĽr den Selbstbetrieb. Erstellen Sie das Docker-Image und konfigurieren Sie Claude Desktop so, dass es verwendet wird.

  1. Erstellen Sie das Image:

    docker build -f Dockerfile.prod -t daktela-v6-php-mcp-server .
    
  2. FĂĽgen Sie Folgendes zu Ihrer claude_desktop_config.json hinzu:

    {
      "mcpServers": {
        "daktela": {
          "command": "docker",
          "args": [
            "run", "-i", "--rm",
            "-e", "DAKTELA_URL=https://your-instance.daktela.com",
            "-e", "DAKTELA_ACCESS_TOKEN=your-api-token",
            "daktela-v6-php-mcp-server"
          ]
        }
      }
    }
    

Claude Desktop — direktes PHP

Wenn Sie PHP lieber direkt ohne Docker ausführen möchten:

{
  "mcpServers": {
    "daktela": {
      "command": "php",
      "args": ["/path/to/daktela-v6-php-mcp-server/bin/server.php"],
      "env": {
        "DAKTELA_URL": "https://your-instance.daktela.com",
        "DAKTELA_ACCESS_TOKEN": "your-api-token"
      }
    }
  }
}

Docker — eigenständig

Betreiben Sie den Server als eigenständigen Docker-Container:

docker run -i --rm \
  -e DAKTELA_URL=https://your-instance.daktela.com \
  -e DAKTELA_ACCESS_TOKEN=your-api-token \
  daktela-v6-php-mcp-server

HTTP-Servermodus (Cloud-Deployment)

Für Remote-Deployments wie Google Cloud Run läuft der Server im HTTP-Modus, in dem Clients ihre Anmeldedaten über Header übergeben:

docker run --rm -p 8080:8080 \
  -e DAKTELA_URL=https://your-instance.daktela.com \
  -e DAKTELA_ACCESS_TOKEN=your-api-token \
  daktela-v6-php-mcp-server php bin/http-server.php

Beispiel fĂĽr ein Cloud-Deployment mit Google Cloud Run:

gcloud run deploy daktela-v6-php-mcp-server \
  --source . \
  --dockerfile Dockerfile.prod \
  --region europe-west1 \
  --allow-unauthenticated \
  --memory 1Gi

Warning

Wenn Sie mit --allow-unauthenticated in die Cloud deployen, stellen Sie sicher, dass Sie geeignete Zugriffskontrollen implementieren, um Ihre Daktela-Daten zu schĂĽtzen.


VerfĂĽgbare Werkzeuge

Der MCP Server stellt 81 Werkzeuge bereit, die in die folgenden Kategorien unterteilt sind: 43 schreibgeschützte und 38 schreibende. Als „Write" gekennzeichnete Werkzeuge funktionieren erst, wenn der Schreibzugriff aktiviert ist — sowohl die globale Einstellung als auch die rollenspezifische Berechtigung müssen aktiviert sein. Alle Listenwerkzeuge unterstützen Paginierung, Sortierung und kontextbezogene Filterung.

Info

Es gibt keine Lösch-Werkzeuge — der MCP Server kann keine Datensätze entfernen, auch nicht mit aktiviertem Schreibzugriff.

Tickets

Werkzeug Zugriff Beschreibung
count_tickets Read Tickets zählen, die den Filterkriterien entsprechen
get_ticket Read Ein bestimmtes Ticket anhand der ID abrufen
get_ticket_detail Read Detaillierte Ticketinformationen abrufen
list_account_tickets Read Tickets fĂĽr ein bestimmtes Konto auflisten
list_ticket_categories Read VerfĂĽgbare Ticketkategorien auflisten
list_tickets Read Tickets mit Filterung und Paginierung auflisten
create_ticket Write Ein neues Ticket erstellen
update_ticket Write Ein bestehendes Ticket aktualisieren
create_ticket_category Write Eine neue Ticketkategorie erstellen
update_ticket_category Write Eine bestehende Ticketkategorie aktualisieren

Aktivitäten

Werkzeug Zugriff Beschreibung
count_activities Read Aktivitäten zählen, die den Filterkriterien entsprechen
get_activity Read Eine bestimmte Aktivität anhand der ID abrufen
list_activities Read Aktivitäten mit Filterung und Paginierung auflisten
create_activity Write Eine neue Aktivität erstellen
update_activity Write Eine bestehende Aktivität aktualisieren

Anrufe

Werkzeug Zugriff Beschreibung
count_calls Read Anrufe zählen, die den Filterkriterien entsprechen
get_call Read Einen bestimmten Anruf anhand der ID abrufen
get_call_transcript Read Das Transkript eines bestimmten Anrufs abrufen
list_call_transcripts Read VerfĂĽgbare Anruftranskripte auflisten
list_calls Read Anrufe mit Filterung und Paginierung auflisten
create_call Write Einen neuen Anrufdatensatz erstellen
update_call Write Einen bestehenden Anrufdatensatz aktualisieren

E-Mails

Werkzeug Zugriff Beschreibung
count_emails Read E-Mails zählen, die den Filterkriterien entsprechen
get_email Read Eine bestimmte E-Mail anhand der ID abrufen
list_emails Read E-Mails mit Filterung und Paginierung auflisten
create_email Write Eine neue E-Mail erstellen
update_email Write Eine bestehende E-Mail aktualisieren

Messaging

Umfasst Webchat, SMS, Facebook Messenger, Instagram, WhatsApp und Viber.

Werkzeug Zugriff Beschreibung
count_chats Read Chatnachrichten zählen, die den Filterkriterien entsprechen
get_chat Read Eine bestimmte Chatnachricht anhand der ID abrufen
list_chats Read Chatnachrichten mit Filterung und Paginierung auflisten
create_message Write Eine neue Chat-/Messaging-Nachricht erstellen
update_message Write Eine bestehende Chat-/Messaging-Nachricht aktualisieren

Kontakte und CRM

Werkzeug Zugriff Beschreibung
count_accounts Read Konten zählen, die den Filterkriterien entsprechen
count_contacts Read Kontakte zählen, die den Filterkriterien entsprechen
count_crm_records Read CRM-Datensätze zählen, die den Filterkriterien entsprechen
get_account Read Ein bestimmtes Konto anhand der ID abrufen
get_contact Read Einen bestimmten Kontakt anhand der ID abrufen
get_crm_record Read Einen bestimmten CRM-Datensatz anhand der ID abrufen
list_accounts Read Konten mit Filterung und Paginierung auflisten
list_contacts Read Kontakte mit Filterung und Paginierung auflisten
list_crm_records Read CRM-Datensätze mit Filterung und Paginierung auflisten
create_account Write Ein neues Konto erstellen
update_account Write Ein bestehendes Konto aktualisieren
create_contact Write Einen neuen Kontakt erstellen
update_contact Write Einen bestehenden Kontakt aktualisieren
create_crm_record Write Einen neuen CRM-Datensatz erstellen
update_crm_record Write Einen bestehenden CRM-Datensatz aktualisieren

Kampagnen

Werkzeug Zugriff Beschreibung
count_campaign_records Read Kampagnendatensätze zählen, die den Filterkriterien entsprechen
get_campaign_record Read Einen bestimmten Kampagnendatensatz anhand der ID abrufen
list_campaign_records Read Kampagnendatensätze mit Filterung und Paginierung auflisten
list_campaign_types Read VerfĂĽgbare Kampagnentypen auflisten
create_campaign_record Write Einen neuen Kampagnendatensatz erstellen
update_campaign_record Write Einen bestehenden Kampagnendatensatz aktualisieren
create_campaign_type Write Einen neuen Kampagnentyp erstellen
update_campaign_type Write Einen bestehenden Kampagnentyp aktualisieren

Referenzdaten

Werkzeug Zugriff Beschreibung
list_groups Read Agentengruppen auflisten
list_pauses Read VerfĂĽgbare Pausentypen auflisten
list_queues Read Warteschlangen auflisten
list_statuses Read Ticket-/Aktivitätsstatus auflisten
list_templates Read Nachrichtenvorlagen auflisten
list_users Read Benutzer auflisten
create_group Write Eine neue Agentengruppe erstellen
update_group Write Eine bestehende Agentengruppe aktualisieren
create_pause Write Einen neuen Pausentyp erstellen
update_pause Write Einen bestehenden Pausentyp aktualisieren
create_queue Write Eine neue Warteschlange erstellen
update_queue Write Eine bestehende Warteschlange aktualisieren
create_status Write Einen neuen Ticket-/Aktivitätsstatus erstellen
update_status Write Einen bestehenden Ticket-/Aktivitätsstatus aktualisieren
create_template Write Eine neue Nachrichtenvorlage erstellen
update_template Write Eine bestehende Nachrichtenvorlage aktualisieren
create_user Write Einen neuen Benutzer erstellen
update_user Write Einen bestehenden Benutzer aktualisieren

Echtzeit

Werkzeug Zugriff Beschreibung
list_realtime_sessions Read Aktuelle Echtzeit-Agentensitzungen auflisten

Wissensbasis

Werkzeug Zugriff Beschreibung
list_article_folders Read Ordner der Wissensbasis auflisten
list_articles Read Artikel der Wissensbasis auflisten
get_article Read Einen bestimmten Artikel der Wissensbasis abrufen
create_article Write Einen neuen Artikel in der Wissensbasis erstellen
update_article Write Einen bestehenden Artikel der Wissensbasis aktualisieren
create_article_folder Write Einen neuen Ordner in der Wissensbasis erstellen
update_article_folder Write Einen bestehenden Ordner der Wissensbasis aktualisieren

Integrierte Prompts

Der Server enthält vier vorgefertigte Prompt-Vorlagen für gängige Analyse-Workflows. Diese Prompts sind direkt in Ihrem KI-Client verfügbar, wenn der MCP Server verbunden ist.

Prompt Beschreibung
email_quality_audit Aktuelle E-Mails auf negative Stimmung, unprofessionellen Ton und verlorene Geschäfte prüfen
sales_pipeline_review Den Zustand der Deals überprüfen und gefährdete Opportunities identifizieren
call_quality_review Anrufe auf Eskalationen, Wissenslücken und Qualitätsprobleme analysieren
daily_call_analysis Tägliche Anrufüberprüfung auf Abwanderungsrisiko und wiederkehrende Probleme

Anwendungsbeispiele

Sobald der MCP Server mit Ihrem KI-Client verbunden ist, können Sie Fragen stellen wie:

  • „Zeige mir alle offenen Tickets der letzten 7 Tage und fasse häufige Probleme zusammen."
  • „PrĂĽfe die letzten 50 E-Mails auf negative Stimmung und unprofessionellen Ton."
  • „Liste alle heutigen verpassten Anrufe auf und identifiziere Muster."
  • „ÜberprĂĽfe die Verkaufspipeline und markiere Deals, die seit mehr als 2 Wochen stagnieren."
  • „Analysiere die Anruftranskripte dieser Woche und hebe etwaige Eskalationen hervor."

Der KI-Assistent verwendet die passenden MCP-Werkzeuge, um Daten aus Ihrer Daktela-Instanz abzurufen und eine strukturierte Analyse bereitzustellen.


Best Practices

  • Token-Sicherheit: Geben Sie Ihren API-Zugriffstoken niemals öffentlich weiter. Verwenden Sie Umgebungsvariablen oder Secret-Management-Dienste, um Anmeldedaten zu speichern.
  • Caching: Lassen Sie das Caching aktiviert (Standard), um API-Aufrufe fĂĽr Referenzdaten wie Warteschlangen, Benutzer und Status zu reduzieren.
  • Zugriffskontrolle: Erstellen Sie fĂĽr den MCP Server einen dedizierten API-Benutzer mit minimalen, schreibgeschĂĽtzten Berechtigungen, anstatt einen Admin-Token zu verwenden.
  • Cloud-Deployments: Implementieren Sie immer eine Authentifizierung, wenn Sie den HTTP-Server-Endpunkt öffentlich zugänglich machen.

Support

Wenn Sie auf Fehler stoĂźen oder FunktionswĂĽnsche haben, verwenden Sie bitte den Bereich Issues im GitHub-Repository.