About Fastmail MCP
Fastmail MCP is an MCP server published by gnapse in the Communication category: an MCP server to connect to Fastmail, or other jmap-based email services.
The repository has 4 stars and 1 forks, with the last commit a year ago. Six months or more without a commit doesn't mean the server is broken, but check the open issues before depending on it in production.
Install
git clone https://github.com/gnapse/fastmail-mcpThis server has no ConduID identity, so agent calls to it are not receipted. Pin the version you install and review the source before granting it credentials.
Tools (10)
archive-threadsMove all emails in one or more threads to the Archive mailbox
Parameters not published.
delete-threadsMove all emails in one or more threads to the Trash mailbox (soft delete)
Parameters not published.
get-email-detailsGet details about an email
Parameters not published.
list-mailboxesList all mailboxes, with their IDs, names, roles, and total and unread email counts
Parameters not published.
list-thread-messagesList the emails in a thread (conversation)
Parameters not published.
list-threadsList the email threads in a mailbox, or all threads from all mailboxes
Parameters not published.
mark-thread-unreadMark emails in a thread as unread (all or just the last)
Parameters not published.
mark-threads-readMark all emails in one or more threads as read
Parameters not published.
move-threads-to-mailboxMove all emails in one or more threads to a target mailbox
Parameters not published.
search-threadsSearch for email threads by subject, sender, recipients, body, and more
Parameters not published.
Ask AI
Ask AI about Fastmail MCP
Powered by Claude · Grounded in docs
Security checks
Static checks derived from the repository 19 hours ago. Heuristics on the source, not an audit.
- ✓README presentThe repository ships documentation.
- ✓License declaredUsable under a stated license.
- !Tests presentNo tests found. Behaviour changes may go unnoticed between versions.
- ✓Dependencies pinnedA lockfile pins dependency versions.
- ✓No dynamic code executionSource scan found no eval, dynamic Function, or shell execution.
- !Scoped permissionsDoesn't declare a permission scope. Assume it can do anything its process can.
README
Fastmail MCP Server
An MCP server to connect to Fastmail, or other jmap-based email services
User Setup
-
Clone this repository
git clone https://github.com/gnapse/fastmail-mcp -
Install dependencies and set up environment
npm run setup -
Add this
fastmail-mcpsection to yourmcp.jsonconfig in Cursor, Claude, Raycast, etc.{ "mcpServers": { "fastmail-mcp": { "type": "stdio", "command": "node", "args": [ "/Users/<your_user_name>/code/fastmail-mcp/dist/mcp-server.js" ], "env": { "JMAP_BEARER_TOKEN": "your-jmap-bearer-token-here", "JMAP_SESSION_URL": "https://api.fastmail.com/jmap/session" } } } } -
Update the configuration above as follows
- Replace
JMAP_BEARER_TOKENwith your Fastmail API token (or that of any other JMAP email provider) - (Optional) Replace
JMAP_SESSION_URLif you're using an email provider other than Fastmail - Replace the path in the
argsarray with the correct path to where you cloned the repository
- Replace
Features
This project is in its early stages. Expect more and/or better tools soon.
Nevertheless, our goal is to provide a small set of tools that enable complete workflows, rather than just atomic actions, striking a balance between flexibility and efficiency for LLMs.
Available Tools
- list-mailboxes: List all mailboxes, with their IDs, names, roles, and total and unread email counts
- search-threads: Search for email threads by subject, sender, recipients, body, and more
- list-threads: List the email threads in a mailbox, or all threads from all mailboxes
- list-thread-messages: List the emails in a thread (conversation)
- get-email-details: Get details about an email
- move-threads-to-mailbox: Move all emails in one or more threads to a target mailbox
- mark-threads-read: Mark all emails in one or more threads as read
- mark-thread-unread: Mark emails in a thread as unread (all or just the last)
- archive-threads: Move all emails in one or more threads to the Archive mailbox
- delete-threads: Move all emails in one or more threads to the Trash mailbox (soft delete)
Dependencies
- MCP server using the official @modelcontextprotocol/sdk
- JMAP email access via jmap-jam
Development Setup
-
Install dependencies and set up environment
npm run setup -
Configure environment variables Update the
.envfile with your JMAP credentials:JMAP_BEARER_TOKEN=your-jmap-bearer-token-here JMAP_SESSION_URL=https://api.fastmail.com/jmap/session -
Run the MCP server with inspector
npm run dev
If you make changes to the code locally, you need to update the build:
npm run build
README fetched from the repository 19 hours ago. The original is authoritative.