Gmail MCP. Manage your entire inbox through your AI agent.
Works with every AI agent you already use
…and any MCP-compatible client
Just plug in your AI agents and start using Vinkius.
Gmail MCP Server lets your AI agent manage your entire inbox. Read full threads, search with advanced queries (like `from:boss@company.com is:unread`), draft responses, and label messages without leaving your IDE or chat client.
It gives your agent the power to read, filter, and act on your email history directly.
What your AI agents can do
Batch delete messages
This is NOT reversible — messages cannot be recovered. Use trash instead for safe deletion.
Permanently delete multiple messages
Batch modify messages
Useful for bulk operations like "mark all as read" (remove UNREAD) or "archive all" (remove INBOX). Provide message IDs as a JSON array string.
Bulk-modify labels on multiple messages
Create draft
The user can review and modify the draft in Gmail or send it later using send_draft. Safer than sending directly.
Create an email draft
Runs advanced queries across your inbox to narrow down message lists by sender, subject, or date.
Retrieves the full content of an email or an entire conversation thread for analysis or summary.
Drafts and sends complete, formatted emails directly through the Gmail API.
Adds, removes, or modifies labels on messages, and changes their read/unread state.
Lists all available system and custom labels and retrieves your general account identity.
Ask AI about this MCP
Supported MCP Clients
Waiting for input…
Gmail MCP Server: 12 Tools for Email & Mail Ops
These tools give your agent granular control over every part of your mailbox, letting you search, list, read, and modify emails and conversations.
019e9a80batch delete messages
This is NOT reversible — messages cannot be recovered. Use trash instead for safe deletion. Permanently delete multiple messages
019e9a80batch modify messages
Useful for bulk operations like "mark all as read" (remove UNREAD) or "archive all" (remove INBOX). Provide message IDs as a JSON array string. Bulk-modify labels on multiple messages
019e9a80create draft
The user can review and modify the draft in Gmail or send it later using send_draft. Safer than sending directly. Create an email draft
019e9a80create inbox filter
Criteria fields: from, to, subject, query, hasAttachment, negatedQuery. Action fields: addLabelIds, removeLabelIds, forward, star, markImportant. Provide criteria and action as JSON strings. Create an inbox filter rule
019e9a80create label
Labels act as tags — one message can have multiple labels. Use list_mailbox_labels to see existing labels before creating duplicates. Create a custom label
019e9a80delete draft
This is not reversible. Delete a draft permanently
019e9a80delete label
System labels (INBOX, SENT, etc.) cannot be deleted. This is not reversible. Delete a label permanently
019d75a6find emails from sender
Filters and searches the inbox specifically by the sender's email address.
019e9a80get attachment
Returns base64-encoded data and size. First use get_message_content to find attachment IDs in the message payload parts. Download an email attachment
019e9a80get draft
Use this to review a draft before sending. Read a specific draft
019d75a6get gmail profile
Retrieves basic identity and metadata for the connected mailbox.
019e9a80get label details
Get details about a specific label
019d75a6get message content
Reads the full text body and headers of a single, specified email.
019d75a6get thread details
Reads all messages within a specific email conversation thread.
019e9a80get vacation settings
Check vacation auto-responder status
019e9a80list drafts
Returns draft IDs and attached message snippets. Use get_draft for full content or send_draft to dispatch. List email drafts
019d75a6list gmail messages
Lists all messages in the mailbox, supporting advanced search queries via the 'q' parameter.
019d75a6list gmail threads
Lists conversations (threads) in the mailbox, supporting advanced search queries via the 'q' parameter.
019e9a80list inbox filters
Filters automatically process incoming messages based on criteria (from, to, subject, query) and perform actions (add/remove labels, forward, archive, etc.). List inbox filter rules
019e9a80list mailbox history
Get the starting history ID from get_gmail_profile. Useful for incremental sync and change detection. Track mailbox changes since a point in time
019d75a6list mailbox labels
Retrieves a list of all system and custom labels available on the account.
019d75a6list unread emails
Lists all messages that are currently marked as unread.
019d75a6modify message labels
Adds, removes, or updates labels on one or more specified messages.
019e9a80send draft
The draft is removed after sending. Send an existing draft
019e9a80send email
Supports plain text and HTML body, CC, BCC, and reply threading via inReplyTo/references headers. The email is sent immediately. Compose and send an email
019d75a6trash gmail message
Moves a specified email message permanently to the trash folder.
019d75a6untrash gmail message
Recovers a message that was previously moved to the trash.
019e9a80update draft
The draft ID is required — get it from list_drafts. Edit an existing draft
019e9a80update vacation settings
Optionally restrict to contacts only or domain members. Dates are Unix timestamps in milliseconds. Toggle vacation auto-responder
019d75a6verify api connection
Checks the OAuth credentials and confirms the connection status with the Gmail API.
Choose How to Get Started
Build a custom MCP for your own tools, or connect a ready-made integration from our catalog.
Build Your Own
Turn any API into an MCP. Import a spec, define Agent Skills, or deploy with MCPFusion.
- Import from OpenAPI, Swagger, or YAML specs
- Create Agent Skills with progressive disclosure
- Deploy to edge with MCPFusion framework
- Built in DLP, auth, and compliance on every call
- Real time usage dashboard and cost metering
- Publish to catalog or keep private
Make Your AI Do More
Start with Gmail, then connect any of our 4,700+ other servers whenever your AI needs more. One click, no limits.
- Use this MCP plus 4,700+ others, all in one place
- Add new capabilities to your AI anytime you want
- Every connection is secured and compliant automatically
- Track usage and costs across all your servers
- Works with Claude, ChatGPT, Cursor, and more
- New servers added to the catalog every week
What you can do with this MCP connector
Gmail MCP Server lets your AI agent manage your entire inbox. You'll read full threads, search using advanced queries like from:boss@company.com is:unread, draft responses, and label messages—all without leaving your IDE or chat client. It gives your agent the power to read, filter, and act on your whole email history directly.
Search and Filter Messages
Your agent can run advanced queries across your inbox to narrow down message lists. You can use list_gmail_messages to list all messages, supporting advanced search queries via the 'q' parameter. You'll use list_gmail_threads to list conversations, also supporting advanced search queries via the 'q' parameter. You can find_emails_from_sender to filter and search the inbox specifically by a sender's email address.
You can also list_unread_emails to pull up every message marked as unread.
Read and Summarize Threads
To get the full scoop, your agent reads the full text body and headers of a single email using get_message_content. To read all the back-and-forth in a conversation, it uses get_thread_details. View Mailbox Structure
Your agent can list all system and custom labels with list_mailbox_labels. It can also use get_gmail_profile to pull basic identity and metadata for the connected mailbox. Manage Message Status
Your agent controls the organization of your inbox. It can use modify_message_labels to add, remove, or update labels on one or more specified messages. You can also use list_mailbox_labels to see what labels are available. For handling messages that get misplaced, your agent can move a message permanently to the trash using trash_gmail_message, and it can restore a message using untrash_gmail_message.
Compose and Send Emails
While the listing doesn't explicitly provide a single
How Gmail MCP Works
- 1 First, subscribe to the server and link your Google Workspace account using OAuth credentials.
- 2 Next, prompt your AI agent with a clear goal (e.g., 'Find all unread emails from my manager about Q3').
- 3 The agent runs the necessary tools (like
list_gmail_messagesorfind_emails_from_sender), retrieves the data, and presents the final answer or confirmation of action.
The bottom line is, your AI client acts as your agent, using the exposed tools to interact with Gmail on your behalf.
Who Is Gmail MCP For?
This is for anyone whose day involves reading, organizing, or responding to high volumes of email. It targets the technical roles—like the Site Reliability Engineer who needs to parse monitoring alerts, the Marketing Manager drafting personalized campaigns, or the Operations Specialist needing to triage massive update streams.
Pulls monitoring alerts and reads pull request threads without opening the Gmail web interface.
Drafts hyper-personalized outbound messages and reviews draft content directly from the prompt context.
Parses huge incoming updates to locate and act upon isolated context files immediately.
What Changes When You Connect
- Read complex email threads without copy-pasting. Use
get_thread_detailsto pull the entire history of a conversation into your agent's context, allowing for accurate summarization or analysis. - Find specific messages instantly. Instead of scrolling, use
list_gmail_messageswith advanced query parameters to target messages by sender, subject, or date. - Automate inbox organization. Use
modify_message_labelsto automatically categorize and update labels on messages, keeping your system organized without manual effort. - Handle communication flow directly. Use the agent's ability to draft and send responses to reply emails, completing the task cycle without leaving your workflow.
- Focus on what's new. Use
list_unread_emailsto get a quick snapshot of only the messages you haven't seen, bypassing the noise of archived emails. - Check system health first. Run
verify_api_connectionto ensure your OAuth credentials are working before the agent attempts any data retrieval.
Real-World Use Cases
Triaging a project launch announcement.
A project manager needs to know what the executive team thinks about the new launch plan. They prompt their agent: 'Find the last 3 unread emails from the leadership team about Project Nova.' The agent runs list_unread_emails and find_emails_from_sender to narrow the focus, then uses get_thread_details to summarize the consensus from the threads.
Responding to a vendor invoice delay.
The finance team gets an email about a delayed invoice. They ask the agent to 'Draft a polite reply to Acme Corp confirming the delay and suggesting we reschedule the call.' The agent uses the composition tool to generate the text and sends it via the API.
Cleaning up old promotional emails.
You need to clear out old, irrelevant promotional spam from your inbox. You ask the agent to 'Mark all messages matching 'Promotions 2022' as read.' The agent uses modify_message_labels to change the status of the messages in bulk.
Searching for a specific file attachment.
A colleague mentions a document sent last month by a specific person. You prompt: 'Find any email from Jane Doe containing the word 'Q2 budget' sent after May 1st.' The agent runs list_gmail_messages with the advanced query 'from:jane@company.com after:2024/05/01' to locate the exact thread.
The Tradeoffs
Treating the inbox like a single search bar.
Just typing 'Find all emails from my boss' into the agent without specifying 'unread' or a date range. This floods the agent with hundreds of irrelevant results, wasting context tokens and time.
→
Always scope the search. Use list_gmail_messages or list_unread_emails combined with the q parameter, like 'from:boss@company.com is:unread', to limit results to exactly what you need.
Copy-pasting entire threads for context.
Copying 50 emails into a prompt just to summarize the discussion. This is messy, exceeds token limits, and loses structural context.
→
Use get_thread_details to pull the full, clean conversation history directly into the agent. This preserves structure and keeps the context clean.
Assuming one tool does everything.
Trying to find a message and then summarize it, but forgetting the message ID. The agent fails because it can't pass the necessary state.
→
Use list_gmail_messages to identify the message ID first. Then, use that ID as the input for get_message_content or get_thread_details to get the required data.
When It Fits, When It Doesn't
Use this server if your workflow requires reading, searching, or modifying email data based on specific criteria (e.g., 'unread from boss', 'labeled 'Finance''). You need to act on structured email data—you'll use list_gmail_messages, find_emails_from_sender, or list_unread_emails to gather the data first. Don't use this if your goal is just to draft a simple email. For simple drafting, the agent can do that without the server. You only need this if the action is contingent on the data already in your inbox. If you just want to read a single, known email, get_message_content is enough, but if you need to find it first, you must use a listing tool.
Independent Platform Disclaimer: Vinkius is an independent platform and is not affiliated with, endorsed by, sponsored by, verified by, or otherwise authorized by Gmail. All third-party trademarks, logos, and brand names are the property of their respective owners. Their use on this website is strictly for informational purposes to identify service compatibility and interoperability.
VINKIUS INFRASTRUCTURE
Cloud Hosted
Managed infra
V8 Isolated
Sandboxed per request
Zero-Trust Proxy
No stored credentials
DLP Enforced
Policy on every call
GDPR Compliant
EU data residency
Token Compression
~60% cost reduction
Works with Claude, ChatGPT, Cursor, and more
The Model Context Protocol standardizes how applications expose capabilities to LLMs. Instead of operating in isolation, your AI gains direct access to external platforms, live data, and real-world actions through secure, standardized connections.
This server provides 30 capabilities that interface natively with Claude, ChatGPT, Cursor, and any MCP client. No middleware. No custom integration required.
Available Capabilities
Dealing with email threads and labels is a manual, clicking nightmare.
Today, you open Gmail, scroll past dozens of irrelevant newsletters, click into a thread, and then manually scroll back through 40 replies to find the one key decision point. If you need to organize that thread or reference a specific attachment, you're stuck copy-pasting everything into a prompt.
With the Gmail MCP Server, your agent reads the whole thread using `get_thread_details` and pulls out the key updates automatically. You don't copy a thing; you just ask, 'What was the final decision on the budget?' and get the answer.
Gmail MCP Server: Organize emails & threads
The old way meant manually setting up filters, remembering which labels meant 'needs action,' and having to open the web client just to check status. You'd waste time clicking through views and performing bulk operations.
Now, your agent handles it. It can run `modify_message_labels` to sort your inbox, or use `list_unread_emails` to show you only what needs attention. It's a system change, not just a feature update.
Common Questions About Gmail MCP
How do I use the `list_gmail_messages` tool to find emails from a specific sender? +
You pass the sender's email address to the query parameter (q) when calling list_gmail_messages. This lets your agent search the entire mailbox for messages from that source.
Can I use `get_message_content` to summarize an entire conversation? +
No. get_message_content only reads a single email. To summarize a conversation, you must first use list_gmail_threads to find the thread ID, and then use get_thread_details.
Is `list_unread_emails` the best way to check for urgent messages? +
Yes, it's the cleanest method. list_unread_emails gives you a list of messages that are currently unread, filtering out the noise of read archives.
What is the difference between `list_gmail_messages` and `list_gmail_threads`? +
Messages are individual emails. Threads are the conversations. Use list_gmail_messages for a list of standalone emails, and list_gmail_threads if you want to see the full conversation flow.
How does `list_gmail_messages` handle advanced search queries using the 'q' parameter? +
It uses the standard Gmail search query syntax. You pass complex strings like 'from:boss@company.com is:unread' directly to the query parameter, allowing you to filter results by sender, date, subject, or specific labels.
What should I use to manage labels, like adding or removing categories, using `modify_message_labels`? +
You provide the message ID and the list of labels you want to add or remove. This tool handles both adding labels to messages and removing existing labels to keep your inbox organized.
If I need to find all conversations with a specific person, should I use `list_gmail_threads` or `list_gmail_messages`? +
list_gmail_threads is designed for conversations. It groups related messages into single threads, so it's best for getting the full context of a discussion rather than just a list of individual emails.
Can I check the connection status before running any other operation using `verify_api_connection`? +
Yes. Running verify_api_connection confirms that your OAuth credentials are valid and that the AI agent has proper access to your Gmail account. This prevents errors later when you try to read or send emails.
Can the AI send emails autonomously on my behalf? +
Yes, if authorized by you in the conversational context. The send_email tool allows fully crafting, attaching subject lines, and dispatching payloads out of your alias.
How does searching work in a massively clogged inbox? +
The integration exposes a wrapper around Google's native filtering syntax. You simply supply native params like "is:unread from:dev" and the egress bounds automatically stream only small context snippets.
Is my email data retained or trained by the server? +
No, Vurb MCP architecture operates exclusively locally. The network connection executes your query endpoint-to-endpoint securely matching Google standard scopes directly to your client.
Multi-server workflows that include Gmail MCP
MCP Servers for eCommerce Order Invoicing
Order placed, invoice generated, payment follow-up tracked , bookkeeping that runs while you sleep
MCP Workflow for Automated Sales Follow-Ups
AI agent reads your CRM, checks Gmail history and sends WhatsApp follow-ups , all in one pass
MCP Workflow for Online Class Scheduling
Assignments posted, Zoom sessions created, students notified , your AI agent runs the classroom logistics
MCP Workflow for Smart Support Ticket Escalation
Your AI agent triages support tickets, deduplicates escalations and logs everything , hands off
MCP Workflow to Triage GitHub Bugs Into Jira
Your AI agent triages bugs across Jira and GitHub, then emails the right person with full context
Track Invoices Automatically Using MCP Servers
Overdue invoices detected, spreadsheet updated, payment reminders sent , your agent handles accounts receivable
Use it with your favorite AI tools
Connect this server to Cursor, Claude, VS Code, and more.
More in this category
Coze
Orchestrate Coze bots — manage conversations, handle RAG datasets, and trigger bot actions directly from any AI agent.
Pando
Share large files and folders securely with clients using branded transfer portals and download analytics for creative teams.
Shopify Discount Creator
This MCP does exactly one thing: it creates unique percentage discount codes in your Shopify store on the fly. Incredible for giving your AI agent the power to prevent cart abandonment during a chat.
You might also like
Untappd
Track beers, breweries, and venues. Access check-in feeds, beer metadata, and manage your social drinking profile directly from your AI agent.
Bringg
Automate final-mile logistics via Bringg — manage delivery tasks, track fleets, and assign drivers directly from your AI agent.
Health XML Export Parser
Parse massive Apple Health or Google Fit XML exports safely without blowing up your AI's context window. Extracts actionable health metrics instantly.