Now liveThe Skillselion MCP - thousands of ranked skills, loaded into your agent mid-task. No install.Get it →
gx-55 avatar

Multi Gmail Mcp

  • 17 repo stars
  • Updated May 4, 2026
  • gx-55/multi-gmail-mcp

Multi Gmail MCP is a MCP server that lets agents manage multiple Gmail accounts for search, send, reply, draft, and organization.

About

Multi Gmail MCP lets coding agents work across more than one Gmail account from a single MCP connection—searching messages, sending mail, replying, saving drafts, and organizing labels without opening multiple browser tabs. founders often juggle hello@, support@, and personal Gmail; this server targets that workflow, especially in Claude Desktop. Setup means a Google Cloud OAuth client (environment variables or a local oauth json file) and registering the stdio server. It is a communication integration, not an email marketing platform: best for tactical support, follow-ups, and inbox cleanup during growth, not bulk campaigns. Expect intermediate setup because Google OAuth consent and client credentials are on you.

  • Multiple Gmail accounts in one MCP server (Claude Desktop oriented)
  • Search, send, reply, draft, and organize mail via agent tools
  • Google OAuth2 via GOOGLE_CLIENT_ID/SECRET or ~/.gmail-mcp-oauth.json
  • stdio npm package multi-gmail-mcp v1.0.1
  • Reduces context switching between personal, support, and billing inboxes

Multi Gmail Mcp by the numbers

  • Data as of Jul 24, 2026 (Skillselion catalog sync)
terminal
claude mcp add --env GOOGLE_CLIENT_ID=YOUR_GOOGLE_CLIENT_ID --env GOOGLE_CLIENT_SECRET=YOUR_GOOGLE_CLIENT_SECRET multi-gmail-mcp -- npx -y multi-gmail-mcp

Add your badge

Show developers this MCP server is listed on Skillselion. Paste this into your README.

Listed on Skillselion
repo stars17
Packagemulti-gmail-mcp
TransportSTDIO
AuthRequired
Last updatedMay 4, 2026
Repositorygx-55/multi-gmail-mcp

What it does

Operate several Gmail inboxes from one agent session—search threads, send replies, drafts, and light organization.

Who is it for?

Best when you're handling support@ plus personal mail, or micro-agencies managing a few client Gmail accounts from Claude Desktop.

Skip if: High-volume transactional email, teams needing Microsoft 365, or users who want a no-OAuth one-click install.

What you get

After OAuth setup, your agent can query and act on multiple Gmail accounts through one multi-gmail-mcp stdio server.

  • Single MCP connection spanning configured Gmail accounts
  • Agent-driven search, send, reply, draft, and organize operations
  • Less manual switching between founder and support inboxes

By the numbers

  • npm package multi-gmail-mcp version 1.0.1
  • stdio transport
  • Supports multiple Gmail accounts per server instance
README.md

multi-gmail-mcp

A Model Context Protocol (MCP) server that lets Claude Desktop manage multiple Gmail accounts simultaneously. Listed on the official Anthropic MCP registry and published on npm.

demo


Features

  • Connect unlimited Gmail accounts — personal, work, side projects
  • Search any inbox using full Gmail search syntax
  • Read complete emails with MIME parsing
  • Send, reply in thread, and create drafts
  • Organize with labels: add, remove, list, archive
  • Mark as read / unread
  • Tokens stored locally in ~/.gmail-mcp-tokens.db — never committed to git
  • Auto-refreshes OAuth tokens silently

Requirements

  • Node.js >= 22.5.0
  • A Google Cloud project with the Gmail API enabled
  • Claude Desktop

Installation

npm install -g multi-gmail-mcp

This registers two global commands: gmail-mcp (the MCP server) and gmail-mcp-cli (account manager).


Google Cloud Setup

You only need to do this once.

  1. Go to console.cloud.google.com → create a project
  2. Enable the Gmail API (APIs & Services → Library)
  3. Configure the OAuth consent screen — External, add your Gmail addresses as test users
  4. Add scopes: gmail.readonly, gmail.send, gmail.modify, gmail.labels
  5. Create a Desktop app OAuth credential → download the JSON
  6. Save it to ~/.gmail-mcp-oauth.json

Alternatively, set environment variables in the Claude Desktop config (see below).


Authenticating Gmail Accounts

# Add accounts (opens browser for Google sign-in)
gmail-mcp-cli add personal@gmail.com
gmail-mcp-cli add work@company.com

# List authenticated accounts
gmail-mcp-cli list

# Remove an account
gmail-mcp-cli remove work@company.com

Tokens are saved to ~/.gmail-mcp-tokens.db and refreshed automatically.


Claude Desktop Configuration

Edit ~/Library/Application Support/Claude/claude_desktop_config.json:

{
  "mcpServers": {
    "multi-gmail": {
      "command": "gmail-mcp"
    }
  }
}

If you prefer environment variables over ~/.gmail-mcp-oauth.json:

{
  "mcpServers": {
    "multi-gmail": {
      "command": "gmail-mcp",
      "env": {
        "GOOGLE_CLIENT_ID": "your-client-id.apps.googleusercontent.com",
        "GOOGLE_CLIENT_SECRET": "your-client-secret"
      }
    }
  }
}

Restart Claude Desktop after saving. Click the hammer icon to confirm 19 tools are loaded.


Available Tools

Account Management

Tool Description
list_accounts List all authenticated Gmail accounts
initiate_auth Start OAuth flow — returns a URL to open in browser
complete_auth Finalize auth after completing Google sign-in
remove_account Remove an account and its stored credentials

Reading Email

Tool Description
search_emails Search with Gmail syntax (is:unread, from:, after:, etc.)
get_email Fetch full email content by message ID

Writing Email

Tool Description
send_email Send an email (supports To, CC, BCC)
reply_to_email Reply in thread, preserving References headers
create_draft Save an email as a draft

Organization

Tool Description
list_labels List all Gmail labels for an account
add_label Add one or more labels to a message
remove_label Remove one or more labels from a message
archive_email Remove from Inbox
mark_as_read Remove the UNREAD label
mark_as_unread Add the UNREAD label

Example Prompts

List all my authenticated Gmail accounts.
Search my work@company.com inbox for unread emails from this week.
Reply to that email from my personal account saying I'll be there Saturday.
Send an email from personal@gmail.com to friend@example.com
with subject "Dinner plans" and body "Are you free Saturday?"
Archive everything older than a week in my side-project inbox that's already read.
Check both my accounts for emails from GitHub and summarize them.

Security

  • ~/.gmail-mcp-oauth.json and ~/.gmail-mcp-tokens.db live in your home directory — outside the project, never committed
  • .gitignore excludes *.db, .gmail-mcp-oauth.json, and .env
  • The server runs over stdio only — no network port is opened
  • OAuth scopes are limited to the minimum required

See SECURITY.md for full details: token storage, network behavior, scope rationale, revocation steps, and how to report a vulnerability.


Registry

Listed on the official Anthropic MCP registry:

io.github.gx-55/multi-gmail-mcp
curl "https://registry.modelcontextprotocol.io/v0.1/servers?search=io.github.gx-55"

Project Structure

multi-gmail-mcp/
├── bin/
│   ├── gmail-mcp.js        # Entry point for the MCP server command
│   └── gmail-mcp-cli.js    # Entry point for the CLI command
├── src/
│   ├── server.js           # MCP server — all 19 tools
│   ├── gmail-client.js     # Gmail API wrapper
│   ├── auth.js             # OAuth2 flow with auto-refresh
│   ├── db.js               # SQLite token storage (node:sqlite)
│   └── cli.js              # Account management CLI
└── package.json

Troubleshooting

"No OAuth credentials found" Make sure ~/.gmail-mcp-oauth.json exists or set GOOGLE_CLIENT_ID / GOOGLE_CLIENT_SECRET in the Claude Desktop config.

"Account not found. Authenticate it first" Run gmail-mcp-cli add your@gmail.com before using that account in Claude.

Tools not appearing in Claude Desktop Confirm gmail-mcp is in your PATH (which gmail-mcp) and restart Claude Desktop.

Token expired errors Tokens auto-refresh if a valid refresh token is stored. If refresh fails, remove the account and re-authenticate: gmail-mcp-cli remove your@gmail.com && gmail-mcp-cli add your@gmail.com.

Recommended MCP Servers

How it compares

Gmail OAuth MCP for multi-inbox agent actions—not a CRM, help desk, or newsletter sender.

FAQ

Who is Multi Gmail MCP for?

Developers and small teams who rely on Gmail for support and sales and want one AI agent to work across several accounts.

When should I use Multi Gmail MCP?

Use it during Grow and Operate when you triage customer email, send follow-ups, or draft replies without leaving your agent workflow.

How do I add Multi Gmail MCP to my agent?

Install multi-gmail-mcp from npm, configure Google OAuth2 with GOOGLE_CLIENT_ID and GOOGLE_CLIENT_SECRET or ~/.gmail-mcp-oauth.json, then add the stdio MCP server in Claude Desktop or your agent config.

Communicationlifecyclecontent

This week in AI coding

Five minutes, every Monday - the tools, releases and tactics for developers.

unsubscribe anytime.