DragApp — Gmail & Whatsapp For AI Tools (Shared Inbox MCP Server)

by nick-timms

263 downloads
Not rated
GitHub

Description

# DragApp MCP Server An [MCP](https://modelcontextprotocol.io) server for [DragApp](https://dragapp.com) — AI-powered email & WhatsApp for teams. Read and reply to emails, send WhatsApp messages, search threads, manage boards, and more from Claude, ChatGPT, Cursor, or any…

About

# DragApp MCP Server An [MCP](https://modelcontextprotocol.io) server for [DragApp](https://dragapp.com) — AI-powered email & WhatsApp for teams. Read and reply to emails, send WhatsApp messages, search threads, manage boards, and more from Claude, ChatGPT, Cursor, or any MCP-compatible AI tool. ## Setup ### 1. Get…

Details

Author
nick-timms
Downloads
263
Categories
Communication

- Email management: list, read, reply, send, search, filter, and move threads
- WhatsApp messaging: send messages, templates, list templates, view conversations
- Board and column management: list, view, and organize boards and columns
- Card operations: create, update, move, archive, and list cards within columns
- Knowledge base: create, update, search, and list articles
- Team analytics: response times, daily activity, closed activity metrics
- Automations: toggle automations and AI drafts
- Contacts

Setting up with Highlight

This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:

  1. Download and install Highlight from highlightai.com/download
  2. Navigate to the plugins tab and select "Add Custom Plugin"
  3. Configure the plugin with the settings below
    Plugin Name DragApp — Gmail & Whatsapp For AI Tools (Shared Inbox MCP Server)
    Command (node, npx, python, etc.)

    Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.

  4. Enable "Start Automatically" if you want the plugin to start when Highlight launches

From the repository

Obtain an API key from DragApp (Settings → Integrations). Then configure the server in your AI tool’s MCP configuration file (e.g., claude_desktop_config.json for Claude Desktop or .cursor/mcp.json for Cursor) by setting the DRAG_API_KEY environment variable and using the command npx -y @dragapp/mcp-server. The server works with any MCP‑compatible client.

list_boards

List all DragApp boards the user has access to. Call this first to discover board IDs. Returns board name, owner, unread count, and contributor info.

get_board

Get details of a specific DragApp board by ID. Returns board name, owner, and members.

list_columns

List all columns (stages) on a DragApp board. Columns represent workflow stages like To Do, In Progress, Done. Returns label-style IDs (e.g. "Label_1") used by list_threads, filter_threads, and move_thread.

list_board_members

List all boards with their columns and member info. Returns the main board and secondary boards with columns for each.

list_teams

List all teams the user belongs to. Returns team IDs needed by knowledge base tools (list_articles, get_article, create_article, update_article).

list_threads

List items in a specific column of a DragApp board. Call list_columns first to get column IDs — they are strings like "Label_1", not numbers. A column can mix three item types: email threads (have `threadId`/`from`/`subject`), task cards (have `cardId`/`title`/`status`), and WhatsApp conversations (have `cardId`/`contact`). Use `cardId` with get_card / update_card / move_card, or with the whatsapp tools for WhatsApp items.

get_thread

Get a single email message by ID. Returns the HTML body (and a plain-text version), sender, recipients, attachments, and reply-to info for composing a response. You can pass either messageId or threadId — they are the same value.

reply_to_thread

Reply to an existing email thread. Sent from the current user's connected Gmail address. For single-message threads, threadId works as messageId. For multi-message threads, pass the specific messageId you're replying to — get_thread returns it. Confirm with the user before sending when intent is unclear. Reference: https://www.dragapp.com/docs/mcp/

send_new_email

Compose and send a new email from a DragApp board's connected email address. Creates a new thread in the board. Confirm with the user before sending when intent is unclear. Reference: https://www.dragapp.com/docs/mcp/

search_threads

Search items across a board by content or sender. Returns matches with preview snippets. Matches can be email threads (`threadId`), task cards (`cardId`/`title`), or WhatsApp conversations (`cardId`/`contact`). Note: matching is on whole words with no stemming, so "cancellation" will not match "cancelling". If a search returns nothing, try a shorter or differently spelled term, or use filter_threads or list_threads.

filter_threads

Filter email threads by criteria such as assignee, tags, or column. More targeted than search — use this when you know specific filter values.

move_thread

Move an email thread to a different column or board. Use this to triage emails — e.g. move from Inbox to In Progress, or to a different team's board.

move_threads_bulk

Move multiple email threads at once to a different column or board. Use this for batch triage operations.

list_cards_in_column

List all cards in a specific column of a DragApp board. Supports pagination. Cards are email threads or tasks with titles, assignees, due dates, and custom fields.

get_card

Get full details of a card (task or email thread) by ID. Returns title, status, assignees, due date, column, board, note, and timestamps.

create_card

Create a new card (task) on a DragApp board. You can set the title, assign it to a team member, and add a note or comment.

update_card

Update an existing card. Change the title, reassign, add a note, set a due date, or change status. Comments cannot be modified via this tool.

move_card

Move a card to a different column on the same board, or to another board. newColumnId is the label-style column ID like 'Label_1' (returned by list_columns).

archive_card

Archive a task card, which closes it rather than deleting it. The card remains retrievable and its status becomes CLOSED. Email threads cannot be archived with this tool.

list_labels

List all shared labels on a board. Labels are coloured markers used to categorise and filter email threads across the team.

add_label_to_thread

Add a shared label to an email thread (or task). Use list_labels first to find available label IDs for the board.

remove_label_from_thread

Remove a shared label from an email thread (or task).

toggle_labels

Add some labels and/or remove others from a thread in one call.

add_comment

Add a comment to a card. Comments are internal team messages attached to cards, visible to all board members. Reference: https://www.dragapp.com/docs/mcp/

get_comment

Retrieve a specific comment by its ID.

list_tags

List all tags (coloured labels) available on a DragApp board. Tags are used to categorise and filter cards. For email thread labels, use list_labels instead.

add_tag_to_card

Add a tag to a card. Use list_tags first to find available tag IDs for the board.

create_task

Create a standalone task in DragApp. Tasks are lightweight to-do items that can be assigned, given a due date, and tracked on a board.

search_contacts

Search for contacts by name or email. The search text must not be empty. Returns matching contact records with name, email, phone, and domain.

get_contact_conversations

Get all email conversations involving a specific contact. Returns thread subjects, dates, and preview text. Use search_contacts first to find the contact ID.

create_contact

Create a new contact record in DragApp with name, email, and optional phone and note. The contact is filed against a board and becomes visible to that board's members.

list_articles

List all knowledge base articles for a team. Returns article titles, categories, and publication status. Use list_teams to find your team ID first.

get_article

Get the full content of a knowledge base article by ID, including title, body, category, and publication status. Use list_teams to find your team ID first.

create_article

Create a new knowledge base article as a draft, filed under the category you specify. Publishing is done in the Drag web app. Use list_teams to find your team ID first. Reference: https://www.dragapp.com/docs/mcp/

update_article

Update an existing knowledge base article's title, body, or category. Use list_teams to find your team ID first. Reference: https://www.dragapp.com/docs/mcp/

search_knowledge

Search a Help Center knowledge base by keyword. teamId, slug, and query are all optional except query — with no teamId or slug, the first team that has a configured Help Center slug is used.

get_response_times

List individual first-response events for a board over a date range. Every event is a first response to a new email; use get_avg_response_time if you also need follow-up replies. Each event gives intervalTime in milliseconds, the responder, and the thread. Returns raw events, not computed metrics.

get_avg_response_time

List individual reply events on a board over a date range, covering follow-up replies as well as first responses. Each event gives intervalTime in milliseconds, the responder, and the thread; firstResponse is true on first responses and absent on follow-ups. Returns raw events, not a computed average.

get_daily_activity

List individual emails received on a board over a date range, each with its creation timestamp. Returns raw records, not per-day counts. Narrow the date range on busy boards.

get_closed_activity

List individual thread-close events for a board over a date range. Each event gives openedAt, closedAt, intervalTime in milliseconds, and who closed it. Returns raw events, not per-day counts.

list_automations

List all automations configured on a board. Shows automation name, trigger type, actions, and whether each is active. Returns an empty array if no automations exist.

toggle_automation

Activate or deactivate a board automation. Pass active=true to enable or active=false to disable.

toggle_ai_drafts

Enable or disable AI-generated draft replies for a board. When enabling, you must choose a category: 'automatic' (drafts created without prompting) or 'manual' (drafts created on demand).

get_whatsapp_conversation

Get the message history of a WhatsApp conversation (card) on a WhatsApp board. Returns messages oldest-first with direction, text, sender, and timestamp, keeping the most recent `limit` messages. Use the cardId returned by list_threads / search_threads on a WhatsApp board (the `cardId` field).

list_whatsapp_templates

List the pre-approved WhatsApp message templates available on a WhatsApp board. Returns each template's name, language, status, category, body text, and how many {{n}} variables it expects. Only APPROVED templates can be sent.

send_whatsapp_message

Send a free-text WhatsApp message into an existing conversation. Note: WhatsApp only allows free-text messages inside the 24-hour customer service window; outside it, use send_whatsapp_template instead. Requires an existing conversation card — starting a conversation with a number that has never messaged the business is not supported. Confirm with the user before sending when intent is unclear.

send_whatsapp_template

Send a pre-approved WhatsApp template message into a conversation. Use this to reach a contact outside the 24-hour window. Call list_whatsapp_templates first to get the exact template name and language, and to see how many {{n}} variables it needs. Requires an existing conversation card — starting a conversation with a number that has never messaged the business is not supported. Confirm with the user before sending when intent is unclear.

Claude Desktop / Cursor

Paste into your MCP client config file to install this server.

{
    "mcpServers": {
        "dragapp \u2014 gmail & whatsapp for ai tools (shared inbox mcp server)": {
            "dragapp": {
                "command": "npx",
                "args": [
                    "-y",
                    "@dragapp/mcp-server"
                ],
                "env": {
                    "DRAG_API_KEY": "your-api-key"
                }
            }
        }
    }
}

McpServers

{
    "dragapp": {
        "command": "npx",
        "args": [
            "-y",
            "@dragapp/mcp-server"
        ],
        "env": {
            "DRAG_API_KEY": "your-api-key"
        }
    }
}

Tools

Email (8 tools)

list_threads · get_thread · reply_to_thread · send_new_email · search_threads · filter_threads · move_thread · move_threads_bulk

Boards (5 tools)

list_boards · get_board · list_columns · list_board_members · list_teams

Cards (6 tools)

list_cards_in_column · get_card · create_card · update_card · move_card · archive_card

Labels (4 tools)

list_labels · add_label_to_thread · remove_label_from_thread · toggle_labels

Contacts (3 tools)

search_contacts · get_contact_conversations · create_contact

Knowledge Base (5 tools)

list_articles · get_article · create_article · update_article · search_knowledge

Analytics (4 tools)

get_response_times · get_avg_response_time · get_daily_activity · get_closed_activity

Automations (3 tools)

list_automations · toggle_automation · toggle_ai_drafts

WhatsApp (4 tools)

send_whatsapp_message · send_whatsapp_template · list_whatsapp_templates · get_whatsapp_conversation

Comments (2 tools)

add_comment · get_comment

Tags (2 tools)

list_tags · add_tag_to_card

Tasks (1 tool)

create_task

47 tools across 12 categories.

No reviews yet — be the first

Sign in to leave a review

Use Google, GitHub, or an email account so ratings stay tied to real people.

Email sign in

No reviews posted yet.