Package Exports
- @neomody77/mcp-mail-organizer
- @neomody77/mcp-mail-organizer/dist/index.js
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (@neomody77/mcp-mail-organizer) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
MCP Mail Organizer
A Model Context Protocol (MCP) server that provides unified mail operations with atomic tools for organizing and managing your email efficiently.
Features
- Mailbox Management: List, create mailboxes/folders
- Email Search: Search emails with multiple criteria (from, to, subject, date ranges, flags, etc.)
- Email Operations: Get detailed email information, move emails, delete emails
- Flag Management: Mark emails as read/unread, add/remove custom flags
- Email Sending: Send emails with text/HTML content and attachments
- Safety: Preview mode for destructive operations (delete, move)
Installation
Global Installation (Recommended)
npm install -g mcp-mail-organizerLocal Installation
- Clone the repository:
git clone https://github.com/neomody77/mcp-mail-organizer.git
cd mcp-mail-organizer
npm install
npm run build- Create environment file:
cp .env.example .mail.env- Configure your email credentials in
.mail.env:
SMTP_HOST=smtp.gmail.com
SMTP_PORT=587
SMTP_SECURE=false
SMTP_USER=your.email@gmail.com
SMTP_PASS=your-app-specific-password
IMAP_HOST=imap.gmail.com
IMAP_PORT=993
IMAP_SECURE=true
IMAP_USER=your.email@gmail.com
IMAP_PASS=your-app-specific-passwordUsage with Claude Code
Global Installation Usage
Add to your Claude Code .mcp.json file:
{
"mcpServers": {
"mail-organizer": {
"command": "mcp-mail-organizer",
"args": ["--env-file", ".mail.env"],
"cwd": ".",
"env": {}
}
}
}Local Installation Usage
{
"mcpServers": {
"mail-organizer": {
"command": "node",
"args": ["./mcp-mail-organizer/dist/index.js", "--env-file", ".mail.env"],
"cwd": ".",
"env": {}
}
}
}Available Tools
Mailbox Management
list_mailboxes: List all available mailboxes/folderscreate_mailbox: Create a new mailbox/folder
Email Search & Retrieval
search_emails: Search emails with criteria (from, to, subject, date ranges, flags)get_email: Get detailed information about a specific email
Email Operations
move_emails: Move emails to another mailboxdelete_emails: Delete emails permanently (with preview mode)mark_seen: Mark emails as read or unreadadd_flags: Add flags to emailsremove_flags: Remove flags from emails
Email Sending
send_mail: Send an email with text/HTML content and optional attachments
Example Usage
Search for unread emails
{
"name": "search_emails",
"arguments": {
"unreadOnly": true,
"sinceDays": 7,
"limit": 10
}
}Move emails to folder
{
"name": "move_emails",
"arguments": {
"uids": [123, 456],
"destination": "Archive/2025"
}
}Send email
{
"name": "send_mail",
"arguments": {
"to": "recipient@example.com",
"subject": "Test Subject",
"text": "Hello from MCP Mail Organizer!"
}
}Safety Features
- Preview Mode: Destructive operations (delete, bulk move) default to preview mode
- Batch Limits: Large operations are recommended to be chunked (≤ 200 messages per batch)
- Fallback Support: Automatic fallback from MOVE to COPY+DELETE if server doesn't support MOVE
- Environment Security: All credentials stored in
.envfiles, not in configuration
Email Provider Setup
Gmail
- Enable 2-factor authentication
- Generate an app-specific password
- Use IMAP settings:
- IMAP: imap.gmail.com:993 (SSL)
- SMTP: smtp.gmail.com:587 (STARTTLS)
Outlook/Hotmail
- Enable IMAP in Outlook settings
- Use IMAP settings:
- IMAP: outlook.office365.com:993 (SSL)
- SMTP: smtp-mail.outlook.com:587 (STARTTLS)
139.com (China Mobile)
- Enable IMAP/SMTP in webmail settings
- Login to webmail.139.com → Settings → Enable IMAP/SMTP
- Use IMAP settings:
- IMAP: imap.139.com:993 (SSL)
- SMTP: smtp.139.com:587 (STARTTLS)
QQ Mail
- Generate authorization code in QQ Mail settings
- Use IMAP settings:
- IMAP: imap.qq.com:993 (SSL)
- SMTP: smtp.qq.com:587 (STARTTLS)
Troubleshooting
The server includes comprehensive debug logging. If you encounter issues:
- Environment Variables: The server validates all required variables on startup
- Connection Testing: Automatically tests SMTP/IMAP connections
- Debug Output: Detailed logging shows exactly where failures occur
- Preview Mode: Destructive operations show preview by default
Development
npm run dev # Watch mode for development
npm run build # Build TypeScript
npm start # Start production serverContributing
Contributions are welcome! Please feel free to submit a Pull Request.
Repository
License
MIT