Skip to main content
Glama
anitalklausen

gmail-multi-mcp

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
GMAIL_MCP_HOMENoConfig/token folder. The default is ~/.config/gmail-multi-mcp.~/.config/gmail-multi-mcp
GMAIL_MCP_READ_ONLYNoSet to 1 to hide every write tool (send, draft, labels, trash) for all accounts
GMAIL_MCP_CREDENTIALSNoPath to the OAuth client JSON

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": false
}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}

Tools

Functions exposed to the LLM to take actions

NameDescription
list_accountsA

List all connected Gmail accounts with their alias and read-only status.

search_emailsA

Search email using Gmail search syntax (e.g. 'is:unread from:bob newer_than:7d').

Args: query: Gmail search query. Empty returns the newest messages. account: Email or alias. Omit to search ALL connected accounts. max_results: Max messages per account (1-50).

read_emailB

Read one email in full (headers, plain-text body, attachment list).

read_threadC

Read every message in a conversation thread, oldest first.

list_labelsC

List labels (system and user-created) for an account.

send_emailA

Send an email from the given account. Confirm content with the user first.

Args: account: Sender account (email or alias). to: Comma-separated recipients. subject: Subject. May be empty when replying (uses 'Re: '). body: Plain-text body. reply_to_message_id: Message id to reply to; keeps the thread intact.

create_draftB

Save an email as a draft in the given account (not sent).

modify_labelsB

Add/remove labels by name or id. Examples: mark read = remove ['UNREAD']; archive = remove ['INBOX']; star = add ['STARRED'].

trash_emailB

Move a message to Trash (recoverable for 30 days).

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

B3.4/5.0

Scored across 9 tools

Disambiguation4/5

Each tool has a fairly distinct purpose: reading, searching, sending, drafting, trashing, and label management are all clearly separated. The only mild overlap is between modify_labels (which can apply TRASH/UNREAD labels) and trash_email, plus list_labels vs modify_labels, but descriptions make the intended use clear.

Naming Consistency5/5

All nine tools follow a strict verb_noun snake_case pattern (list_accounts, search_emails, read_email, read_thread, list_labels, modify_labels, trash_email, send_email, create_draft). No camelCase or vague verbs mixed in.

Tool Count5/5

Nine tools is a well-scoped surface for a multi-account Gmail server, covering the core mailbox operations without bloat. Every tool maps to a distinct mailbox workflow.

Completeness4/5

Core lifecycle is well covered: list/search/read/read thread, send, draft, trash, and label management across accounts. Minor gaps remain — no attachment download, no permanent delete (only trash), and no explicit forward or mark-spam/unspam tool, though these can be approximated with existing tools.

Maintenance

ActivityMaintained
ResponsivenessNo issues