MultiMail MCP Server

1

Add it to Claude Code

Run this in a terminal.

Run in terminal
claude mcp add --transport http multi-mail https://mcp.multimail.dev/mcp
Required:MULTIMAIL_API_KEY+ 2 optional
README.md

Email for AI agents. Send and receive as markdown with human oversight.

@multimail/mcp-server

MCP server for MultiMail. Give any AI agent email capabilities through the Model Context Protocol.

Quick start

npx @multimail/mcp-server

Requires MULTIMAIL_API_KEY environment variable. Get one at multimail.dev.

By using MultiMail you agree to the Terms of Service and Acceptable Use Policy.

Setup

Option A: Remote server (recommended)

No install required. Connect directly to our hosted server. Authenticates via OAuth in the browser.

{
  "mcpServers": {
    "multimail": {
      "type": "url",
      "url": "https://mcp.multimail.dev/mcp"
    }
  }
}

Works with Claude.ai, Claude Desktop, Claude Code, and any client that supports remote MCP servers.

Option B: Local server (stdio)

Run the server locally. API key is passed as an environment variable.

{
  "mcpServers": {
    "multimail": {
      "command": "npx",
      "args": ["-y", "@multimail/mcp-server"],
      "env": {
        "MULTIMAIL_API_KEY": "mm_live_...",
        "MULTIMAIL_MAILBOX_ID": "01KJ1NHN8J..."
      }
    }
  }
}

Where to add this

Client Config file
Claude Code ~/.claude/.mcp.json
Claude Desktop claude_desktop_config.json
Cursor .cursor/mcp.json in your project
Windsurf ~/.codeium/windsurf/mcp_config.json
Copilot (VS Code) .vscode/mcp.json in your project
OpenCode mcp.json in your project
ChatGPT Desktop Settings > MCP Servers
Any MCP client Consult your client's docs for config location

Environment variables

Variable Required Description
MULTIMAIL_API_KEY Yes Your MultiMail API key (mm_live_...)
MULTIMAIL_MAILBOX_ID No Default mailbox ID. If not set, pass mailbox_id to each tool or call list_mailboxes first.
MULTIMAIL_API_URL No API base URL. Defaults to https://api.multimail.dev.

First-run setup

On first use, MultiMail will prompt you to configure your mailbox. You can also run this explicitly using the configure_mailbox tool:

  • Oversight mode: How much human approval is required (gated_send, monitored, autonomous, etc.)
  • Display name: Sender name shown in emails
  • CC/BCC defaults: Automatically copy addresses on all outbound emails
  • Scheduling: Enable/disable scheduled send and set default gate timing
  • Signature: Email signature block

If you skip this step, MultiMail will remind you on your first tool call.

Tools

Tool Description
list_mailboxes List all mailboxes available to this API key
configure_mailbox Set up mailbox preferences: oversight mode, display name, CC/BCC, scheduling, signature
send_email Send an email with a markdown body. Supports attachments, idempotency_key, and send_at for scheduled delivery.
check_inbox List emails with filters: status, sender, subject, date range, direction, attachments, cursor pagination
read_email Get full email content. Returns trusted metadata and untrusted body as separate content blocks.
reply_email Reply to an email in its existing thread. Supports attachments and idempotency_key.
download_attachment Download an email attachment as base64 with content type
get_thread Get all emails in a conversation thread with participants and metadata
cancel_message Cancel a pending or scheduled email
schedule_email Schedule an email for future delivery with a required send_at time. Edit or cancel before it sends.
edit_scheduled_email Edit a scheduled email's delivery time, recipients, subject, or body before it sends
update_mailbox Update mailbox settings (display name, oversight mode, signature, webhooks)
update_account Update account settings (org name, oversight email, physical address)
delete_mailbox Permanently delete a mailbox (requires admin scope)
resend_confirmation Resend the activation email with a new code
activate_account Activate an account using the code from the confirmation email
tag_email Set, get, or delete key-value tags on emails (persistent agent memory)
add_contact Add a contact to your address book with optional tags
search_contacts Search address book by name or email
get_account Get account status, plan, quota, sending enabled, enforcement tier
create_mailbox Create a new mailbox (requires admin scope)
request_upgrade Request an oversight mode upgrade (trust ladder)
apply_upgrade Apply an upgrade code from the operator
get_usage Check quota and usage stats for the billing period
list_pending List emails awaiting oversight decision (requires oversight scope)
decide_email Approve or reject a pending email (requires ove

Tools (26)

list_mailboxesList all mailboxes available to this API key
configure_mailboxSet up mailbox preferences: oversight mode, display name, CC/BCC, scheduling, signature
send_emailSend an email with a markdown body
check_inboxList emails with filters: status, sender, subject, date range, direction, attachments, cursor pagination
read_emailGet full email content
reply_emailReply to an email in its existing thread
download_attachmentDownload an email attachment as base64 with content type
get_threadGet all emails in a conversation thread with participants and metadata
cancel_messageCancel a pending or scheduled email
schedule_emailSchedule an email for future delivery
edit_scheduled_emailEdit a scheduled email's delivery time, recipients, subject, or body
update_mailboxUpdate mailbox settings
update_accountUpdate account settings
delete_mailboxPermanently delete a mailbox
resend_confirmationResend the activation email
activate_accountActivate an account using the code from the confirmation email
tag_emailSet, get, or delete key-value tags on emails
add_contactAdd a contact to your address book
search_contactsSearch address book by name or email
get_accountGet account status, plan, quota, and sending enabled
create_mailboxCreate a new mailbox
request_upgradeRequest an oversight mode upgrade
apply_upgradeApply an upgrade code from the operator
get_usageCheck quota and usage stats for the billing period
list_pendingList emails awaiting oversight decision
decide_emailApprove or reject a pending email

Environment Variables

MULTIMAIL_API_KEYrequiredYour MultiMail API key
MULTIMAIL_MAILBOX_IDDefault mailbox ID
MULTIMAIL_API_URLAPI base URL

Configuration

claude_desktop_config.json
{"mcpServers": {"multimail": {"command": "npx", "args": ["-y", "@multimail/mcp-server"], "env": {"MULTIMAIL_API_KEY": "mm_live_..."}}}}

Try it

Check my inbox for any unread emails from the last 24 hours.
Draft a reply to the latest email in the thread with subject 'Project Update' confirming receipt.
Send an email to contact@example.com with the summary of our recent meeting in markdown format.
List all my mailboxes and set the default one to my work address.
Search my contacts for 'John Doe' and send him an email about the upcoming deadline.

Frequently Asked Questions

What are the key features of MultiMail?

Native markdown support for email composition. Configurable human oversight modes for agent-driven emails. Support for scheduled email delivery and thread management. Persistent agent memory via email tagging. Remote and local deployment options.

What can I use MultiMail for?

Automating customer support responses with human-in-the-loop approval. Managing project communications directly from an AI coding assistant. Scheduling follow-up emails for sales outreach. Organizing and tagging email threads for long-term agent context.

How do I install MultiMail?

Install MultiMail by running: npx -y @multimail/mcp-server

What MCP clients work with MultiMail?

MultiMail works with any MCP-compatible client including Claude Desktop, Claude Code, Cursor, and other editors with MCP support.

Turn this server into reusable context

Keep MultiMail docs, env vars, and workflow notes in Conare so your agent carries them across sessions.

Need the old visual installer? Open Conare IDE.
Open Conare