# Gmail

Manage your Gmail inbox � send and read emails, organize with labels, manage drafts and threads, handle attachments, and configure vacation auto-reply through 28 MCP tools.

## Quick Start

```bash
# Connect this server (installs CLI if needed)
npx -y @smithery/cli@latest mcp add node2flow/gmail-mcp

# Browse available tools
npx -y @smithery/cli@latest tool list node2flow/gmail-mcp

# Get full schema for a tool
npx -y @smithery/cli@latest tool get node2flow/gmail-mcp gmail_list_messages

# Call a tool
npx -y @smithery/cli@latest tool call node2flow/gmail-mcp gmail_list_messages '{}'
```

## Direct MCP Connection

Endpoint: `https://gmail-mcp--node2flow.run.tools`

**Required config:**
- `GOOGLE_CLIENT_ID` (query) — OAuth 2.0 Client ID from Google Cloud Console
- `GOOGLE_CLIENT_SECRET` (query) — OAuth 2.0 Client Secret
- `GOOGLE_REFRESH_TOKEN` (query) — Refresh token with Gmail scope (from OAuth consent flow or OAuth Playground)

## Tools (28)

- `gmail_list_messages` — List messages in the mailbox. Supports Gmail search syntax for filtering (e.g., from:, to:, subject:, is:unread, has:at…
- `gmail_get_message` — Get a specific message by ID. Returns headers, body, labels, and metadata. Use format=full for parsed body or format=ra…
- `gmail_send_message` — Send an email message. Supports plain text and HTML body, CC, BCC, and replying to threads.
- `gmail_delete_message` — Permanently delete a message. This action is irreversible — use gmail_trash_message for safe deletion.
- `gmail_trash_message` — Move a message to the trash. Can be undone with gmail_untrash_message.
- `gmail_untrash_message` — Remove a message from the trash, restoring it to its original location.
- `gmail_modify_message` — Add or remove labels on a message. Use this to mark as read/unread, star/unstar, or apply custom labels.
- `gmail_batch_delete` — Permanently delete multiple messages at once. Maximum 1000 IDs per request. Irreversible.
- `gmail_batch_modify` — Add or remove labels on multiple messages at once. Maximum 1000 IDs per request.
- `gmail_get_attachment` — Get attachment data for a message. Returns base64url-encoded data. Find attachment IDs in the message payload parts.
- `gmail_list_drafts` — List all drafts in the mailbox.
- `gmail_get_draft` — Get a specific draft by ID, including the draft message content.
- `gmail_create_draft` — Create a new draft email. The draft can be sent later with gmail_send_draft.
- `gmail_update_draft` — Update an existing draft with new content. Replaces the entire draft message.
- `gmail_delete_draft` — Delete a draft. This permanently removes the draft.
- `gmail_send_draft` — Send an existing draft. The draft is removed from the drafts list after sending.
- `gmail_list_labels` — List all labels in the mailbox, including system labels (INBOX, SENT, etc.) and user-created labels.
- `gmail_get_label` — Get details for a specific label, including message and thread counts.
- `gmail_create_label` — Create a new user label for organizing messages.
- `gmail_update_label` — Update a label name, visibility, or color.
- `gmail_delete_label` — Delete a user-created label. System labels cannot be deleted. Messages with this label are not deleted.
- `gmail_list_threads` — List email threads (conversations). Supports the same search syntax as gmail_list_messages.
- `gmail_get_thread` — Get all messages in a thread (conversation). Returns the complete email chain.
- `gmail_modify_thread` — Add or remove labels on all messages in a thread.
- `gmail_trash_thread` — Move all messages in a thread to the trash.
- `gmail_untrash_thread` — Remove all messages in a thread from the trash.
- `gmail_get_profile` — Get the authenticated user's Gmail profile — email address, total message count, total thread count, and history ID.
- `gmail_update_vacation` — Enable or disable vacation auto-reply (out of office) with custom response message.

```bash
# Get full input/output schema for a tool
npx -y @smithery/cli@latest tool get node2flow/gmail-mcp <tool-name>
```

## Resources

- `gmail://server-info` — Connection status and available tools for this Gmail MCP server

## Prompts (2)

- `compose-and-send` — Guide for composing and sending emails, managing drafts
- `search-and-organize` — Guide for searching emails, managing labels, and organizing the mailbox

---

License: MIT
