tbird-mcp
Allows sending emails via Migadu's SMTP service using app passwords, with auto-discovery of identities from Thunderbird configuration.
Provides integrated email reading and sending capabilities by accessing Thunderbird's local mail store and auto-discovering account configurations, allowing management of Thunderbird email accounts.
Allows sending emails via Zoho's SMTP service using app passwords, with auto-discovery of identities from Thunderbird configuration.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@tbird-mcpsearch my inbox for emails about project update from last week"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
tbird-mcp — Thunderbird-aware Mail MCP
An MCP server that reads/searches your mail from Thunderbird's local store and sends mail over SMTP from any of your identities, then files a copy in the account's Sent folder so it shows up in Thunderbird normally.
Thunderbird has no programmatic send API, so "send through Thunderbird" really
means: read Thunderbird's on-disk mbox files, but put outgoing mail on the wire
ourselves via SMTP. Account and identity configuration is auto-discovered from
Thunderbird's prefs.js — you don't re-enter any of it.
What v1 does
Read — every account, from the local mbox store. Streams even multi-gigabyte folders without loading them into memory, and skips messages Thunderbird has flagged deleted-but-not-compacted.
Send — any plain-SMTP identity (Migadu, Zoho, Fastmail, generic SMTP, …), auto-discovered from Thunderbird.
Deferred to v2 — sending as Outlook/hotmail. Microsoft disabled basic SMTP auth for personal accounts, so it needs a Microsoft Graph / OAuth2 app registration. The transport seam is in place (
transports.GraphTransport); until then,send_mailfrom an Outlook identity returns a clear error.
Related MCP server: Email MCP Server
Tools
Tool | Purpose |
| Incoming accounts + their on-disk store dir |
| mbox folders for an account |
| Filter by account/folder/since/before/from/to/subject/body/has_attachment |
| Headers + decoded body |
| Attachment filenames |
| Save attachments (the PDFs) to disk |
| Send-from addresses + whether each can send now |
| Send via SMTP, file a copy in Sent. |
| Re-read prefs.js / credentials.toml after editing |
search_mail returns an opaque id per message; pass it to the read/extract
tools. send_mail defaults to dry_run=True and returns a preview — pass
dry_run=False to actually send.
Install
cd ~/agents/personal/mcp-servers/tbird-mcp
uv sync # creates .venv with the mcp SDK
uv run python tests/make_fixture.py # (tests only) generate the sample mbox
uv run pytest -q # 20+ tests, no real mail sent1. Register with Claude Code
Add to your MCP config (e.g. ~/.claude.json, or via claude mcp add):
{
"mcpServers": {
"tbird": {
"command": "uv",
"args": ["run", "--directory",
"/path/to/tbird-mcp",
"tbird-mcp"]
}
}
}Optional environment overrides:
TBIRD_PROFILE— absolute path to a specific Thunderbird profile dir (default: the active profile fromprofiles.ini).TBIRD_CREDENTIALS— path to the credentials file (default:~/.config/tbird-mcp/credentials.toml).
2. Add credentials (only needed for sending)
Reading needs no credentials. Sending does:
mkdir -p ~/.config/tbird-mcp
cp credentials.toml.example ~/.config/tbird-mcp/credentials.toml
chmod 600 ~/.config/tbird-mcp/credentials.toml
$EDITOR ~/.config/tbird-mcp/credentials.tomlUse app passwords, not your account login passwords:
Migadu — Admin → Mailboxes → the mailbox → App passwords → create one. Aliases can't authenticate; create the app password on the real mailbox and point each alias at it with an
[identity."alias@…"] auth_user = "…"block. One mailbox app password typically covers all aliases on its domain.Zoho — myaccount.zoho.com → Security → App Passwords → generate.
After editing, call reload_config (or restart the server).
3. (Later) v2 — sending as Outlook/hotmail
Outlook/hotmail send needs a one-time, free Azure app registration to obtain a
client ID, then OAuth2 device-code auth against Microsoft Graph's Mail.Send
scope. The graph transport slot is already wired into the identity registry;
v2 fills in GraphTransport.send. Until then, send from a Migadu/Zoho/SMTP
identity, or use Thunderbird directly.
Notes / limitations
Search streams the whole folder file, so a query against a multi-gigabyte folder takes a few seconds — narrow with
account+ a tightlimit.Message ids encode a byte offset into the mbox; if Thunderbird compacts a folder, re-run the search to get fresh ids.
Sub-folders inside
*.sbddirectories aren't enumerated in v1 (top-level folders only).
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- Flicense-qualityAmaintenanceEnables interaction with Thunderbird email client to search and read emails, manage contacts, list calendars, and draft messages with pre-filled content through a local HTTP bridge.264
- Flicense-qualityBmaintenanceEnables email management for a single mailbox via IMAP and SMTP protocols. Supports reading, searching, and sending emails with threading support through stdio or HTTP transports.
- AlicenseAqualityBmaintenanceLocal MCP server for multi-account IMAP/SMTP email (iCloud + Gmail via app-specific passwords). Never marks mail read. Cross-folder search, idempotent sends, TLS verified.8MIT
- Flicense-qualityCmaintenanceCentralizes Thunderbird email operations as MCP tools: read, send, draft, search, attachments.
Related MCP Connectors
Read, search, send, organize, draft and schedule email across your inboxes from any MCP client.
Manage Gmail end-to-end: search, read, send, draft, label, and organize threads. Automate workflow…
Send transactional email over a verified domain — templates, attachments, custom headers.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/neil-zielsdorf/tbird-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server