loading…
Search for a command to run...
loading…
An MCP server for the PostStack email API that enables AI assistants to send transactional emails, manage contacts, handle inbound email threads, and perform de
An MCP server for the PostStack email API that enables AI assistants to send transactional emails, manage contacts, handle inbound email threads, and perform deliverability checks through 84 curated tools.
Model Context Protocol server for the PostStack Email API — an EU-hosted, GDPR-compliant email API for AI agents. Lets assistants like Claude, Cursor, and Windsurf send transactional email, draft replies from inbound threads, run deliverability checks, summarise broadcasts, and more — through one curated tool surface.
84 tools, 5 prompts, and 5 resources, all surfaced over either the local
stdio bin or the hosted HTTP transport at https://api.poststack.dev/mcp.
Full MCP reference: poststack.dev/docs/mcp.
Point any MCP client at:
https://api.poststack.dev/mcp
Authenticate with your PostStack API key as a Bearer token. No local install required.
{
"mcpServers": {
"poststack": {
"command": "npx",
"args": ["-y", "@poststack.dev/mcp"],
"env": {
"POSTSTACK_API_KEY": "sk_live_your_api_key_here"
}
}
}
}
Config file location:
~/Library/Application Support/Claude/claude_desktop_config.json%APPDATA%\Claude\claude_desktop_config.jsonYou can also generate the snippet with:
npx @poststack.dev/mcp --print-config claude-desktop
claude mcp add poststack -- npx -y @poststack.dev/mcp -e POSTSTACK_API_KEY=sk_live_your_api_key_here
Same JSON shape as Claude Desktop, in the editor's MCP settings.
| Variable | Required | Description |
|---|---|---|
POSTSTACK_API_KEY |
yes | PostStack API key (sk_live_… or sk_test_…) |
POSTSTACK_MCP_TRACE |
no | Set to 1 to emit per-tool-call NDJSON telemetry to stderr |
The MCP server doesn't just mirror the REST API — it gives agents the context tools they need to make sensible decisions: spam-checking before sending, deliverability summaries before picking a from-address, engagement scores before re-engaging a contact.
The draft_welcome_email prompt walks an agent through:
get_contact_by_email — confirm the contact and capture propertieslist_templates — pick a published welcome templaterender_template — render with the contact's properties; surface any missing variablessuggest_from_address — pick a verified from-address based on existing mailboxespreview_email — render + spam check + deliverability warnings in one round-tripsend_email — only if preview passedOther prompts cover re-engagement, follow-up campaigns to non-clickers, broadcast summaries, and inbound triage.
send_email — Send a single transactional email immediately, or schedule it for a future time.send_batch_emails — Send multiple emails in a single batch request (up to 100 per call).list_emails — List previously-sent emails with optional filters and pagination.get_email — Get full details and event timeline for a specific email by id.cancel_email — Cancel a scheduled email that has not yet entered the sending pipeline.reschedule_email — Reschedule a scheduled email to a new send time.lint_email — Run a Rspamd-backed spam pre-flight on a draft email and return the score, action, and per-rule symbols.preview_email — Render + lint + measure an email in one shot WITHOUT sending it.create_contact — Create a new contact (person who can receive emails / broadcasts).list_contacts — List contacts with optional search and segment filtering.get_contact — Get full details of a contact by id.update_contact — Update an existing contact's name, properties, or subscription state.delete_contact — Permanently delete a contact (irreversible — use unsubscribe_contact for opt-outs).unsubscribe_contact — Mark a contact as unsubscribed from all email (preserves the contact record).get_contact_by_email — Look up a contact by their email address.get_contact_activity — Get a contact's recent email-event timeline grouped by event type (sent / delivered / opened / clicked / bounced / complained / failed).get_engagement_summary — Get a single contact's engagement summary: segment + lifetime counts + open / click rates + last open / click + top tags.search_contacts — Search contacts with filters (segment, engagement, unsubscribed) and a fuzzy query across email/first_name/last_name. Adds a match_reason on each row indicating which field matched the query.create_template — Create a new email template with {{variable}} placeholders.list_templates — List email templates.get_template — Get a template's full body, subject and variables.update_template — Update an existing template's name, subject, body or variable list.delete_template — Permanently delete a template (irreversible).publish_template — Mark a template as published so it can be referenced by send_email.unpublish_template — Mark a template as unpublished so it cannot be sent.duplicate_template — Create a copy of an existing template (new id, same body, name suffixed " (copy)").render_template — Server-side render a template with the provided variables.create_broadcast — Create a draft broadcast targeted at a segment.list_broadcasts — List broadcasts.get_broadcast — Get a broadcast's details and aggregate delivery stats.update_broadcast — Edit a draft broadcast in place. Only draft broadcasts can be updated.send_broadcast — Dispatch a draft broadcast to its segment immediately.cancel_broadcast — Cancel a queued or sending broadcast.broadcast_performance — Get broadcast performance — either for one broadcast (variant breakdown if A/B) or for a leaderboard ranked by a chosen metric.find_non_clickers — List contacts who received a broadcast but did NOT click any tracked link in it.create_segment — Create a static contact segment (manually-managed list).list_segments — List contact segments.get_segment — Get a segment's details and member count.update_segment — Rename an existing segment.delete_segment — Delete a segment definition. Contacts in it are NOT deleted.add_contacts_to_segment — Add one or more contacts to a segment.remove_contact_from_segment — Remove a single contact from a segment.create_domain — Add a new sending domain to PostStack.list_domains — List sending domains.get_domain — Get domain details including DNS records and verification status.verify_domain — Trigger DNS verification for a domain.update_domain — Update domain settings (open/click tracking, TLS mode).delete_domain — Permanently delete a sending domain (irreversible — historical email records remain).check_deliverability — Check whether a from-address is safe to send from RIGHT NOW.create_mailbox — Provision a mailbox (IMAP/SMTP inbox) on a verified domain.list_mailboxes — List mailboxes across all domains.get_mailbox — Get a mailbox's metadata (status, quota, last login).update_mailbox — Update a mailbox's display name, quota, status, or webhook setting.delete_mailbox — Permanently delete a mailbox and all its stored mail.change_mailbox_password — Reset a mailbox's IMAP/SMTP password.suggest_from_address — Suggest sensible from-addresses for a given purpose, drawn from the team's verified domains + existing mailboxes.list_inbound_emails — List inbound emails received by mailboxes on this account.get_inbound_email — Get a received inbound email's full headers and body.list_inbound_email_attachments — List attachments on an inbound email (filename, size, contentType).reply_to_inbound_email — Send a reply to an inbound email (subject and threading headers are set automatically).forward_inbound_email — Forward an inbound email to other recipients with an optional cover note.draft_from_thread — Build a reply-draft skeleton for an inbound email — proper threading, quoted original, salutation/sign-off, suggested from + subject. Heuristic only; the agent fills in the body text.create_webhook — Subscribe a URL to receive event notifications via signed POST requests.list_webhooks — List configured webhook endpoints.get_webhook — Get a webhook's details.update_webhook — Edit a webhook's URL, event list, or enabled state.delete_webhook — Permanently delete a webhook endpoint.create_subscription_topic — Create a subscription topic (named opt-in/opt-out preference like "Product Updates").list_subscription_topics — List all subscription topics defined for this account.delete_subscription_topic — Permanently delete a subscription topic. Subscriptions are removed.get_contact_subscriptions — List the subscription topics a contact is currently opted in to.subscribe_contact_to_topic — Opt a contact in to a subscription topic.unsubscribe_contact_from_topic — Opt a contact out of a subscription topic.create_contact_property — Define a custom contact property (typed schema for the contact.properties field).list_contact_properties — List all custom contact properties defined for this account.update_contact_property — Edit a custom contact property's label, options or required flag.delete_contact_property — Remove a custom contact property definition. Existing contact values for this property are dropped.list_suppressions — List suppressed email addresses (will not receive any emails).add_suppression — Block an email address from receiving any future sends.remove_suppression — Remove an address from the suppression list (sends will resume).create_api_key — Generate a new PostStack API key. The full key is returned ONCE in this response and cannot be retrieved again.list_api_keys — List API keys (only the prefix is returned, never the full secret).get_api_key — Get an API key's metadata (the secret is never returned after creation).revoke_api_key — Permanently revoke an API key — all subsequent requests using it will fail.draft_welcome_email — Guide the agent through drafting and sending a personalised welcome email to a new contact. Looks the contact up, picks a published welcome template, renders it, lints, and sends.reengage_dormant — Find dormant contacts and draft a re-engagement campaign. Pulls the dormant segment, picks an opt-out-friendly template, and stages a broadcast for review.followup_non_clickers — Demo B path — find the best-performing recent broadcast, identify recipients who did NOT click, and draft a follow-up to them.summarize_campaign — Produce a short performance report for a broadcast: headline metrics, A/B winner if applicable, and a one-line recommendation.triage_inbound — Read an inbound email, classify it (support / sales / billing / spam / other), and propose the next action. Drafts a reply skeleton if appropriate.poststack://templates — List of all email templates for the authenticated team. Includes id, name, subject, version, published flag.poststack://templates/{id} — A single template by publicId — full body, subject, variables.poststack://domains — List of sending domains for the authenticated team — name, status, DNS records, tracking flags.poststack://segments — List of contact segments for the authenticated team — id, name, contact count.poststack://brand — Authenticated team identity + a default sending suggestion. Includes team name, verified domain count, and the recommended from-address derived from existing mailboxes.MIT — see LICENSE.
Добавь это в claude_desktop_config.json и перезапусти Claude Desktop.
{
"mcpServers": {
"poststack-mcp-server": {
"command": "npx",
"args": []
}
}
}