# Gmail MCP

> Gmail MCP connects your personal or enterprise Gmail account directly to your AI agent. Read full email threads, find specific messages using advanced search queries, draft replies, and organize your entire inbox—all without leaving your IDE or chat client. It handles everything from simple labeling to complex batch operations.

## Overview
- **Category:** industry-titans
- **Price:** Free
- **Tags:** email-management, inbox-automation, message-threading, email-search, productivity-tools, api-integration

## Description

Managing an overflowing inbox used to mean jumping between tabs, running manual searches for keywords, and copy-pasting information into drafts. This MCP lets you automate the entire process. You can ask your agent to summarize a massive email thread or pull out key action items from dozens of messages in minutes. Need to find every unread message from your boss with an attachment? Your agent runs advanced queries across your whole mailbox, instantly surfacing exactly what matters right now. Beyond just reading, you control the flow: mark entire groups of emails as read, create new label filters, or even draft and send full responses directly within existing conversation threads. By connecting this MCP through Vinkius, any compatible AI client treats your Gmail account like a native function—allowing true automated email handling wherever you work.

## Tools

### batch_delete_messages
Permanently deletes multiple messages in bulk. Remember, this action cannot be undone.

### create_inbox_filter
Sets up a rule that automatically adds or removes labels, forwards, or stars incoming emails based on specific criteria.

### list_mailbox_history
Retrieves the history ID needed to track mailbox changes over time for synchronization purposes.

### list_gmail_messages
Lists messages in your inbox, allowing you to use advanced search syntax like 'from:boss@company.com is:unread'.

### get_message_content
Reads the complete text and metadata for a single, specific email message.

### send_email
Composes and sends a new email immediately, supporting full HTML or plain text bodies and reply threading.

### send_draft
Dispatches an existing draft message that you previously composed.

### get_attachment
Downloads a specific file attached to an email using its ID and size information.

### modify_message_labels
Adds or removes labels from one or more messages, marking them as read or applying custom tags.

### trash_gmail_message
Moves selected messages into the trash folder.

### untrash_gmail_message
Recovers a message that was previously moved to the trash.

### batch_modify_messages
Applies label changes (like marking all as read or archiving) across an entire group of messages using their IDs.

### list_gmail_threads
Lists grouped conversation threads, supporting advanced search syntax via the 'q' parameter.

### get_thread_details
Retrieves the entire historical chain of emails, including all messages and headers in a single thread.

### list_mailbox_labels
Lists every system and custom label currently available in your mailbox (e.g., INBOX, SPAM).

### get_label_details
Fetches specific metadata about a defined label.

### create_label
Creates a new custom tag or category for your emails.

### delete_label
Permanently removes a custom label from the system.

### list_drafts
Retrieves IDs and snippets of all drafts you have saved, showing where they are located.

### get_draft
Reads the full content of a specific draft so you can review it before sending.

### create_draft
Starts a new email draft that you can save and edit later for later use.

### update_draft
Edits the content or recipient list of an existing saved draft.

### delete_draft
Permanently removes a specific email draft from your drafts folder.

### get_vacation_settings
Checks the current status of your automated out-of-office reply.

### update_vacation_settings
Activates or changes your automatic vacation auto-responder messages and dates.

### list_inbox_filters
Displays all the automated rules (filters) currently set up to manage incoming mail.

### get_gmail_profile
Retrieves basic statistics and identity information about your mailbox account.

### verify_api_connection
Runs a quick check to ensure the connection between the AI agent and Gmail is active.

### list_unread_emails
Lists all messages that have not yet been opened or marked as read in your inbox.

### find_emails_from_sender
Searches and lists any emails sent to you by a specific sender address.

## Prompt Examples

**Prompt:** 
```
Fetch the 3 most recent unread emails from the CEO regarding "Budget".
```

**Response:** 
```
Searching with "is:unread from:ceo@company.com subject:Budget"... I found two matches: "Budget Revisions 2026" and "Immediate Review: Budget Cuts". Would you like to read the first one?
```

**Prompt:** 
```
Send an email to mark@domain.com saying the project is delayed and we need to schedule a call.
```

**Response:** 
```
Email dispatched! Subject dynamically configured to: "Project Update & Call Scheduling". The payload to mark@domain.com confirms the delay and suggests alternative calendar links.
```

**Prompt:** 
```
Mark all messages matching 'Promotions 2022' as read in my backend.
```

**Response:** 
```
Successfully filtered 14 emails inside standard promotions and altered their flags globally to 'read'. The inbox footprint is clean.
```

## Capabilities

### undefined
undefined

### undefined
undefined

### undefined
undefined

### undefined
undefined

### undefined
undefined

## Use Cases

### Handling a PR Crisis
A PR Director receives 50 emails about a product flaw. They ask their agent to 'get_thread_details' on the top five threads and summarize key concerns from each, allowing them to draft a single, cohesive response immediately.

### Automating Reporting
An Ops Analyst needs to process all system alerts received yesterday. The agent uses 'list_unread_emails' combined with advanced search syntax and then applies 'batch_modify_messages' to mark them as reviewed.

### Following Up on Leads
A Sales Manager needs to find all prospects who downloaded a whitepaper but haven't replied. They ask the agent to 'list_gmail_messages' using advanced search operators, then draft and send follow-up emails via 'send_email'.

### Cleaning Up Old Mailboxes
A team lead needs to clear out all promotional spam from last quarter. The agent uses 'list_mailbox_labels' to identify the correct label and then runs a targeted 'batch_modify_messages' operation.

## Benefits

- Stop manually reading massive chains. Your agent can run 'get_thread_details' to read all messages in a conversation history and summarize the core points for you instantly.
- Never miss an urgent message again. Use advanced search queries via 'list_gmail_messages' or 'find_emails_from_sender' to zero in on exactly what you need, like unread alerts from key personnel.
- Handle bulk organization with precision. The 'batch_modify_messages' tool lets you mark every item matching a criteria as read or archive hundreds of messages at once.
- Drafting replies is faster than ever. Your agent can compose and send an email using 'send_email', maintaining the proper reply thread structure automatically.
- Maintain inbox hygiene effortlessly. You can use 'create_inbox_filter' to build rules that automatically label or archive specific types of mail as it arrives.

## How It Works

The bottom line is that you talk to your agent like you're talking to a person who already has full access to your inbox and knows exactly what you need.

1. Subscribe to this MCP and link your Google Workspace credentials using OAuth.
2. Your AI agent connects to the service, giving it permission to access your mailbox data.
3. You interact with your email account naturally via conversation; the agent executes the necessary commands in the background.

## Frequently Asked Questions

**How do I search my emails in Gmail with this MCP?**
You use the 'list_gmail_messages' tool, which accepts standard Gmail search syntax. You can ask your agent to find messages using operators like 'from:boss@company.com is:unread'.

**Can I reply to an email thread from my IDE?**
Yes. Your agent uses the 'send_email' tool, which supports proper reply threading by referencing existing message headers so your response looks natural in Gmail.

**What is the difference between listing messages and reading content with Gmail MCP?**
Listing messages ('list_gmail_messages') gives you IDs and basic metadata. To read the full text, attachments, or headers, you must use 'get_message_content' for a specific message ID.

**How do I mark all emails as read in bulk using Gmail MCP?**
You can use the 'batch_modify_messages' tool. By providing an array of message IDs and instructing the agent to remove the UNREAD label, it marks them all as read.

**Does this MCP handle my drafts folder?**
Yes. You can use 'list_drafts' to see what you saved, 'get_draft' to review the content, and then 'send_draft' to dispatch it when ready.