gmail-mcp
Provides tools to search, read, send, draft, and manage Gmail emails across multiple accounts, including labeling, archiving, trashing, and read/unread toggles.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@gmail-mcpsearch my inbox for invoices from the last 30 days"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
gmail-mcp v1.0.0
Unified Multi-Account Google OAuth2 MCP Server for Gmail. Search, read, compose, send, draft, and organize emails across multiple Google accounts seamlessly.
Features (4 Unified Tools)
gmail_search: Search emails with official Gmail search syntax (is:unread,from:boss@corp.com,subject:invoice,newer_than:2d,has:attachment)gmail_read: Read full email content and metadata (subject, sender, body text, HTML, CC, BCC, labels, attachment list)gmail_send: Send emails or create drafts (supports HTML, CC, BCC, thread replies, and file attachments)gmail_manage: Labeling, archiving, trash management, read/unread toggles, permanent deletion, and multi-account inventory
Related MCP server: Moist
Multi-Account Architecture
A single Google Cloud OAuth client (credentials.json) can authenticate multiple Gmail accounts.
Tokens are stored per-account in ~/.secrets/gmail/tokens/<account_name>.json.
1. Setup Google OAuth Credentials (One-time)
Create a project in Google Cloud Console.
Enable the Gmail API.
Create an OAuth 2.0 Client ID (Desktop Application).
Download the client secret JSON file and save it as
~/.secrets/gmail/credentials.json(or setGMAIL_CREDENTIALS_JSON).
2. Authenticate Accounts
Run the interactive authorization CLI for each account:
gmail-auth default # Authenticates primary account
gmail-auth work # Authenticates secondary work account
gmail-auth client_x # Authenticates any additional accountList all authenticated accounts:
gmail-auth --listInstallation in MCP Clients (Claude Desktop, OpenCode, Cursor, Windsurf)
Option 1: Instant via uvx (Recommended)
{
"mcpServers": {
"gmail": {
"command": "uvx",
"args": ["--from", "git+https://github.com/Steph-ux/gmail-mcp.git", "gmail-mcp"]
}
}
}Option 2: Via pip install
pip install git+https://github.com/Steph-ux/gmail-mcp.gitThen in your MCP config:
{
"mcpServers": {
"gmail": {
"command": "gmail-mcp"
}
}
}Option 3: Local Clone (Development)
{
"mcpServers": {
"gmail": {
"command": "python",
"args": ["D:\\Steph\\script\\gmail-mcp\\server.py"]
}
}
}Usage Examples
1. Search Messages
# Search in default account:
gmail_search(query='is:unread from:github')
# Search in work account:
gmail_search(account='work', query='subject:invoice newer_than:7d')2. Read Message
gmail_read(account='work', message_id='18f2a9b4c10d')3. Send Email or Create Draft
# Send direct email:
gmail_send(
account='default',
to='colleague@example.com',
subject='Project Update',
body_text='Here is the latest status...',
body_html='<h1>Project Update</h1><p>Here is the latest status...</p>'
)
# Create a draft:
gmail_send(
account='work',
to='client@example.com',
subject='Proposal draft',
body_text='Please review the proposal.',
draft=True
)4. Organize & Manage
# Archive email:
gmail_manage(account='work', action='archive', message_id='18f2a9b4c10d')
# Mark as unread:
gmail_manage(account='default', action='mark_unread', message_id='18f2a9b4c10d')
# Move to trash:
gmail_manage(account='default', action='trash', message_id='18f2a9b4c10d')
# List active accounts:
gmail_manage(action='list_accounts')Testing
pytest testsLicense
MIT
This server cannot be deployed
Maintenance
Related MCP Connectors
Email infrastructure for AI agents — send, receive, search, and reply to email over MCP.
A MCP server for Gmail that lets you search, read, and draft emails and replies.
Email inboxes for AI agents: send, receive, reply, search, and manage threaded email over MCP.
Manage Gmail end-to-end: search, read, send, draft, label, and organize threads. Automate workflow…
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceEnables interaction with Gmail through the MCP protocol, supporting sending, reading, searching, replying, forwarding, managing drafts and labels, and saving attachments.11 npm3MIT
- AlicenseNot gradedqualityDmaintenanceEnables Gmail operations such as reading, sending, searching, and managing emails, threads, labels, and drafts via MCP tools.1MIT
- FlicenseNot gradedqualityCmaintenanceEnables searching, reading, and drafting emails across multiple Gmail accounts through a single MCP server.-
- FlicenseNot gradedqualityCmaintenanceEnables reading, searching, sending, and drafting Gmail emails via MCP tools, with support for multiple accounts and background notifications.-