Several Gmail accounts: search, read, draft, send, labels and Google Calendar. Own OAuth client.
MCPpedia last refreshed this data
io.github.yybd/multi-mail-mcp is an MCP server that several Gmail accounts: search, read, draft, send, labels and Google Calendar. Own OAuth client. Its tool list has not been published yet over stdio, sse and http, requires no API key, and scores 62/100 on MCPpedia's security, maintenance and efficiency rubric.
Config is the same across clients - only the file and path differ.
{
"mcpServers": {
"multi-mail": {
"args": [
"-y",
"@yybd/multi-mail-mcp"
],
"command": "npx"
}
}
}Are you the author?
Add this badge to your README to show your security score and help users find safe servers.
Several Gmail accounts: search, read, draft, send, labels and Google Calendar. Own OAuth client.
This server supports HTTP transport. Be the first to test it - help the community know if it works.
Five weighted categories - click any category to see the underlying evidence.
No known CVEs.
Checked @yybd/multi-mail-mcp against OSV.dev.
Be the first to review
Have you used this server?
Share your experience - it helps other developers decide.
Sign in to write a review.
Others in productivity / communication
Official MCP server for Anytype API - your encrypted, local and collaborative wiki.
Official TypeScript library for the Telnyx API
MCP server for monday.com integration.
Give AI agents access to your Obsidian vault via local files or Self-hosted LiveSync.
MCP Security Weekly
Get CVE alerts and security updates for io.github.yybd/multi-mail-mcp and similar servers.
Start a conversation
Ask a question, share a tip, or report an issue.
Sign in to join the discussion.
English · עברית
An MCP server for several Gmail accounts at once. It searches, reads, drafts and sends mail, and works with Claude Desktop, Claude Code and ChatGPT.
It has two transports:
dist/server.js) runs locally, for Claude Desktop and Claude Code.dist/http.js) is for ChatGPT, or any client that connects by URL. A token is required.Each user brings their own Google OAuth client. Because of that, no Google app verification is needed and nothing passes through a third party. Mail goes only between your machine and Google.
The story behind it, with the comparison and examples: One MCP server for every Gmail account, in Claude and ChatGPT.
| Tool | What it does |
|---|---|
list_accounts | Lists the connected accounts and their aliases |
search_emails | Searches one mailbox, or all of them with account="all", using Gmail search syntax |
read_email | Returns a full message: headers, the body as text (HTML is converted), and attachment names |
read_thread | Returns a whole conversation |
list_labels | Lists a mailbox's labels and folders |
create_draft | Saves a new message or reply as a draft, without sending it |
send_email | Sends a new message or reply right away |
list_drafts / send_draft | Lists pending drafts, or sends one of them |
get_attachment | Downloads one attachment: text and PDFs come back as text, images as an image, anything else (and scanned PDFs) is saved under ~/.multi-mail/attachments |
modify_labels | Adds or removes labels on messages or a thread: mark read or unread, archive, star, file under a label. Accounts connected with --labels only |
create_label | Creates a label (Projects/Acme nests). Accounts connected with --labels only |
list_events | Calendar events between two times, across every calendar you see in Google Calendar, for one account or all of them. Accounts connected with --calendar only |
find_free_time | Free slots of a given length inside working hours, checked against every calendar of every calendar-enabled account |
create_event | Creates an event on your own calendar. Nobody is invited and no email goes out |
search / fetch | Searches every mailbox and fetches one message, in the shape ChatGPT expects (connectors, deep research) |
Choosing a mailbox:
account accepts a full address, an alias (work), or the part before the @.MULTI_MAIL_DEFAULT sets a default account.Replying:
reply_to_message_id puts the reply in the right thread and fills in the recipient and subject.reply_all adds every original recipient.Permissions: gmail.readonly and gmail.compose by default. The server cannot delete mail, move it to trash, or change settings.
add --calendar), which adds calendar.readonly and calendar.events. The server reads events and free/busy, and creates events on your own calendar without inviting anyone. It has no tool to change or delete an event. The calendar tools appear only when at least one account has calendar enabled. Times are read in each calendar's own time zone. If a calendar is set wrong (a new Google account often defaults to UTC), set MULTI_MAIL_TZ=Asia/Jerusalem or pass time_zone to the tool.add --labels), which adds gmail.modify. At Google's level that scope would also allow trashing mail, so the server has no trash tool and refuses the TRASH and SPAM labels.Start the server with --drafts-only