muammar-yacoob/GMail-Manager-MCP
FreeNot checkedConnects Claude Desktop to your Gmail so you can start managing your inbox using natural language. Bulk delete promos & newsletters, organize labels and get use
About
Connects Claude Desktop to your Gmail so you can start managing your inbox using natural language. Bulk delete promos & newsletters, organize labels and get useful insights.
README
Gmail Manager MCP
🧹 Clean your inbox • 🏷️ Organize with labels • 🗑️ Bulk delete emails
npm MCP Server MIT GitHub Sponsors Report Bug GitHub Stars

✨ What It Does
Gmail Manager MCP provides direct access to your Gmail inbox through the Model Context Protocol, allowing you to:
Feature |
Description |
|---|---|
| Find emails by sender, subject, date, or any Gmail query | |
| Get insights about your email patterns and volume | |
| Read the full content of an email | |
| Create and apply labels to categorize emails automatically | |
| Remove old newsletters, notifications, and spam efficiently | |
| List, search, create and update events, RSVP, and find times everyone is free |
[!IMPORTANT] Upgrading from a version before calendar support? Google cannot add scopes to a token it has already issued, so your saved credentials keep working for mail while every calendar call fails with a permissions error. Enable the Calendar API and add the calendar scope as below, then re-authenticate once:
npx @spark-apps/gmail-manager-mcp@latest authRunning a local checkout instead of the published package? Re-authenticate with the build your client actually loads, or you will re-consent against whichever version npm is serving and see the same error:
node /path/to/GMail-Manager-MCP/dist/index.js auth
🚀 Quick Setup
📋 Prerequisites: Get Gmail Credentials 🗝️
🔑 Required before any installation
- Create New Project 📁
- Enable both APIs: Gmail 📧 and Calendar 📅
- Create OAuth client ID (Desktop app type) 🔐
- Download as
gcp-oauth.keys.json📥 - Navigate to Data access → Add or remove scopes → add both:
https://mail.google.com/andhttps://www.googleapis.com/auth/calendar🔓 - Navigate to Test users → Add your Google email 👤
📁 Where to put gcp-oauth.keys.json:
For Windows users in WSL:
# Copy from Windows to current directory
cp /mnt/c/Users/YourUsername/gcp-oauth.keys.json ./gcp-oauth.keys.json
General locations:
- Current directory:
./gcp-oauth.keys.json(works everywhere) - Home directory:
~/gcp-oauth.keys.json(for npx usage) - Custom path: Set
GMAIL_OAUTH_PATHenvironment variable
📥 Installation
📦 Install from npm registry (Easier ⚡)
npm i -g @spark-apps/gmail-manager-mcp
🏠 Clone and build locally (Safer 🛡️)
git clone https://github.com/muammar-yacoob/GMail-Manager-MCP.git
cd GMail-Manager-MCP
npm install
💻 Terminal Usage
🖥️ Quick Commands
# Install globally
npm i -g @spark-apps/gmail-manager-mcp
# Setup authentication (run this first)
npx @spark-apps/gmail-manager-mcp@latest auth
# Test MCP server (for debugging)
npx @modelcontextprotocol/inspector npx @spark-apps/gmail-manager-mcp@latest
⚙️ Configure MCP Client
🔧 Required for MCP client integration
Add to your MCP client config file (Claude Desktop example):
- Windows
%APPDATA%\\Claude\\claude_desktop_config.json - macOS
~/Library/Application Support/Claude/claude_desktop_config.json - Linux
~/.config/Claude/claude_desktop_config.json
📦 For NPM Install:
{
"mcpServers": {
"gmail-manager": {
"command": "npx", "args": ["@spark-apps/gmail-manager-mcp@latest"],
"env": { "GMAIL_OAUTH_PATH": "C:\\path\\to\\gcp-oauth.keys.json" }
}
}
}
For Local Development:
{
"mcpServers": {
"gmail-manager": {
"command": "node", "args": ["C:\\path\\to\\GMail-Manager-MCP\\dist\\index.js"]
}
}
}
🛠️ Available Tools
🔧 View All Available Tools
📬 Reading
| Tool | Description |
|---|---|
search_emails |
Search using Gmail query syntax |
read_email |
Full content of one email |
get_thread |
Every message in a conversation, oldest first |
list_attachments |
Attachments on an email, with download IDs |
download_attachment |
Save an attachment to a local path |
🧹 Cleaning up
| Tool | Description |
|---|---|
trash_emails |
Move to Trash — recoverable for 30 days. Prefer this |
untrash_emails |
Pull messages back out of Trash |
archive_emails |
Remove from inbox, keep everything else |
mark_emails |
Mark read or unread |
delete_email / batch_delete_emails |
Permanent, bypasses Trash, cannot be undone |
🏷️ Labels
| Tool | Description |
|---|---|
list_labels |
List all labels |
create_label |
Create a label, or return the existing one if the name is taken |
delete_label |
Delete a label |
apply_label / remove_label |
One message |
batch_apply_labels / batch_remove_labels |
Many messages, throttled and retried |
⚙️ Rules & unsubscribing
| Tool | Description |
|---|---|
list_filters |
Filters (rules) currently on the account |
create_filter |
Set a rule that applies to mail arriving from now on |
delete_filter |
Remove a filter |
get_unsubscribe_info |
Read a sender's List-Unsubscribe link, without clicking it |
unsubscribe_email |
Opt out of a mailing list via the sender's own one-click endpoint |
✍️ Composing
| Tool | Description |
|---|---|
create_draft |
Write to Drafts without sending. The safe default |
list_drafts / update_draft / delete_draft |
Manage drafts |
send_draft |
Send an existing draft |
send_email |
Compose and send immediately |
create_reply |
Draft a threaded reply |
resend_email |
Send a fresh copy of a sent message (does not recall the original) |
📅 Calendar
| Tool | Description |
|---|---|
list_calendars |
Calendars this account can access |
list_events |
Events on a calendar, optionally in a time range |
search_events |
Find events by keyword |
get_event |
One event in full, including RSVPs |
create_event |
Create an event, optionally with Meet link and guests |
update_event |
Change an event; only the fields you pass are altered |
delete_event |
Delete an event |
respond_to_event |
RSVP as yourself |
suggest_time |
Find slots where everyone is free, via free/busy |
🔐 Auth
| Tool | Description |
|---|---|
authenticate_gmail |
Authenticate via browser. Covers Gmail and Calendar |
💬 Example Commands
🧹 Quick Cleanup
- "Delete all promotional emails from last 30 days"
- "Delete all unread newsletters older than 1 week"
- "Delete all 'no-reply' emails from last 3 months"
- "Delete all LinkedIn notification emails"
- "Delete all password reset emails older than 1 month"
- "Delete redundant email chains where I'm CC'd"
⚡ Smart Actions
- "Summarize email with subject: 'last boring meeting'"
- "Summarize all emails about 'project deadline'"
- "Reply to email about 'project update' saying 'Got it, thanks!'"
- "Label all emails from my bank as 'Finance'"
- "Create 'Travel' label and move all booking confirmations"
- "Find emails with attachments larger than 5MB"
📊 Inbox Insights
- "Show me who sends me the most emails"
- "Find all unread emails older than 1 week"
- "Show my busiest email days this month"
- "Find emails I starred but never replied to"
📅 Calendar
- "What's on my calendar this week?"
- "Find a 45-minute slot next week when Sam and I are both free, weekdays 9-5"
- "Move Thursday's standup to 10am and add a Meet link"
- "Decline the Friday review, comment that I'm on leave"
- "Search my calendar for anything about the tax deadline"
🛡️ Rules & Unsubscribing
- "Show me the rules currently on my account"
- "Rule: anything from noreply@ skips the inbox and gets labelled Noise"
- "Get the unsubscribe link for this sender so I can check it before clicking"
- "Unsubscribe me from this newsletter"
Unsubscribing uses the sender's own published opt-out. Where they support one-click (RFC 8058) it completes on its own; where the only route is emailing them, it asks first, since that sends mail from your account. A plain link with no one-click declaration is handed back for you to open — arbitrary URLs found in mail are never visited, and no response body from a sender is ever read back into the conversation.
🌱 Support & Contributions
⭐ Star the repo & I power up like Mario 🍄
☕ Devs run on coffee - Buy me one?
💰 Crypto tips welcome - Tip in crypto
🤝 Contributions are welcome - 🍴 Fork, improve, PR!
🎥 Need help?
Setup Tutorial •
Join Discord
💖 Sponsor
Your support helps maintain and improve the tool. please consider sponsoring the project.
Made with ❤️ for MCP • Privacy Policy • Terms of Service
Installing muammar-yacoob/GMail-Manager-MCP
This server has no published package — it is built from source. Open the repository and follow its README.
▸ github.com/muammar-yacoob/GMail-Manager-MCPFAQ
Is muammar-yacoob/GMail-Manager-MCP MCP free?
Yes, muammar-yacoob/GMail-Manager-MCP MCP is free — one-click install via Unyly at no cost.
Does muammar-yacoob/GMail-Manager-MCP need an API key?
No, muammar-yacoob/GMail-Manager-MCP runs without API keys or environment variables.
Is muammar-yacoob/GMail-Manager-MCP hosted or self-hosted?
Self-hosted: the server runs locally on your machine via the install command above.
How do I install muammar-yacoob/GMail-Manager-MCP in Claude Desktop, Claude Code or Cursor?
Open muammar-yacoob/GMail-Manager-MCP on unyly.org, pick your client tab (Claude Desktop, Claude Code, Cursor) and press Install — the config is generated automatically, no JSON editing.
Related MCPs
Gmail
Read, send and search emails from Claude
by GoogleSlack
Send, search and summarize Slack messages
by SlackRunbear
No-code MCP client for team chat platforms, such as Slack, Microsoft Teams, and Discord.
Discord Server
A community discord server dedicated to MCP by [Frank Fiegel](https://github.com/punkpeye)
Klavis AI
Open Source MCP Infra. Hosted MCP servers and MCP clients on Slack and Discord.
Work90210/APIFold
Turn any REST API into a hosted MCP server. 18 free public servers (GitHub, Stripe, Slack, OpenAI, Notion, and more) — no setup required, bring your own API key
by Work90210arikusi/deepseek-mcp-server
MCP server for DeepSeek AI with chat, reasoning, multi-turn sessions, function calling, thinking mode, and cost tracking.
by arikusihashgraph-online/hashnet-mcp-js
MCP server for the Registry Broker. Discover, register, and chat with AI agents on the Hashgraph network.
by hashgraph-onlineprofullstack/mcp-server
A comprehensive MCP server aggregating 20+ tools including SEO optimization, document conversion, domain lookup, email validation, QR generation, weather data,
by profullstackWayStation-ai/mcp
Seamlessly and securely connect Claude Desktop and other MCP hosts to your favorite apps (Notion, Slack, Monday, Airtable, etc.). Takes less than 90 secs.
by waystation-aiCompare muammar-yacoob/GMail-Manager-MCP with
Not sure what to pick?
Find your stack in 60 seconds
Author?
Embed badge for your README
Browse similar
All communication MCPs
