Thunderbird Cli

io.github.vitalio-sh由 GitHub 账号 vitalio-sh 发布v1.0.2更新于 Oct 24, 2026

Give AI agents full read/write email access via Mozilla Thunderbird. Zero credentials.

已验证STDIO仅桌面效率与工作流沟通与协作

概览

AI 生成的概览

让 AI 助手通过本机运行的 Mozilla Thunderbird 读取、搜索和撰写邮件,复用 Thunderbird 已有账户,无需另配 IMAP 或 SMTP 凭据。

可以做什么
跨 Thunderbird 账户搜索和读取邮件,可按字段筛选并截断正文以节省 token。查看未读数量等账户统计。撰写、回复和转发邮件,默认保存为草稿。管理文件夹并批量移动邮件,例如按发件人和时间归档。将附件下载到本地文件。
适用场景
适合已经用 Thunderbird 管理邮件、希望助手帮忙筛选、搜索或起草回复而不交出 IMAP 或 SMTP 凭据的用户。也适合多账户收件箱和清理旧邮件。
运行要求
需在桌面环境本地运行,依赖 Node.js:从 npm 安装 CLI 与 bridge 包、安装已签名的 Thunderbird 扩展,并要求 Thunderbird 128 或更高版本。bridge 守护进程需保持运行;TB_BRIDGE_HOST 和 TB_BRIDGE_PORT 用于指定其地址,默认 127.0.0.1 和端口 7700。
安装前请注意
该服务器对所连接 Thunderbird 账户中的全部邮件具有读写权限,助手可移动、归档或删除邮件并创建草稿。永久删除据称需要显式确认参数,撰写、回复和转发只保存为草稿而不直接发送。邮件内容会暴露给模型,正文和链接存在提示注入风险。bridge 仅监听本机。

安装

在 SourceWeft 中

  1. 打开 控制台中的 Thunderbird Cli,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。

其他 MCP 客户端

参照 仓库 中的启动说明。

README

thunderbird-cli

Give Claude (and other AI agents) full access to your email through Mozilla Thunderbird.

[tests] [License: MIT] [Node] [Thunderbird] [MCP]

[thunderbird-cli demo — Claude answering an email-overview question via MCP]

Why

IMAP libraries force you to manage credentials, OAuth flows, and sync state — dangerous in an AI-agent context. Thunderbird already solves all of that. This tool treats Thunderbird as the source of truth and exposes every capability as a CLI command or MCP tool, so AI agents can read, search, and write email without ever touching a password.

Tested at scale: 22 accounts, 249,000+ messages, 86,000+ unread — all managed live through a single CLI.

Features

  • 🔐 Zero credential exposure — all IMAP/SMTP stays in Thunderbird
  • 🤖 Claude Desktop ready — 12 MCP tools, one-line config
  • 📨 38 CLI commands — read, search, compose, reply, bulk ops, folder CRUD, attachments
  • 🛡️ Safe by default — compose/reply/forward save as drafts; permanent delete requires --confirm
  • 🎯 Token-optimized — --fields selection, --compact mode, --max-body truncation
  • 🏠 Localhost-only — no cloud, no telemetry, nothing leaves your machine
  • ✅ Thunderbird 128+ — signed and approved on addons.thunderbird.net
  • 🧪 80 tests — 46 CLI/bridge + 34 MCP integration tests

Quick Start

bash
# 1. Install CLI + bridge from npmnpm install -g thunderbird-cli thunderbird-cli-bridge
# 2. Install the signed Thunderbird extension#    Download: https://github.com/vitalio-sh/thunderbird-cli/releases/latest#    Thunderbird → Add-ons → ⚙ → Install Add-on From File… → thunderbird_ai_bridge-*.xpi
# 3. Start the bridge daemon (keep running)tb-bridge
# 4. Try ittb healthtb stats

Full setup guide (including background service, Docker, troubleshooting): docs/SETUP.md

Usage

bash
# How many unread across all accounts?tb stats
# Find invoices from AWS in the last 30 daystb search "invoice" --from aws --since 30d --fields id,author,subject,date
# Read a message (token-efficient — headers + text only, max 500 chars)tb read 89900 --max-body 500
# Reply as draft (never auto-sends)tb reply 89900 --body "Thanks, I'll review tomorrow"
# Download a PDF attachmenttb attachment-download 11 1.2 --output invoice.pdf
# Bulk archive old newsletterstb bulk move "account1://INBOX" "account1://Archive" \  --from "newsletter@" --older-than 30

Full command reference: docs/COMMANDS.md

Use with Claude Desktop

Add to your Claude Desktop config (~/Library/Application Support/Claude/claude_desktop_config.json on macOS):

json
{  "mcpServers": {    "thunderbird": {      "command": "npx",      "args": ["-y", "thunderbird-cli-mcp"]    }  }}

Restart Claude Desktop. Now ask:

"How many unread emails do I have?" "Find invoices from AWS last month" "Reply to message 118 saying I'll attend — save as draft" "Download the PDF attachment from message 245"

Full MCP guide: mcp/README.md

Companion skill for Claude

A Claude Skill ships alongside the MCP server. It teaches Claude how to use the 12 email tools well — token-efficient field selection, draft-by-default safety, trust-metadata checking before acting on links, recipes for common workflows. Install it from skills/thunderbird-cli/:

bash
# Claude Codecp -r skills/thunderbird-cli ~/.claude/skills/
# Claude.ai — zip and upload via Settings → Capabilities → Skillscd skills && zip -r thunderbird-cli.zip thunderbird-cli

Without the skill, the MCP still works. With it, Claude automatically uses the safest defaults and most efficient response shapes.

How It Works

[thunderbird-cli architecture — clients → npm entrypoints → bridge daemon → Thunderbird]

ComponentRole
Extension (extension/)Thunderbird WebExtension. Calls messenger.* APIs. 43 route handlers.
Bridge (bridge/)Stateless HTTP↔WebSocket proxy daemon. No business logic.
CLI (cli/)tb command — 38 commands. Thin HTTP client. JSON output.
MCP (mcp/)tb-mcp server — 12 curated tools for Claude Desktop.

Thunderbird is the source of truth. The CLI never caches or stores email data.

How this compares

ToolCredentialsAI-agent readyCompose / sendMulti-accountRuntime
thunderbird-clistay in Thunderbird✅ CLI + MCP, JSON out✅ draft / open / send✅ any Thunderbird accountNode.js
Raw IMAP libs (imapflow, imaplib)you manage themyou wire it yourselfSMTP, separatemanual per accountvaries
notmuchvia your MUACLI only, text output❌ reader onlyvia configC
mu / mu4evia your MUACLI only, sexp/text❌ reader onlyvia configC
himalayain config files✅ CLI, JSON out✅✅Rust
mutt / neomuttin muttrc❌ interactive TUI✅via configC

The niche: you already trust Thunderbird with your credentials and account state. This tool surfaces that as a machine-readable API without asking you to re-configure IMAP/SMTP anywhere else.

Documentation

DocWhat's inside
docs/SETUP.mdInstallation, background service, Docker, troubleshooting
docs/COMMANDS.mdFull reference for all 38 CLI commands
docs/CLAUDE.mdAI-agent-focused quick reference + security rules
skills/thunderbird-cli/SKILL.mdCompanion Claude Skill — recipes, safety defaults, token patterns
mcp/README.mdClaude Desktop integration guide
AGENTS.mdGuide for AI agents editing this codebase
SPEC.mdFull technical specification
SECURITY.mdThreat model, prompt-injection defenses
CONTRIBUTING.mdDev setup, code style, PR process
CHANGELOG.mdRelease notes

Contributing

Contributions welcome. Please open an issue first to discuss non-trivial changes. See CONTRIBUTING.md for local dev setup and the 80-test suite.

License

MIT — see LICENSE

来源:README.md,提交 465613d

工具

0
SourceWeft 尚未在沙箱中启动过该软件包,因此其工具未知。

版本历史

1
  1. v1.0.2最新Sep 16, 2026

评分

已满足适用检查项的 50%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通25 分

    请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。

  • 已声明认证方式10 分

    请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。

  • 已列出工具15 分

    请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。

  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分