Fastmail MCP Server

v1.2.0 · Open Source · TypeScript

Fastmail for MCP clients.

An open-source server that gives AI assistants full access to Fastmail email, calendars, and contacts over JMAP.

terminal
# Install globally
npm install -g @jordonh19/fastmail-mcp-server

# Or run directly with npx
FASTMAIL_API_TOKEN="fm1-..." \
  npx @jordonh19/fastmail-mcp-server

# HTTP transport mode
npx @jordonh19/fastmail-mcp-server \
  --transport http --port 3000

Everything your assistant needs
to work with Fastmail.

A structured tool surface for reading, writing, and managing email, calendar events, contacts, and mailboxes. Built with JMAP for reliability and MCP for interoperability.

Email Operations

Search, read, thread, reply, forward, draft, send, archive, move, label, flag, bulk-manage, and download attachments.

25 tools

Calendar Control

List calendars, query events, create meetings, update participants and alerts, and delete events.

6 tools

Contacts

Search contacts, create cards, update organizations and details, and browse across address books.

6 tools

Analytics & Diagnostics

Mailbox stats, account summaries, capability checks, and token scope troubleshooting.

4 tools

Web UI Dashboard

Built-in live dashboard in HTTP mode with real-time tool-call log, connection tracking, and server health — secured by a one-time access token.

HTTP mode

Claude Desktop Extension

One-command DXT packaging for drag-and-drop installation in Claude Desktop with guided API token setup.

npm run build:dxt

45 tools across 9 focused groups.

Tools are organized into logical groups instead of a flat list. Each group has a clear scope so your AI assistant can discover and use the right tool without confusion.

8

Email Read

search_emails, get_email, get_thread, get_unread_emails, get_latest_emails, get_mailbox_emails, get_email_attachments, download_attachment

5

Email Write

send_email, reply_email, forward_email, create_draft, send_draft

12

Email Manage

move_email, add_labels, remove_labels, update_email_flags, delete_email, bulk_email_action, bulk_add_labels, bulk_remove_labels, archive_email, mark_mailbox_read, get_mailbox_stats, get_account_summary

4

Mailbox

list_mailboxes, create_mailbox, rename_mailbox, delete_mailbox

6

Calendar

list_calendars, get_calendar_events, get_calendar_event, create_calendar_event, update_calendar_event, delete_calendar_event

6

Contacts

list_address_books, search_contacts, get_contact, create_contact, update_contact, delete_contact

1

Identity

get_identities — discover sender identities before composing mail

2

Sampling

summarize_email, suggest_reply — AI-powered via MCP sampling

1

Diagnostics

check_function_availability — verify JMAP capabilities

Works with the clients you already use.

Connects to any MCP-compatible client over stdio or HTTP. One package, consistent behavior, no per-client configuration.

Claude Desktop
Anthropic AI assistant
Cursor
AI-native code editor
GitHub Copilot
AI pair programmer
ChatGPT
OpenAI conversational AI
Windsurf
Agentic IDE
Gemini
Google AI assistant
Amp
Sourcegraph coding agent
Zed
High-performance editor
VS Code
Editor MCP integration
JetBrains
IDE AI assistant
Replit
Cloud dev platform
Mistral AI
Open-weight models
Amazon Q
AWS developer assistant
Warp
Intelligent terminal
Roo Code
AI coding assistant
Goose
Block AI agent
Neovim
Terminal code editor
LM Studio
Local LLM client
v0
Vercel AI builder
Emacs
Extensible text editor
Codex
OpenAI coding agent
Firebase Genkit
AI framework
Cline
Autonomous coding agent
MCP
Continue
Open-source AI assistant

Running in under a minute.

Generate a Fastmail API token, run the package, and point your MCP client at it.

Create a Fastmail API token

Go to Fastmail Settings → Privacy & Security → Manage API tokens. Grant access to Mail, Calendars, and Contacts.

Run the server

Use stdio for local clients or --transport http for remote access.

FASTMAIL_API_TOKEN="fm1-..." npx @jordonh19/fastmail-mcp-server

Add to your MCP client config

Point your client at the server with a standard MCP configuration entry.

{
  "servers": {
    "fastmail": {
      "command": "npx",
      "args": ["@jordonh19/fastmail-mcp-server"],
      "env": {
        "FASTMAIL_API_TOKEN": "your-api-token"
      }
    }
  }
}

Common questions.

What is Fastmail MCP Server?

An open-source Model Context Protocol server that connects MCP-compatible AI assistants to Fastmail email, calendars, and contacts over JMAP. Built in TypeScript, published on npm.

Which clients does it work with?

Claude Desktop, VS Code, Cursor, Windsurf, and any MCP-compatible client. It defaults to stdio and also supports HTTP transport for remote access.

Do I need a Fastmail API token?

Yes. Generate a token with Mail, Calendars, and Contacts access from your Fastmail account settings under Privacy & Security.

Can it read and send email?

Yes. The 25 email tools cover searching, reading, threading, replying, forwarding, drafting, labeling, archiving, moving, bulk actions, and downloading attachments.

Does it support calendars and contacts?

Yes. 6 calendar tools and 6 contact tools handle event management, address books, and contact CRUD operations.

What changed in v1.2.0?

Added a built-in web UI dashboard for HTTP mode with live tool-call logging, and DXT packaging for one-click Claude Desktop installation. Now at 45 tools across 9 groups.