Postmark MCP Server
Send transactional emails through Postmark, send templated emails, list templates, and pull delivery statistics from an MCP-compatible AI assistant.
The Postmark MCP server is an official, experimental Model Context Protocol implementation from Postmark Labs (ActiveCampaign) that lets AI assistants send transactional and template-based emails through a Postmark account. It wraps the core Postmark email API with a small, focused set of MCP tools so agents can dispatch one-off messages, render templates, and review delivery performance without writing custom integration code.
The server is a Node.js process (v16+) that authenticates with a Postmark server token and reads a default sender address and message stream from environment variables. Every outbound email automatically enables open tracking and link tracking, and the server includes structured error handling, secure logging, and a graceful shutdown path. It is designed to be run locally and registered with MCP clients like Claude Desktop and Cursor via a standard mcpServers configuration block.
Tool coverage is intentionally narrow: sendEmail, sendEmailWithTemplate, listTemplates, and getDeliveryStats. That makes it a good fit for agent workflows that need to deliver notifications, follow-ups, or campaign emails, but it is not a full Postmark API client (no bounce management, suppression list editing, or server administration).
Tools
| Tool | Description |
|---|---|
sendEmail |
Send a plain text (optionally HTML) email through Postmark. Open and link tracking are enabled automatically. |
sendEmailWithTemplate |
Send an email rendered from a Postmark template, identified by ID or alias, with variable substitution via templateModel. |
listTemplates |
List all email templates available in the connected Postmark server. |
getDeliveryStats |
Retrieve delivery and performance statistics, optionally filtered by tag or date range. |
Prerequisites
- Node.js v16 or higher
- A Postmark account with a server API token
- A verified sender signature or domain in Postmark
Install
git clone https://github.com/ActiveCampaign/postmark-mcp
cd postmark-mcp
npm install
Configure environment
Copy the example env file and fill in your credentials:
cp .env.example .env
Required environment variables:
POSTMARK_SERVER_TOKEN: your Postmark server API tokenDEFAULT_SENDER_EMAIL: a verified "from" addressDEFAULT_MESSAGE_STREAM: typicallyoutboundfor transactional mail orbroadcastfor broadcasts
MCP client config
Add the server to your MCP client (Claude Desktop, Cursor, etc.):
{
"mcpServers": {
"postmark": {
"command": "node",
"args": ["path/to/postmark-mcp/index.js"],
"env": {
"POSTMARK_SERVER_TOKEN": "your-token",
"DEFAULT_SENDER_EMAIL": "sender@example.com",
"DEFAULT_MESSAGE_STREAM": "outbound"
}
}
}
}
Restart your MCP client and the postmark server should appear with its four tools available.
- Have an agent draft and send transactional notifications (order confirmations, password resets, internal alerts) directly through Postmark without writing API code.
- Trigger templated lifecycle emails (welcome, onboarding, renewal reminders) by passing a
templateAliasand atemplateModelof variables. - Audit available templates in a Postmark server before launching a campaign so the agent picks the correct one.
- Pull delivery stats by date range or tag to answer questions like "how did the
q2-renewalcampaign perform last week?" - Wire Postmark into broader agent workflows, for example: detect a churn signal in CRM data, then send a templated win-back email and log the result.
- "Send a plain-text email to alex@example.com with subject 'Welcome' and a short onboarding message."
- "Send the
password-resettemplate to jane@example.com with templateModel{reset_url: 'https://app.example.com/r/abc'}." - "List all email templates available in our Postmark server."
- "Show delivery stats for the
newslettertag between 2026-04-01 and 2026-04-30." - "Send a follow-up email to the lead I just researched and tag it
sales-followup."
- Official implementation from Postmark Labs (ActiveCampaign), MIT licensed.
- Small, well-scoped tool surface that maps cleanly to common transactional email tasks.
- Open and link tracking are enabled by default, and delivery stats are exposed as a first-class tool.
- Simple Node.js setup with explicit Claude Desktop and Cursor configuration in the README.
- Marked "experimental" by the maintainers; not all Postmark API surface is exposed (no bounce, suppression, server, or webhook management).
- Limited to four tools, so use cases like inbound parsing, message search, or attachments may require direct API calls.
- Requires self-hosting the Node process and managing a Postmark server token locally; no provider-hosted remote MCP endpoint.
- Resend MCP: official Resend server for sending emails from an MCP client.
- SendGrid community MCP servers: various community implementations wrapping the SendGrid API.
- Direct use of the Postmark REST API via a generic HTTP/Fetch MCP server if you need endpoints this server does not cover.