mcpField
M
mcp-mailtrap

mcp-mailtrap

Local
github.com/pijuszCommunication3Updated 6d ago

About mcp-mailtrap

mcp-mailtrap connects MCP clients to Mailtrap email operations for teams managing delivery, contacts, and testing. Its tools cover analytics, sending, templates, account management, and sandbox inbox inspection.

Key features

  1. 01Review delivery and engagement analytics
  2. 02Send transactional and bulk email
  3. 03Manage templates and contacts
  4. 04Inspect sandbox messages and spam analysis
  5. 05Manage domains, accounts, and tokens

Use cases

  1. 01Investigate delivery and engagement trends
  2. 02Send or test email messages
  3. 03Update contact lists and templates
  4. 04Inspect sandbox messages before delivery

MCP support

The MCP server exposes Mailtrap analytics, email sending, contacts, templates, sandbox, domain, and account operations as tools for MCP clients.

Configuration

Local server config is the same for every client. Copy it into your client’s MCP config file.

mcp.json · Universal config
{
"mcpServers": {
"pijusz-mcp-mailtrap": {
"command": "npx",
"args": [
"-y",
"mcpj-mailtrap"
]
}
}
}
Run commandnpx -y mcpj-mailtrap

Local servers need a runtime on your machine (e.g. Node.js 18+). Config file locations differ by client; see your client’s docs.

Packages
npmmcpj-mailtrap0.1.4

Tools

No tool list yet

Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.

Details

From the project README

mcpj-mailtrap

mcpj-mailtrap

Mailtrap MCP server — analytics, email logs, contacts, sandbox testing & more via natural language.
Built with Bun + TypeScript. Works with Claude, Cursor, and any MCP client.


Quick Start

1. Get Your API Token

Get an API token from Mailtrap API Tokens.

2. Add to Claude Code

Minimal

claude mcp add mailtrap -e MAILTRAP_API_TOKEN=your_token -- npx mcpj-mailtrap

Full

claude mcp add mailtrap \
  -e MAILTRAP_API_TOKEN=your_token \
  -e MAILTRAP_SENDING_TOKEN=your_sending_token \
  -e MAILTRAP_ACCOUNT_ID=12345 \
  -e [email protected] \
  -e MAILTRAP_TEST_INBOX_ID=12345 \
  -- npx mcpj-mailtrap

That's it. Restart Claude Code and the tools are available.

Also works with bunx mcpj-mailtrap@latest if you have Bun. Requires Node 18+ when running via npx.

Claude Desktop / Cursor

Minimal

{
  "mcpServers": {
    "mailtrap": {
      "command": "npx",
      "args": ["-y", "mcpj-mailtrap@latest"],
      "env": {
        "MAILTRAP_API_TOKEN": "your_token"
      }
    }
  }
}

Full

{
  "mcpServers": {
    "mailtrap": {
      "command": "npx",
      "args": ["-y", "mcpj-mailtrap@latest"],
      "env": {
        "MAILTRAP_API_TOKEN": "your_token",
        "MAILTRAP_SENDING_TOKEN": "your_sending_token",
        "MAILTRAP_ACCOUNT_ID": "12345",
        "MAILTRAP_DEFAULT_FROM_EMAIL": "[email protected]",
        "MAILTRAP_TEST_INBOX_ID": "12345"
      }
    }
  }
}
Alternative: standalone binary

Download a pre-built binary from Releases:

PlatformFile
macOS (Apple Silicon)mcpj-mailtrap-darwin-arm64
macOS (Intel)mcpj-mailtrap-darwin-x64
Linuxmcpj-mailtrap-linux-x64
Windowsmcpj-mailtrap-windows-x64.exe

macOS / Linux:

curl -Lo mcpj-mailtrap https://github.com/pijusz/mcp-mailtrap/releases/latest/download/mcpj-mailtrap-darwin-arm64
chmod +x mcpj-mailtrap
sudo mv mcpj-mailtrap /usr/local/bin/
claude mcp add mailtrap -e MAILTRAP_API_TOKEN=your_token -- /usr/local/bin/mcpj-mailtrap

Windows (PowerShell):

Invoke-WebRequest -Uri "https://github.com/pijusz/mcp-mailtrap/releases/latest/download/mcpj-mailtrap-windows-x64.exe" -OutFile "$env:LOCALAPPDATA\mcpj-mailtrap.exe"
claude mcp add mailtrap -e MAILTRAP_API_TOKEN=your_token -- "%LOCALAPPDATA%\mcpj-mailtrap.exe"

Tools (46)

Analytics
ToolDescription
get_statsSending statistics — delivery, bounce, open, click, spam rates. Group by domain, category, ESP, or date
Email Logs
ToolDescription
get_email_logsList sent emails filtered by status, stream, date range, recipient, sender, subject, or category. Cursor-based pagination
get_email_logSingle message detail with delivery events timeline
get_suppressionsList suppressed emails (bounces, spam complaints, unsubscribes) with the IDs delete_suppression needs
delete_suppressionRe-enable sending to a suppressed address
check_list_hygieneFind suppressed emails that still exist in contact lists and suggest exact cleanup actions
Sending
ToolDescription
send_emailSend via transactional or bulk stream. Supports HTML, text, or templates
batch_sendSend up to 500 emails in one request
send_test_emailSend to a sandbox inbox for testing, with optional env defaults for inbox and sender
Templates
ToolDescription
list_templatesList all email templates
get_templateGet template details including HTML/text body
create_templateCreate a new template
update_templateUpdate an existing template
delete_templateDelete a template
render_react_emailRender a react-email component file (.tsx, .jsx, .js, .mjs) to HTML + plain text
Contacts
ToolDescription
create_contactCreate a contact with email, custom fields, list membership
get_contactGet contact by UUID or email
update_contactUpdate contact fields, list membership, subscription status
delete_contactDelete a contact
trigger_contact_eventTrigger automations for a contact
list_contact_listsList all contact lists
get_contact_listGet a single contact list
create_contact_listCreate a new contact list
update_contact_listRename a contact list
delete_contact_listDelete a contact list
manage_contact_fieldList, get, create, update, or delete custom contact fields
import_contactsBulk import up to 50k contacts, or check import status
export_contactsStart contact export or check export status
Email Sandbox
ToolDescription
list_projectsList sandbox projects with inboxes
get_projectGet a single project
manage_projectCreate, update, or delete a project
list_inboxesList all sandbox inboxes
get_inboxGet inbox details (credentials redacted by default)
manage_inboxCreate, update, clean, mark read, reset credentials, or delete
get_messagesList messages in a sandbox inbox
get_messageGet message body in HTML/text/raw/EML format, with optional attachments
analyze_messageCombined spam score + HTML analysis + headers report
forward_messageForward a test message to an email
Domains
ToolDescription
list_domainsList sending domains with DNS status
get_domainGet domain details including DNS records
manage_domainCreate or delete a sending domain
send_domain_setup_instructionsEmail DNS setup instructions to a colleague
Accounts
ToolDescription
list_accountsList accounts or get one by ID
get_billing_usagePlan limits and current usage
manage_account_accessList, remove, update permissions, view resources
manage_api_tokenList, get, create, delete, or reset API tokens

Configuration

VariableRequiredDefaultDescription
MAILTRAP_API_TOKENYes—General API token from mailtrap.io/api-tokens
MAILTRAP_SENDING_TOKENNoMAILTRAP_API_TOKENSeparate token for transactional and bulk send.api requests
MAILTRAP_ACCOUNT_IDNoauto-discoveredDefault account ID
MAILTRAP_DEFAULT_FROM_EMAILNo—Default sender email for send_email / send_test_email
MAILTRAP_TEST_INBOX_IDNo—Default sandbox inbox ID for send_test_email
DEBUGNo—Enable debug logging

Updates

Using npx @latest (recommended): You always get the latest version — no manual updates needed.

Using a binary: The server checks for new releases on startup and logs to stderr if outdated:

[mcpj-mailtrap] Update available: v0.2.0 (current: v0.1.0)

Check your installed version:

mcpj-mailtrap --version

Development

Requires Bun.

git clone https://github.com/pijusz/mcp-mailtrap.git
cd mcp-mailtrap
bun install
bun test           # tests
bun run typecheck  # tsc
bun run build      # standalone binary
bun run inspect    # MCP Inspector
bun run check      # biome format + lint

License

MIT

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.