A side-by-side look at the Titan Email MCP and Jmap MCP MCP servers: transport, auth, tools, quality signals, and the config to install either one in Claude, Cursor, Windsurf or VS Code.
Verdict: choose Titan Email MCP for communication work as a local process; choose Jmap MCP for communication over a hosted endpoint. You can also run both side by side in one mcpServers block.
TITAN_EMAIL, TITAN_PASSWORD, TITAN_PROVIDER, TITAN_FROM_NAME, TITAN_ALLOW_SEND, TITAN_IMAP_HOST, TITAN_IMAP_PORT, TITAN_SMTP_HOST.test_connection, list_folders, list_emails.JMAP_SESSION_URL, JMAP_BEARER_TOKEN.get_mailboxes, search_emails, get_emails.Rows where the two servers differ are marked.
| Spec | T Titan Email MCP | |
|---|---|---|
| Category | Communication | Communication |
| Quality signal | 53/100 · Good | 60/100 · Good |
| Install command | Confirmed | Confirmed |
| Transport | Local subprocess (stdio) | Remote HTTP/SSE |
| Auth | other | API key required |
| Pricing | Free | BYOK (pay the provider) |
| Required env vars | TITAN_EMAILTITAN_PASSWORDTITAN_PROVIDERTITAN_FROM_NAMETITAN_ALLOW_SENDTITAN_IMAP_HOSTTITAN_IMAP_PORTTITAN_SMTP_HOST | JMAP_SESSION_URLJMAP_BEARER_TOKEN |
| Verified owner | Community listing | Community listing |
| GitHub stars | 0 | 176 |
| Directory activity | 0 views 0 installs 0 upvotes | 1 views 0 installs 0 upvotes |
| Tools | 10 | 11 |
| Full listing | View Titan Email MCP | View Jmap MCP |
test_connectionVerifies IMAP + SMTP login without touching any mail. **Run this first.list_foldersFolders with message / unread counts.list_emailsLatest emails in a folder (optionally unread only).search_emailsFilter by from, to, subject, text, date range, unread.read_emailFull message by UID: headers, text body, attachment list.send_emailSend new mail (copy saved to Sent). Disabled when `TITAN_ALLOW_SEND=false`.reply_emailThreaded reply / reply-all, or save the reply as a draft instead of sending.save_draftSave to Drafts without sending — always available, even in read-only mode.move_emailMove messages to another folder (Archive, Trash, etc.).set_flagsMark read/unread, flag/unflag.get_mailboxesList mailboxes/folders with their IDs, names, and metadata. **Call this first**search_emailsSearch emails with filters. **All filters are AND'd together.** Returns onlyget_emailsRetrieve specific emails by their IDs. Use `properties` to request only what youget_threadsGet email threads by their IDs. Thread IDs come from `get_emails` responsesget_email_changesGet IDs of emails created, updated, or destroyed since a previous state. Use theget_search_updatesGet changes within a previous search query since its `queryState`. Must use themark_emailsMark emails as read/unread or flagged/unflagged.move_emailsMove emails to a different mailbox. Use `get_mailboxes` to find the targetdelete_emailsDelete emails permanently (cannot be undone). Prefer moving to Trash viasend_emailSend a new email. Requires either `textBody` or `htmlBody` (or both).reply_to_emailReply to an existing email. Automatically sets To/CC, Re: subject prefix, andPaste either block (or both) into your client config, e.g. claude_desktop_config.json or ~/.cursor/mcp.json. We only show a config when the install command is confirmed.
{
"mcpServers": {
"titan-email-mcp": {
"command": "npx",
"args": [
"-y",
"titan-email-mcp"
],
"env": {
"TITAN_EMAIL": "YOUR_TITAN_EMAIL_HERE",
"TITAN_PASSWORD": "YOUR_TITAN_PASSWORD_HERE",
"TITAN_PROVIDER": "YOUR_TITAN_PROVIDER_HERE",
"TITAN_FROM_NAME": "YOUR_TITAN_FROM_NAME_HERE",
"TITAN_ALLOW_SEND": "YOUR_TITAN_ALLOW_SEND_HERE",
"TITAN_IMAP_HOST": "YOUR_TITAN_IMAP_HOST_HERE",
"TITAN_IMAP_PORT": "YOUR_TITAN_IMAP_PORT_HERE",
"TITAN_SMTP_HOST": "YOUR_TITAN_SMTP_HOST_HERE"
}
}
}
}
{
"mcpServers": {
"wyattjoh-jmap-mcp": {
"url": "https://api.fastmail.com/jmap/session"
}
}
}