Gmail

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

Community: Submitted by a user or imported; check the owner before granting accessOnlineAPI key requiredGlobalFreeCan modify data

What it can do

  • Gmail List Messages: List messages in the mailbox. Supports Gmail search syntax for filtering (e.g., from:, to:, subject:, is:unread, has:attachment).
  • Gmail Get Message: Get a specific message by ID. Returns headers, body, labels, and metadata. Use format=full for parsed body or format=raw for RFC 2822.
  • Gmail Send Message: Send an email message. Supports plain text and HTML body, CC, BCC, and replying to threads.

What data it sees

Do you need an account

An API key from the service settings is required

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.

Features

  • Send, read, and search emails with Gmail search syntax
  • Manage drafts (create, update, send)
  • Organize with labels (create, update, apply to messages)
  • Thread-based conversation management
  • Batch operations for bulk label changes and deletions
  • Attachment retrieval
  • Vacation auto-reply settings
  • Full OAuth 2.0 authentication with refresh tokens

28 Tools

Messages (10): List, get, send, delete, trash, untrash, modify labels, batch delete, batch modify, get attachment

Drafts (6): List, get, create, update, delete, send

Labels (5): List, get, create, update, delete

Threads (5): List, get, modify labels, trash, untrash

Settings (2): Get profile, update vacation auto-reply

Configuration

  • GOOGLE_CLIENT_ID � OAuth 2.0 Client ID from Google Cloud Console
  • GOOGLE_CLIENT_SECRET � OAuth 2.0 Client Secret
  • GOOGLE_REFRESH_TOKEN � Refresh token with Gmail scope

How to connect

How to connect Gmail to Claude

The server address to paste into Claude settings:

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

  1. Open Claude (claude.ai or the desktop app).
  2. Go to Settings → Connectors.
  3. Click Add custom connector.
  4. Paste the server address copied below into Remote MCP server URL and click Add.
  5. In a chat, click + → Connectors and switch the new connector on.

Custom connectors are available on Free, Pro, Max, Team and Enterprise plans (Free is limited to one). On Team and Enterprise an organization Owner adds the connector first under Organization settings → Connectors.

Authorization

After you click Add, a sign-in window for the service opens. Sign in with your own account and approve access. Claude never sees your password.

How to connect Gmail to ChatGPT

The server address to paste into ChatGPT settings:

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

  1. Open ChatGPT in a browser (chatgpt.com). A Plus, Pro, Business, Enterprise or Edu plan is required.
  2. Turn on developer mode once: Settings → Apps → Advanced settings → Developer mode.
  3. Open Settings → Connectors and click Create.
  4. Fill in the form: Name (anything), Description (one line about what the service does), MCP server URL (copy it below).
  5. Under Authentication choose OAuth if the service requires sign-in, otherwise None. Click Create.
  6. In a new chat open + → Apps/Connectors and enable the connector.

OpenAI has renamed this section before (Connectors → Apps/Plugins). If the label differs, search settings for "developer mode". On Business/Enterprise workspaces an admin must allow custom connectors first.

Authorization

On first use ChatGPT opens the service's sign-in window. Sign in and approve access.

How to connect Gmail to Cursor

The server address to paste into Cursor settings:

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

Fastest: click Open in Cursor below and confirm the prompt.

Manually:

  1. In Cursor open Settings → Cursor Settings → MCP and click Add new global MCP server.
  2. Paste the JSON copied below into ~/.cursor/mcp.json (per project: .cursor/mcp.json in the repo root).
  3. Save the file. The server appears in the MCP list; authorize it there if asked.

Authorization

If the service needs sign-in, an authorize button appears next to the server in the MCP list.

Server tool list (28)

Raw names from tools/list. Only developers need these.

gmail_list_messagesList messages in the mailbox. Supports Gmail search syntax for filtering (e.g., from:, to:, subject:, is:unread, has:attachment).
gmail_get_messageGet a specific message by ID. Returns headers, body, labels, and metadata. Use format=full for parsed body or format=raw for RFC 2822.
gmail_send_messageSend an email message. Supports plain text and HTML body, CC, BCC, and replying to threads.
gmail_delete_messagePermanently delete a message. This action is irreversible — use gmail_trash_message for safe deletion.
gmail_trash_messageMove a message to the trash. Can be undone with gmail_untrash_message.
gmail_untrash_messageRemove a message from the trash, restoring it to its original location.
gmail_modify_messageAdd or remove labels on a message. Use this to mark as read/unread, star/unstar, or apply custom labels.
gmail_batch_deletePermanently delete multiple messages at once. Maximum 1000 IDs per request. Irreversible.
gmail_batch_modifyAdd or remove labels on multiple messages at once. Maximum 1000 IDs per request.
gmail_get_attachmentGet attachment data for a message. Returns base64url-encoded data. Find attachment IDs in the message payload parts.
gmail_list_draftsList all drafts in the mailbox.
gmail_get_draftGet a specific draft by ID, including the draft message content.
gmail_create_draftCreate a new draft email. The draft can be sent later with gmail_send_draft.
gmail_update_draftUpdate an existing draft with new content. Replaces the entire draft message.
gmail_delete_draftDelete a draft. This permanently removes the draft.
gmail_send_draftSend an existing draft. The draft is removed from the drafts list after sending.
gmail_list_labelsList all labels in the mailbox, including system labels (INBOX, SENT, etc.) and user-created labels.
gmail_get_labelGet details for a specific label, including message and thread counts.
gmail_create_labelCreate a new user label for organizing messages.
gmail_update_labelUpdate a label name, visibility, or color.
gmail_delete_labelDelete a user-created label. System labels cannot be deleted. Messages with this label are not deleted.
gmail_list_threadsList email threads (conversations). Supports the same search syntax as gmail_list_messages.
gmail_get_threadGet all messages in a thread (conversation). Returns the complete email chain.
gmail_modify_threadAdd or remove labels on all messages in a thread.
gmail_trash_threadMove all messages in a thread to the trash.
gmail_untrash_threadRemove all messages in a thread from the trash.
gmail_get_profileGet the authenticated user's Gmail profile — email address, total message count, total thread count, and history ID.
gmail_update_vacationEnable or disable vacation auto-reply (out of office) with custom response message.