Mbox MCP server
Search local email archives (.mbox/.eml) entirely on your machine. No OAuth, no cloud.
0 stars17k downloads/wk
Reviews
Write oneNobody has reviewed Mbox yet.
If you have run it, two minutes of your experience saves the next person an afternoon.
Mbox tools (3)
write = sends, deletes, buys or postsRead from the package source without running it. The installed server may list more.
get_messageFully parse one message by its id (from search_messages): headers, decoded text body (truncated if huge), and attachment names/types/sizes. Attachment contents are never returned.
open_archiveIndex an .mbox file (Google Takeout, Thunderbird) or a directory of .eml files — entirely locally, nothing leaves the machine. Returns message count, date range, and top senders. Large archives are indexed once and cached.
search_messagesSearch indexed envelopes (from/to/subject/date). `query` matches sender and subject. `body_query` additionally full-parses candidate messages to search body text — it is capped, so narrow with sender/date filters first; the result reports how many candidates were scanned.
Public scan report
scanner v0.1.9 · 2026-09-23 · same rubric, same numbers if you re-run it
- Code scan7 source files scanned25/25
- –Live reliabilityno gateway calls yet and no remote to proben/a
- –Tool poisoningtools not inspected (local package is not executed); not countedn/a
- Auth qualitylocal package, no credentials required12/15
- Maintenancelast push 40 days ago12/15
- Maintainer identityregistry namespace matches repository owner; GitHub account older than a year8/10
What the publisher says
From the Mbox repository's README, as published. We do not edit it. Read it on GitHub
mbox-mcp
An MCP server for local email archives. Point it at a Google Takeout .mbox export or a folder of .eml files and ask Claude things like:
- "Who did I email most in this archive?"
- "Find the message where the landlord mentioned the lease renewal."
- "Summarize my correspondence with bob@example.com from early 2026."
Everything stays on your machine. No OAuth, no app passwords, no IMAP connection, no cloud. Every other email MCP server connects to a live account — this one reads the archive files you already have, which is exactly what you want for the 15 years of Gmail sitting in a Takeout export.
Quick start
Claude Code
claude mcp add mbox -- npx -y mbox-mcpClaude Desktop — add to claudedesktopconfig.json:
{
"mcpServers": {
"mbox": {
"command": "npx",
"args": ["-y", "mbox-mcp"]
}
}
}Then: "Open C:\\Takeout\\Mail\\All mail Including Spam and Trash.mbox and tell me about it."
Tools
Built for large archives
A Takeout mbox is often multiple gigabytes with 100k+ messages. The design reads the minimum, lazily:
- Streaming index — one pass in 8 MiB chunks, recording byte offsets; only the current message's first 16 KiB is ever held for envelope parsing (sender, subject, date, RFC 2047 decoding).
- Full MIME on demand — reading a message parses just that message (postal-mime: nested multipart, charsets, quoted-printable/base64). Attachments are listed with names and sizes, never dumped into context.
- Honest body search — body_query only full-parses messages that already match your envelope filters, stops at a scan cap, and reports how many it scanned, so the model knows to narrow by sender or date first.
- Staleness-aware cache — archives are indexed once per process and re-indexed if the file changes.
Notes and limitations
- mbox variants: Takeout and Thunderbird produce mboxrd (body From lines are quoted as >From ), which splits cleanly. Plain mboxo archives with unquoted body From lines can over-split.
- Attachment contents are never returned or written anywhere.
- PST/OST and Maildir are out of scope for now.
Development
npm install
npm test # offline tests — synthetic archives built in-suite
npm run build # tsc → dist/
node scripts/smoke.mjs # end-to-end: generates an archive, drives the server over stdioArchitecture: src/archive.ts (streaming indexer, header decoding, envelope filtering) and src/reader.ts (per-message MIME parsing) are pure logic; src/index.ts is the MCP wiring. The test suite includes a chunk-seam property test: indexing with pathological 17-byte chunks must produce an identical index to whole-file reads.
License
MIT
Nothing above is checked by us. What we check is on the safety report.
Install directly
Runs npx -y mbox-mcp on your machine. Read the scan report first; the gateway never runs local packages.
claude mcp add mbox-mcp -- npx -y mbox-mcp
Mbox: common questions
- Is Mbox MCP server safe?
- Yes, by our scan: it is graded A (88/100). Read the Mbox safety report
- How do I install Mbox?
- It runs on your machine. Copy the Claude Code, Claude Desktop or Cursor config from the install section.
- Does Mbox need an API key?
- Not as far as the registry entry and our scan can tell: no credentials are declared or required.
- Is Mbox maintained?
- The last commit was 40 days ago (2026-08-14). The latest release is v0.1.1.
- What can I use instead of Mbox?
- Servers from other publishers that do the same job: Mailwarden MCP server, dead-letter MCP server and emailmd MCP server. Compare all Mbox alternatives.
Alternatives to Mbox
Same job from other publishers: the closest match first, then the best rated.
- MailwardenGmail MCP server for email triage: search, labels, archive, trash, unsubscribe, snooze.not reviewedGrowingA
- dead-letterConvert .eml email exports to clean Markdown for RAG, LLM pipelines, and local knowledge basesnot reviewedGrowingA
- emailmdRender markdown into email-safe HTML, lint drafts for deliverability problems, and preview emails.not reviewedEstablishedA
- OpenOSINTAI-powered OSINT agent & MCP server. 16 tools: email, breach, IP, WHOIS, DNS, Shodan, GitHub & more.not reviewedEstablishedC
- Agent-Native MailAgent-Native Superhuman - email client with keyboard shortcuts and AI triagenot reviewedEstablishedA