MCP-Server
Der MCP-Server von DragApp bietet 47 Tools in 12 Kategorien, die jedem MCP-kompatiblen KI-Client vollen Zugriff auf Ihre Boards, E-Mails, Karten, Kontakte, Wissensdatenbank, Auswertungen und Automatisierungen geben.
Zwei Wege zur Verbindung: Fügen Sie die URL des gehosteten Endpunkts in die Connector-Einstellungen Ihres KI-Clients ein (der schnellste Weg, ohne Installation), oder führen Sie den Open-Source-Server lokal über eine Konfigurationsdatei aus. Dieselben Tools, dieselben Berechtigungen, so oder so.
Basiert auf dem Model Context Protocol (MCP). Open Source, MIT-Lizenz.
Verbinden (gehosteter Endpunkt)
Am schnellsten verbinden Sie sich über den gehosteten Endpunkt. Drei Schritte, etwa zwei Minuten. Keine Konfigurationsdatei, keine lokale Installation, kein Neustart.
- Fügen Sie den Connector hinzu. Fügen Sie in den Connector-Einstellungen Ihres KI-Clients (in Claude: Einstellungen › Connectors › Benutzerdefinierten Connector hinzufügen) diese URL ein und speichern Sie:Connector-URL
https://app.dragapp.com/mcp - Klicken Sie auf Connect. In Ihrem Browser öffnet sich eine Verbindungsseite von Drag und fragt nach Ihrem DragApp-API-Schlüssel.
- Geben Sie Ihren API-Schlüssel ein. Kopieren Sie ihn in DragApp unter Einstellungen › Integrationen, fügen Sie ihn auf der Verbindungsseite ein und senden Sie ab. Drag prüft den Schlüssel und übergibt ihn Ihrem Client als Zugriffstoken. Die Verbindung ist aktiv.
Zur Überprüfung bitten Sie Ihren Client: „Liste die Boards in meinem DragApp auf.“ Beim ersten Einsatz jedes Tools fragt er Sie um Erlaubnis, sodass Sie genau steuern, was er tun darf.
Der Schlüssel wird nur einmal eingegeben, und zwar ausschließlich auf der Verbindungsseite. Er erscheint nie in einer Webadresse, und der MCP-Dienst speichert nichts auf seinen eigenen Servern.
Technisch ist das ein standardmäßiger OAuth-2.1-Authorization-Code-Flow mit PKCE und dynamischer Client-Registrierung, bereitgestellt über den Streamable-HTTP-Transport von MCP, sodass sich jeder Client verbinden kann, der Remote-MCP-Connectors unterstützt.
Installation (lokaler Weg)
Sie möchten den Server lieber selbst betreiben oder nutzen einen Client mit Konfigurationsdatei wie Cursor, Windsurf oder Claude Code? Das npm-Paket wird weiterhin vollständig unterstützt. Direkt mit npx ausführen, ohne Installation:
npx -y @dragapp/mcp-serverOder global installieren:
npm install -g @dragapp/mcp-serverAuthentifizierung
Beide Wege authentifizieren sich mit Ihrem DragApp-API-Schlüssel, und die Verbindung übernimmt in jedem Fall Ihre bestehenden Drag-Berechtigungen. Beim gehosteten Endpunkt geben Sie den Schlüssel einmal auf der sicheren Verbindungsseite ein, und er wird zum Zugriffstoken Ihres Clients; der MCP-Dienst speichert nichts. Beim lokalen Weg liest der Server den Schlüssel aus der Umgebungsvariable DRAG_API_KEY.
Ihren API-Schlüssel erhalten Sie unter Einstellungen und dann Integrationen in Drag. Dort können Sie ihn jederzeit widerrufen.
Ihr API-Schlüssel gewährt vollen Zugriff auf Ihren DragApp-Arbeitsbereich. Halten Sie ihn geheim und committen Sie ihn niemals in die Versionsverwaltung.
Client-Einrichtung
Fügen Sie das folgende JSON in die MCP-Konfigurationsdatei Ihres KI-Clients ein:
{
"mcpServers": {
"dragapp": {
"command": "npx",
"args": ["-y", "@dragapp/mcp-server"],
"env": {
"DRAG_API_KEY": "your-api-key"
}
}
}
}Speicherorte der Konfigurationsdatei
| Client | Konfigurationspfad |
|---|---|
| Claude Desktop | ~/Library/Application Support/Claude/claude_desktop_config.json |
| Cursor | .cursor/mcp.json |
| Windsurf | ~/.codeium/windsurf/mcp_config.json |
| Claude Code | ~/.claude.json oder .mcp.json |
Tool-Referenz
47 Tools in 12 Kategorien. Jedes Tool steht automatisch jedem verbundenen MCP-Client zur Verfügung.
| Tool | Beschreibung |
|---|---|
list_threads | Listet E-Mail-Threads in einer bestimmten Spalte eines Boards auf |
get_thread | Ruft eine einzelne E-Mail-Nachricht mit vollständigem HTML-Inhalt ab |
reply_to_thread | Antwortet auf einen bestehenden E-Mail-Thread |
send_new_email | Sendet eine neue E-Mail aus einem Board |
search_threads | Sucht Threads in allen Boards |
filter_threads | Filtert Threads nach Label, Zuständigen oder Status |
move_thread | Verschiebt einen Thread in eine andere Spalte |
move_threads_bulk | Verschiebt mehrere Threads auf einmal |
Boards
5| Tool | Beschreibung |
|---|---|
list_boards | Listet alle Boards auf, auf die der authentifizierte Nutzer Zugriff hat |
get_board | Ruft die Details eines bestimmten Boards ab |
list_columns | Listet alle Spalten eines Boards auf |
list_board_members | Listet alle Mitglieder eines Boards auf |
list_teams | Listet alle Teams im Arbeitsbereich auf |
Karten
6| Tool | Beschreibung |
|---|---|
list_cards_in_column | Listet alle Karten einer bestimmten Spalte auf |
get_card | Ruft die Details einer bestimmten Karte ab |
create_card | Erstellt eine neue Karte in einer Spalte |
update_card | Aktualisiert Karteneigenschaften (Titel, Beschreibung, Zuständige(r), Fälligkeitsdatum) |
move_card | Verschiebt eine Karte in eine andere Spalte oder Position |
archive_card | Archiviert eine Karte |
Labels
4| Tool | Beschreibung |
|---|---|
list_labels | Listet alle auf einem Board verfügbaren Labels auf |
add_label_to_thread | Fügt einem E-Mail-Thread ein Label hinzu |
remove_label_from_thread | Entfernt ein Label von einem E-Mail-Thread |
toggle_labels | Blendet Labels auf einem Board ein oder aus |
Kommentare
2| Tool | Beschreibung |
|---|---|
add_comment | Fügt einer Karte oder einem Thread einen internen Kommentar hinzu |
get_comment | Ruft die Details eines bestimmten Kommentars ab |
Aufgaben
1| Tool | Beschreibung |
|---|---|
create_task | Erstellt eine Aufgabe (Checklistenpunkt) auf einer Karte |
Kontakte
3| Tool | Beschreibung |
|---|---|
search_contacts | Sucht Kontakte nach Name oder E-Mail-Adresse |
get_contact_conversations | Ruft alle Konversationen mit einem bestimmten Kontakt ab |
create_contact | Erstellt einen neuen Kontakt im Arbeitsbereich |
Wissensdatenbank
5| Tool | Beschreibung |
|---|---|
list_articles | Listet alle Artikel der Wissensdatenbank auf |
get_article | Ruft den vollständigen Inhalt eines Artikels der Wissensdatenbank ab |
create_article | Erstellt einen neuen Artikel in der Wissensdatenbank |
update_article | Aktualisiert einen bestehenden Artikel der Wissensdatenbank |
search_knowledge | Durchsucht die Wissensdatenbank per Suchanfrage |
Analysen
4| Tool | Beschreibung |
|---|---|
get_response_times | Ruft Antwortzeit-Kennzahlen für ein Board ab |
get_avg_response_time | Ruft die durchschnittliche Antwortzeit über alle Boards ab |
get_daily_activity | Ruft tägliche Aktivitätskennzahlen ab (erstellte, beantwortete, gelöste Konversationen) |
get_closed_activity | Ruft Kennzahlen zu geschlossenen/gelösten Konversationen ab |
Automatisierungen
3| Tool | Beschreibung |
|---|---|
list_automations | Listet alle Automatisierungen eines Boards auf |
toggle_automation | Aktiviert oder deaktiviert eine bestimmte Automatisierung |
toggle_ai_drafts | Aktiviert oder deaktiviert KI-Entwürfe auf einem Board |
| Tool | Beschreibung |
|---|---|
get_whatsapp_conversation | Ruft den vollständigen Nachrichtenverlauf einer WhatsApp-Konversation (Karte) auf einem WhatsApp-Board ab. Gibt die Chatnachrichten in Reihenfolge zurück. Verwenden Sie die cardId, die list_threads / search_threads auf einem WhatsApp-Board zurückgeben (das Feld `cardId`). |
list_whatsapp_templates | Listet die vorab genehmigten WhatsApp-Nachrichtenvorlagen auf, die auf einem WhatsApp-Board verfügbar sind. Gibt für jede Vorlage Name, Sprache, Status, Kategorie und Nachrichtentext zurück sowie die Anzahl der erwarteten {{n}}-Variablen. Nur Vorlagen mit Status APPROVED können gesendet werden. |
send_whatsapp_message | Eine WhatsApp-Nachricht mit freiem Text in eine bestehende Konversation senden. Hinweis: WhatsApp erlaubt Freitextnachrichten nur innerhalb des 24-Stunden-Kundenservicefensters, außerhalb davon verwenden Sie stattdessen send_whatsapp_template. |
send_whatsapp_template | Eine vorab freigegebene WhatsApp-Vorlagennachricht in eine Konversation senden. Damit erreichen Sie einen Kontakt außerhalb des 24-Stunden-Fensters. Rufen Sie zuerst list_whatsapp_templates auf, um den genauen Vorlagennamen und die Sprache zu erhalten und zu sehen, wie viele {{n}}-Variablen sie benötigt. |
Beispiele
Prompts in natürlicher Sprache und die Tools, die der KI-Client im Hintergrund aufruft.
„Zeig mir ungelesene E-Mails im Support-Board“
list_boards → list_columns → list_threads
Der KI-Client findet das Support-Board, erkennt die richtige Spalte und listet Threads mit Betreff, Absender und Zeitstempel auf.
„Antworte auf die neueste E-Mail von Lena“
search_threads → get_thread → reply_to_thread
Sucht in allen Boards nach Threads von Lena, ruft die vollständige Nachricht ab und verfasst und sendet dann eine Antwort.
„Wie hoch ist unsere durchschnittliche Antwortzeit diese Woche?“
get_avg_response_time
Ruft das Analyse-Tool direkt auf und liefert die durchschnittliche Antwortzeit mit Vergleich zu früheren Zeiträumen.
„Erstelle eine Karte auf dem Sprint-Board mit diesem Fehlerbericht“
list_boards → list_columns → create_card
Findet das Sprint-Board, ermittelt die richtige Spalte (z. B. Backlog) und erstellt eine Karte mit den Details zum Bug.
„Alle Konversationen zur Abrechnung Lena zuweisen“
filter_threads → move_threads_bulk
Filtert Threads nach dem Label ABRECHNUNG und verschiebt sie dann gesammelt in die Spalte, die Lena zugewiesen ist.
„Durchsuche unsere Wissensdatenbank nach der Rückerstattungsrichtlinie“
search_knowledge
Durchsucht die Wissensdatenbank und liefert passende Artikel mit Auszügen.
Entwicklung
Klonen Sie das Repository und führen Sie es lokal aus:
git clone https://github.com/nick-timms/drag-mcp-server.git
cd drag-mcp-server
npm install
npm run build
DRAG_API_KEY=your-key node dist/index.jsFür die Entwicklung mit automatischem Rebuild:
npm run devLinks
GitHub-Repository: Quellcode, Issues, Beiträge
npm-Paket: @dragapp/mcp-server
Model Context Protocol: MCP-Spezifikation
REST-API-Dokumentation: Referenz der DragApp-REST-API
Lizenz: MIT
Brauchen Sie Hilfe?
Help Center: Leitfäden und Tutorials
support@dragapp.com: Support per E-Mail
GitHub-Issues: Fehlermeldungen und Funktionswünsche
