Gmail vs Jmap MCP
A side-by-side look at the Gmail 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 Gmail 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.
Which MCP server should you choose?
Choose Gmail when
- You need dedicated capabilities in the Communication domain.
- You prefer a local stdio subprocess transport.
- You have the keys it needs:
GOOGLE_CLIENT_ID, GOOGLE_CLIENT_SECRET, AUTH_MODE, GOOGLE_SERVICE_ACCOUNT_KEY_FILE, REDIRECT_URI, TOKEN_STORE_URI, DCR_STORE_URI.
Choose Jmap MCP when
- You need dedicated capabilities in the Communication domain.
- You prefer a remote HTTP/SSE transport.
- Its auth model fits you: API key required.
- You have the keys it needs:
JMAP_SESSION_URL, JMAP_BEARER_TOKEN. - You want tools like
get_mailboxes, search_emails, get_emails.
Feature & specification comparison
Rows where the two servers differ are marked.
| Spec | ||
|---|---|---|
| Category | Communication | Communication |
| Quality signal | 47/100 · Fair | 60/100 · Good |
| Install command | Confirmed | Confirmed |
| Transport | Local subprocess (stdio) | Remote HTTP/SSE |
| Auth | Not declared | API key required |
| Pricing | Not declared | BYOK (pay the provider) |
| Required env vars | GOOGLE_CLIENT_IDGOOGLE_CLIENT_SECRETAUTH_MODEGOOGLE_SERVICE_ACCOUNT_KEY_FILEREDIRECT_URITOKEN_STORE_URIDCR_STORE_URI | JMAP_SESSION_URLJMAP_BEARER_TOKEN |
| Verified owner | Community listing | Community listing |
| GitHub stars | 5 | 178 |
| Directory activity | 5 views 0 installs 0 upvotes | 2 views 0 installs 0 upvotes |
| Tools | Not listed | 12 |
| Full listing | View Gmail | View Jmap MCP |
Tools & capabilities
Gmail tools
No tool names declared yet. Check the project README from the listing page.
Jmap MCP tools 12
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 targetpatch_email_mailboxesAdd or remove selected mailbox memberships without replacing unspecifieddelete_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, and
Ready-to-paste client configs
Paste 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.
Gmail
{
"mcpServers": {
"gmail-3": {
"command": "npx",
"args": [
"-y",
"@mcp-z/cli"
],
"env": {
"GOOGLE_CLIENT_ID": "YOUR_GOOGLE_CLIENT_ID_HERE",
"GOOGLE_CLIENT_SECRET": "YOUR_GOOGLE_CLIENT_SECRET_HERE",
"AUTH_MODE": "YOUR_AUTH_MODE_HERE",
"GOOGLE_SERVICE_ACCOUNT_KEY_FILE": "YOUR_GOOGLE_SERVICE_ACCOUNT_KEY_FILE_HERE",
"REDIRECT_URI": "YOUR_REDIRECT_URI_HERE",
"TOKEN_STORE_URI": "YOUR_TOKEN_STORE_URI_HERE",
"DCR_STORE_URI": "YOUR_DCR_STORE_URI_HERE"
}
}
}
}
Jmap MCP
{
"mcpServers": {
"wyattjoh-jmap-mcp": {
"url": "https://api.fastmail.com/jmap/session"
}
}
}
Frequently asked questions
Gmail is categorized under Communication and uses a local stdio subprocess. Jmap MCP belongs to Communication and uses a remote HTTP/SSE transport. Pick Gmail for communication work and Jmap MCP for communication.
Copy the mcpServers block from the config section on this page into your client's config (for example claude_desktop_config.json or ~/.cursor/mcp.json), then fully restart the client.
Gmail has no declared pricing — check the project's own site. Jmap MCP is bring-your-own-key: usage is billed by the API provider you supply a key for. Auth: api key required. If a server needs environment variables such as API keys, define them under the env key in your client's MCP config.
Yes. MCP clients support multiple servers: add gmail-3 and wyattjoh-jmap-mcp as separate keys in the same mcpServers object, and your assistant will call tools from either one.
On AllMCPs, Gmail has a quality signal of 47/100 (Fair) with 5 views, 0 installs and 5 GitHub stars. Jmap MCP has 60/100 (Good) with 2 views, 0 installs and 178 GitHub stars.