MCP Email Service
A service for managing multiple email accounts from various providers like 163, Gmail, QQ, and Outlook.
Mailbox CLI
CLI-first email management for multi-account IMAP/SMTP with a local sync cache.
Primary interface: the mailbox CLI (Node.js implementation). This repo ships
prebuilt platform binaries via npm (no Python required for end users).
Supported Providers
- 163 Mail (mail.163.com / mail.126.com)
- QQ Mail (mail.qq.com)
- Gmail (mail.google.com)
- Outlook/Hotmail
- Custom IMAP servers
Install
npm (recommended)
npm install -g @leeguoo/mailbox-cli
mailbox --help
The npm package ships prebuilt binaries per platform (no Python required).
As an AI Skill (Claude Code / Cursor / etc.)
# Project scope — installs into ./.claude/skills/mailbox (or ./.cursor/skills/...):
npx skills add leeguooooo/Mailbox --skill mailbox
# User scope — installs into ~/.claude/skills/mailbox:
npx skills add leeguooooo/Mailbox --skill mailbox -g
The skill assumes the CLI is on PATH (npm install -g @leeguoo/mailbox-cli).
For the biggest speedup also run mailbox daemon install once.
MCP server (Claude Desktop / Code / Cursor)
mailbox mcp config --json # prints a paste-ready mcpServers entry
From source (development)
pnpm install
pnpm test
# build a local platform binary into mailbox-cli/packages/<platform>/bin/mailbox
pnpm build:binary
Configure accounts
mkdir -p ~/.config/mailbox
cp examples/accounts.example.json ~/.config/mailbox/auth.json
Config locations:
- Credentials:
~/.config/mailbox/auth.json - Other settings:
~/.config/mailbox/config.toml
Common commands
# CLI help
mailbox --help
# list accounts
mailbox account list --json
# list unread emails (cache by default; --from filters cache-side)
mailbox email list --unread-only --limit 20 --json
mailbox email list --account-id my_account_id --from "newsletter" --json
# show one email (response includes list_unsubscribe when the header is set)
mailbox email show 123456 --account-id my_account_id --json
# mark read (use --dry-run to validate first)
mailbox email mark 123456 --read --account-id my_account_id --folder INBOX --dry-run --json
mailbox email mark 123456 --read --account-id my_account_id --folder INBOX --confirm --json
# delete
mailbox email delete 123456 --account-id my_account_id --folder INBOX --confirm --json
# bulk mutate by sender or subject (no UID list needed)
mailbox email mark --from "[email protected]" --read --confirm --account-id my_account_id --json
mailbox email delete --from "newsletter" --account-id my_account_id --json # dry-run preview
mailbox email delete --subject "[ad]" --account-id my_account_id --confirm --json
Cache + sync
- Cache DB default:
~/.local/share/mailbox/email_sync.db - Listing uses cache by default where possible. Add
--liveto force IMAP.
mailbox sync status --json
mailbox sync force --json
mailbox sync init
mailbox sync daemon
AI usage guide
If you're integrating this CLI into an AI agent, start here:
docs/AI_SKILL_MAILBOX_CLI.md
OpenClaw integration
This repo includes an OpenClaw skill at skills/mailbox/SKILL.md.
OpenClaw loads skills from:
<workspace>/skills~/.openclaw/skills
Quick link helper (symlink into ~/.openclaw/skills):
./scripts/link_openclaw_skill.sh
Force replace an existing link:
./scripts/link_openclaw_skill.sh --force
To use this repo without copying files, add the repo skills directory to
skills.load.extraDirs in ~/.openclaw/openclaw.json:
{
"skills": {
"load": {
"extraDirs": [
"/path/to/mcp-email-service/skills"
]
}
}
}
OpenClaw handles channel delivery and scheduling; mailbox returns structured JSON outputs and optional text summaries.
Verify OpenClaw picked up the skill:
openclaw skills list --eligible
openclaw skills check
Contract
docs/CLI_JSON_CONTRACT.md
Serveurs connexes
Inbox Zero
AI personal assistant for email Inbox Zero
RetellAI
Interact with RetellAI's voice services to create conversational voice AI.
messages
Fuzzy search and browse Apple Messages/iMessage from CLI or MCP server
Apple Mail MCP
Fast MCP server for Apple Mail with batch JXA (87x faster) and FTS5 search index (700-3500x faster).
Vapi MCP Server
A server for integrating with Vapi's voice AI APIs using function calls.
Human-in-the-Loop Slack MCP Server
Allows AI assistants to request information and receive responses from humans via Slack.
NANDA AI Agent Sunday Hack
An MCP server integrating WhatsApp messaging and ElevenLabs AI voice capabilities into VS Code.
Lara Translate
Translate text with language detection, context-awareness, and translation memories using the Lara Translate API.
AgentDM
Agent-to-agent messaging platform. any MCP-compatible agent sends and receives direct messages
BlueSky
Access the BlueSky social network data via its official API.