email-mcp
email-mcp
MCP server (stdio) exposing structured email tools over IMAP/SMTP for multiple
accounts: email_list_accounts, email_list_folders, email_search,
email_read, email_attachment, email_mark, email_move, email_delete,
email_send, email_authenticate.
Setup
npm install
npm run buildCopy accounts.example.json to ~/.config/email-mcp/accounts.json (or set
EMAIL_MCP_CONFIG) and fill in your accounts.
auth.type: "password"— plain IMAP LOGIN / SMTP AUTH.passis either a literal or a 1Password reference (op://vault/item/field), resolved viaop readat first use — theopCLI must be signed in.auth.type: "m365-oauth"— Exchange Online / Microsoft 365 via XOAUTH2 device-code flow (basic-auth IMAP is dead there).tenantis your domain or tenant ID;clientIdis optional and defaults to Thunderbird's public client. Run theemail_authenticatetool once per account; the refresh token is cached at~/.config/email-mcp/tokens/<account>.json(chmod 600).appendToSent: true— copy sent mail to the\Sentfolder via IMAP APPEND (for servers that don't save it automatically; keepfalsefor M365/Gmail).
Register with Claude Code (user scope)
claude mcp add --scope user email -- node /path/to/email-mcp/dist/index.jsOr in JSON config:
{
"mcpServers": {
"email": {
"command": "node",
"args": ["/path/to/email-mcp/dist/index.js"],
"env": { "EMAIL_MCP_CONFIG": "/absolute/path/to/accounts.json" }
}
}
}Skill
Symlink the bundled orchestration skill into your personal skills directory so Claude Code picks it up:
ln -s /path/to/email-mcp/skills/email-manager ~/.claude/skills/email-managerDevelopment
npm test # vitest unit suite (no network)
npm run build # tsc → dist/Manual end-to-end testing: run the server and exercise each tool against a real account.
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/sasha-id/email-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server