The Mailercloud MCP connector routes your AI agent's tool calls to Mailercloud's own MCP server through Scalekit. Each user signs in to Mailercloud once, and Scalekit stores and refreshes their tokens, so your agent never handles credentials. It comes with 47 tools.
- Tools
- 47
- What they doRead · write · destructive
- 27 · 17 · 327 read17 write3 destructive
- Users sign in with
- OAuth
- OAuth app
- Scalekit's or your own
Setup
Install the SDK
Terminal window npm install @scalekit-sdk/node dotenvTerminal window pip install scalekit-sdk-python python-dotenvSet your credentials
Add your Scalekit credentials to your
.envfile. Find values in app.scalekit.com > Developers > API Credentials..env SCALEKIT_ENVIRONMENT_URL=<your-environment-url>SCALEKIT_CLIENT_ID=<your-client-id>SCALEKIT_CLIENT_SECRET=<your-client-secret>Create the Mailercloud MCP connection
In AgentKit > Connections, create a Mailercloud MCP connection. The name you give it is the
connection_nameyour code passes. See Configure connections.Scalekit credentials are available for Mailercloud MCP server, so you don't need to register an OAuth app.
Authorize a user and make your first call
quickstart.mts import { ScalekitClient } from '@scalekit-sdk/node'import 'dotenv/config'import { createInterface } from 'node:readline/promises'const scalekit = new ScalekitClient(process.env.SCALEKIT_ENVIRONMENT_URL,process.env.SCALEKIT_CLIENT_ID,process.env.SCALEKIT_CLIENT_SECRET,)const actions = scalekit.actionsconst connector = 'mailercloudmcp'const identifier = 'user_123'// Generate an authorization link for the userconst { link } = await actions.getAuthorizationLink({ connectionName: connector, identifier })console.log('Authorize Mailercloud MCP:', link)const rl = createInterface({ input: process.stdin, output: process.stdout })await rl.question('Press Enter after authorizing...')rl.close()// Make your first callconst result = await actions.executeTool({connector,identifier,toolName: 'mailercloudmcp_analyze_latest_campaigns',toolInput: {},})console.log(result)Terminal window npx tsx quickstart.mtsquickstart.py import osfrom scalekit import ScalekitClientfrom dotenv import load_dotenvload_dotenv()scalekit_client = ScalekitClient(env_url=os.getenv("SCALEKIT_ENVIRONMENT_URL"),client_id=os.getenv("SCALEKIT_CLIENT_ID"),client_secret=os.getenv("SCALEKIT_CLIENT_SECRET"),)actions = scalekit_client.actionsconnection_name = "mailercloudmcp"identifier = "user_123"# Generate an authorization link for the userlink_response = actions.get_authorization_link(connection_name=connection_name,identifier=identifier,)print("Authorize Mailercloud MCP:", link_response.link)input("Press Enter after authorizing...")# Make your first callresult = actions.execute_tool(tool_input={},tool_name="mailercloudmcp_analyze_latest_campaigns",connection_name=connection_name,identifier=identifier,)print(result)Terminal window python quickstart.pyEach user signs in once. See Authorize a user for the full flow and statuses.
Tools
Pass the exact name toexecute_toolmailercloudmcp_analyze_campaignDeep-dive analysis of a single campaign's performance.Read-onlyAnalyze Campaign
Deep-dive analysis of a single campaign's performance. Returns a letter grade, weighted performance scores vs industry benchmarks, deliverability health assessment, contextual insights, and prioritized actionable recommendations to improve future sends.
Inputs
campaign_idstringrequired- The unique ID of the campaign.
api_keystring- Your MailerCloud API key for authentication.
cost_per_emailnumber- Optional cost per email sent, used to calculate ROI in reports.
mailercloudmcp_analyze_latest_campaignsAnalyze recent completed campaigns as a batch (default 5, up to 20 via count param).Read-onlyAnalyze Latest Campaigns
Analyze recent completed campaigns as a batch (default 5, up to 20 via count param). Provides individual grades, overall performance vs industry benchmarks, trends over time, what's working vs needs attention, performance by list, optional cost/ROI context, and a strategic action plan.
Inputs
api_keystring- Your MailerCloud API key for authentication.
cost_per_emailnumber- Optional cost per email sent, used to calculate ROI in reports.
countinteger- Number of recent campaigns to analyze (default: 5).
mailercloudmcp_audit_campaign_draftPre-send quality audit for a campaign draft.Read-onlyAudit Campaign Draft
Pre-send quality audit for a campaign draft. Checks subject line length and spam triggers, sender configuration, list selection, content presence, preheader text, and provides a pass/fail checklist with specific fix-it recommendations before you hit send. Use this before scheduling any campaign.
Inputs
campaign_idstringrequired- The unique ID of the campaign.
api_keystring- Your MailerCloud API key for authentication.
mailercloudmcp_campaign_health_dashboardQuick portfolio-level health check across recent campaigns.Read-onlyCampaign Health Dashboard
Quick portfolio-level health check across recent campaigns. Returns an at-a-glance dashboard with overall grade, metric status vs benchmarks, what's working vs needs attention, performance trends, and top priority action. Use this for a fast 10-second overview; use analyze_latest_campaigns for deep analysis.
Inputs
api_keystring- Your MailerCloud API key for authentication.
cost_per_emailnumber- Optional cost per email sent, used to calculate ROI in reports.
mailercloudmcp_compare_campaignsSide-by-side comparison of two or more campaigns.Read-onlyCompare Campaigns
Side-by-side comparison of two or more campaigns. Shows performance metrics, scores, grades, identifies the winner for each metric, and provides recommendations based on what worked best.
Inputs
campaign_idsstringrequired- Array of campaign IDs to compare.
api_keystring- Your MailerCloud API key for authentication.
cost_per_emailnumber- Optional cost per email sent, used to calculate ROI in reports.
mailercloudmcp_engagement_funnelVisualize the engagement funnel for a sent campaign: total sent → delivered → opened → clicked.Read-onlyEngagement Funnel
Visualize the engagement funnel for a sent campaign: total sent → delivered → opened → clicked. Shows conversion rates at each stage, identifies the biggest drop-off point, and provides targeted recommendations to fix the weakest stage of the funnel.
Inputs
campaign_idstringrequired- The unique ID of the campaign.
api_keystring- Your MailerCloud API key for authentication.
mailercloudmcp_get_account_overviewGet account plan details including limits, usage, and subscription information.Read-onlyGet Account Overview
Get account plan details including limits, usage, and subscription information.
Inputs
api_keystring- Your MailerCloud API key for authentication.
mailercloudmcp_get_automationGet details of a specific automation workflow, optionally filtered by node type.Read-onlyGet Automation
Get details of a specific automation workflow, optionally filtered by node type.
Inputs
automation_idstringrequired- The unique ID of the automation workflow.
api_keystring- Your MailerCloud API key for authentication.
node_typestring- Filter automation steps by node type (e.g. email, sms).
mailercloudmcp_get_best_practicesGenerate a comprehensive email marketing best practices report based on your actual campaign performance data.Read-onlyGet Best Practices
Generate a comprehensive email marketing best practices report based on your actual campaign performance data. Shows your performance vs industry benchmarks, identifies top-performing patterns (subject lines, send times, audience size), highlights improvement areas with specific numbers, and provides prioritized actionable recommendations tailored to your data.
Inputs
api_keystring- Your MailerCloud API key for authentication.
mailercloudmcp_get_campaignGet full details of a specific MailerCloud campaign by ID, including performance metrics.Read-onlyGet Campaign
Get full details of a specific MailerCloud campaign by ID, including performance metrics.
Inputs
campaign_idstringrequired- The unique ID of the campaign.
api_keystring- Your MailerCloud API key for authentication.
mailercloudmcp_get_campaign_domain_reportGet domain-level performance statistics for a sent campaign.Read-onlyGet Campaign Domain Report
Get domain-level performance statistics for a sent campaign.
Inputs
campaign_idstringrequired- The unique ID of the campaign.
api_keystring- Your MailerCloud API key for authentication.
limitinteger- Maximum number of results to return per page.
pageinteger- Page number for paginated results (starts at 1).
mailercloudmcp_get_contactGet detailed information about a specific contact by ID.Read-onlyGet Contact
Get detailed information about a specific contact by ID.
Inputs
contact_idstringrequired- The unique ID of the contact.
api_keystring- Your MailerCloud API key for authentication.
mailercloudmcp_get_inbox_trackingGet inbox placement tracking data for a date range, optionally filtered by campaign or domain.Read-onlyGet Inbox Tracking
Get inbox placement tracking data for a date range, optionally filtered by campaign or domain. Helps monitor deliverability across email providers.
Inputs
date_fromstringrequired- Start date for inbox tracking data in YYYY-MM-DD format.
date_tostringrequired- End date for inbox tracking data in YYYY-MM-DD format.
api_keystring- Your MailerCloud API key for authentication.
campaign_idstring- The unique ID of the campaign.
domainstring- Filter inbox tracking data by specific email domain (e.g. gmail.com).
mailercloudmcp_get_list_detailsGet details of a specific contact list including subscriber counts.Read-onlyGet List Details
Get details of a specific contact list including subscriber counts.
Inputs
list_idstringrequired- The unique ID of the contact list.
api_keystring- Your MailerCloud API key for authentication.
mailercloudmcp_get_templateGet a template's details and HTML content by ID.Read-onlyGet Template
Get a template's details and HTML content by ID.
Inputs
template_idstringrequired- The unique ID of the template.
api_keystring- Your MailerCloud API key for authentication.
mailercloudmcp_get_webhookGet details of a specific webhook.Read-onlyGet Webhook
Get details of a specific webhook.
Inputs
webhook_idstringrequired- The unique ID of the webhook.
api_keystring- Your MailerCloud API key for authentication.
mailercloudmcp_list_campaignsList MailerCloud campaigns with pagination.Read-onlyList Campaigns
List MailerCloud campaigns with pagination. Returns campaign names, IDs, subjects, statuses, and performance metrics.
Inputs
api_keystring- Your MailerCloud API key for authentication.
limitinteger- Maximum number of results to return per page.
pageinteger- Page number for paginated results (starts at 1).
mailercloudmcp_list_contact_listsList all MailerCloud contact lists with pagination.Read-onlyList Contact Lists
List all MailerCloud contact lists with pagination.
Inputs
api_keystring- Your MailerCloud API key for authentication.
limitinteger- Maximum number of results to return per page.
pageinteger- Page number for paginated results (starts at 1).
mailercloudmcp_list_contactsList contacts in a specific MailerCloud contact list with pagination.Read-onlyList Contacts
List contacts in a specific MailerCloud contact list with pagination.
Inputs
list_idstringrequired- The unique ID of the contact list.
api_keystring- Your MailerCloud API key for authentication.
limitinteger- Maximum number of results to return per page.
pageinteger- Page number for paginated results (starts at 1).
mailercloudmcp_list_custom_fieldsList all custom contact properties/fields defined in your account.Read-onlyList Custom Fields
List all custom contact properties/fields defined in your account.
Inputs
api_keystring- Your MailerCloud API key for authentication.
limitinteger- Maximum number of results to return per page.
pageinteger- Page number for paginated results (starts at 1).
mailercloudmcp_list_reply_emailsList all reply-to email addresses configured in your MailerCloud account.Read-onlyList Reply Emails
List all reply-to email addresses configured in your MailerCloud account. Use the returned IDs when creating campaigns with the reply_id parameter.
Inputs
api_keystring- Your MailerCloud API key for authentication.
limitinteger- Maximum number of results to return per page.
pageinteger- Page number for paginated results (starts at 1).
mailercloudmcp_list_segmentsList all audience segments with optional search and sorting.Read-onlyList Segments
List all audience segments with optional search and sorting.
Inputs
api_keystring- Your MailerCloud API key for authentication.
limitinteger- Maximum number of results to return per page.
pageinteger- Page number for paginated results (starts at 1).
searchstring- Search query to filter segments by name or keyword.
sort_fieldstring- Field to sort results by (e.g. created_at, name).
sort_orderstring- Sort direction: asc for ascending, desc for descending.
mailercloudmcp_list_sendersList all verified senders in your MailerCloud account.Read-onlyList Senders
List all verified senders in your MailerCloud account. Use the returned sender IDs when creating campaigns with the sender_id parameter.
Inputs
api_keystring- Your MailerCloud API key for authentication.
limitinteger- Maximum number of results to return per page.
pageinteger- Page number for paginated results (starts at 1).
mailercloudmcp_list_template_categoriesList all email template categories in MailerCloud.Read-onlyList Template Categories
List all email template categories in MailerCloud.
Inputs
api_keystring- Your MailerCloud API key for authentication.
mailercloudmcp_list_webformsList all webforms in your MailerCloud account.Read-onlyList Webforms
List all webforms in your MailerCloud account.
Inputs
api_keystring- Your MailerCloud API key for authentication.
limitinteger- Maximum number of results to return per page.
pageinteger- Page number for paginated results (starts at 1).
mailercloudmcp_list_webhooksList all webhooks configured in MailerCloud.Read-onlyList Webhooks
List all webhooks configured in MailerCloud.
Inputs
api_keystring- Your MailerCloud API key for authentication.
limitinteger- Maximum number of results to return per page.
pageinteger- Page number for paginated results (starts at 1).
mailercloudmcp_batch_create_contactsCreate multiple contacts at once in bulk.WriteBatch Create Contacts
Create multiple contacts at once in bulk.
Inputs
contactsstringrequired- Array of contact objects,required
list_idstringrequired- The unique ID of the contact list.
api_keystring- Your MailerCloud API key for authentication.
mailercloudmcp_create_campaignCreate a new email campaign in MailerCloud.WriteCreate Campaign
Create a new email campaign in MailerCloud. Requires name, subject, and at least one list ID. If sender is not provided, it will be auto-resolved from your verified senders (if only one exists) or you will be prompted to choose. Reply-to defaults to sender email (best practice) — only provide reply_email or reply_id if you need a different reply-to address.
Inputs
list_idsstringrequired- List IDs to send to,required
namestringrequired- Display name for the campaign.
subjectstringrequired- Subject line for the email.
api_keystring- Your MailerCloud API key for authentication.
email_preheaderstring- Short preview text shown after the subject line in email clients (max 150 characters).
exclude_list_idsstring- List IDs to exclude from send
exclude_segmentsstring- Segment IDs to exclude from send
exclude_tag_idsstring- Tag IDs to exclude from send
frequency_capstring- Limit how often a contact receives campaigns (e.g. daily, weekly).
htmlstring- HTML content for the email body.
is_publishstring- Set to 'true' to publish immediately; 'false' saves as a draft.
plain_textstring- Plain text fallback content for email clients that do not support HTML.
reply_emailstring- Reply-to email address. Defaults to sender email if omitted.
reply_idstring- ID of a pre-configured reply-to email address (alternative to reply_email).
scheduled_atstring- Datetime to send the campaign, in YYYY-MM-DD HH:MM:SS format.
segmentsstring- Segment IDs
sender_emailstring- Email address of the sender. Auto-resolved if your account has only one verified sender.
sender_idstring- Array of pre-configured sender IDs. Alternative to sender_name/sender_email.
sender_namestring- Display name for the sender. Auto-resolved if your account has only one verified sender.
tag_idsstring- Tag IDs to apply to campaign
mailercloudmcp_create_contactCreate a new contact in a MailerCloud list.WriteCreate Contact
Create a new contact in a MailerCloud list. Email and list_id are required.
Inputs
emailstringrequired- Contact's email address.
list_idstringrequired- The unique ID of the contact list.
api_keystring- Your MailerCloud API key for authentication.
citystring- Contact's city.
company_namestring- Contact's company or organization name.
countrystring- Contact's country code (e.g. US, GB).
custom_fieldsobject- Custom field values
departmentstring- Contact's department within their organization.
first_namestring- Contact's first name.
job_titlestring- Contact's job title.
last_namestring- Contact's last name.
phonestring- Contact's phone number in E.164 format.
statestring- Contact's state or region.
tagsstring- Tags to assign
mailercloudmcp_create_listCreate a new contact list in MailerCloud.WriteCreate List
Create a new contact list in MailerCloud.
Inputs
list_typeintegerrequired- Type of list: 1 for regular, 2 for single opt-in, 3 for double opt-in.
namestringrequired- Display name for the campaign.
api_keystring- Your MailerCloud API key for authentication.
mailercloudmcp_create_tagCreate a new tag for organizing contacts.WriteCreate Tag
Create a new tag for organizing contacts.
Inputs
namestringrequired- Display name for the campaign.
api_keystring- Your MailerCloud API key for authentication.
mailercloudmcp_create_templateCreate a new HTML email template.WriteCreate Template
Create a new HTML email template.
Inputs
htmlstringrequired- HTML content for the email body.
namestringrequired- Display name for the campaign.
api_keystring- Your MailerCloud API key for authentication.
category_idstring- ID of the template category to assign this template to.
plain_textstring- Plain text fallback content for email clients that do not support HTML.
mailercloudmcp_create_webhookCreate a new webhook to receive event notifications.WriteCreate Webhook
Create a new webhook to receive event notifications.
Inputs
eventsstringrequired- Events to subscribe to,required
namestringrequired- Display name for the campaign.
urlstringrequired- HTTPS URL to receive webhook event payloads.
api_keystring- Your MailerCloud API key for authentication.
mailercloudmcp_schedule_campaignSchedule a campaign for sending.WriteSchedule Campaign
Schedule a campaign for sending. Omit scheduled_at to send immediately.
Inputs
campaign_idstringrequired- The unique ID of the campaign.
api_keystring- Your MailerCloud API key for authentication.
scheduled_atstring- Datetime to send the campaign, in YYYY-MM-DD HH:MM:SS format.
mailercloudmcp_send_test_emailSend a test email for a campaign to specified recipients before the actual send.WriteSend Test Email
Send a test email for a campaign to specified recipients before the actual send.
Inputs
campaign_idstringrequired- The unique ID of the campaign.
recipientsstringrequired- Test email recipients,required
api_keystring- Your MailerCloud API key for authentication.
mailercloudmcp_send_transactional_emailSend a transactional email via MailerCloud Email API.WriteSend Transactional Email
Send a transactional email via MailerCloud Email API. Supports HTML, AMP HTML, attachments, CC/BCC. Use version 1.0 for HTML only, 2.0 for AMP content.
Inputs
fromstringrequired- Sender email address for the transactional email.
subjectstringrequired- Subject line for the email.
tostringrequired- To recipients (array of name and email),required
amp_htmlstring- AMP HTML content. Use API version 2.0 when sending AMP content.
api_keystring- Your MailerCloud API key for authentication.
attachmentsstring- Attachments (array of name and url)
bccstring- BCC recipients
ccstring- CC recipients
from_namestring- Sender display name for the transactional email.
htmlstring- HTML content for the email body.
reply_tostring- Reply-to addresses
textstring- Plain text fallback for the transactional email.
versionstring- API version: 1.0 for HTML-only emails, 2.0 for AMP content.
mailercloudmcp_toggle_webhookEnable or disable a webhook.WriteToggle Webhook
Enable or disable a webhook.
- Idempotent
Inputs
activebooleanrequired- Set to true to enable the webhook, false to disable it.
webhook_idstringrequired- The unique ID of the webhook.
api_keystring- Your MailerCloud API key for authentication.
mailercloudmcp_update_campaignUpdate a draft campaign.WriteUpdate Campaign
Update a draft campaign. Only draft campaigns can be updated.
- Idempotent
Inputs
campaign_idstringrequired- The unique ID of the campaign.
fieldsobjectrequired- Fields to update,required
api_keystring- Your MailerCloud API key for authentication.
mailercloudmcp_update_contactUpdate fields on an existing contact.WriteUpdate Contact
Update fields on an existing contact.
- Idempotent
Inputs
contact_idstringrequired- The unique ID of the contact.
fieldsobjectrequired- Fields to update,required
api_keystring- Your MailerCloud API key for authentication.
mailercloudmcp_update_listUpdate the name of an existing contact list.WriteUpdate List
Update the name of an existing contact list.
- Idempotent
Inputs
list_idstringrequired- The unique ID of the contact list.
namestringrequired- Display name for the campaign.
api_keystring- Your MailerCloud API key for authentication.
mailercloudmcp_update_templateUpdate an existing email template.WriteUpdate Template
Update an existing email template.
- Idempotent
Inputs
template_idstringrequired- The unique ID of the template.
api_keystring- Your MailerCloud API key for authentication.
htmlstring- HTML content for the email body.
namestring- Display name for the campaign.
plain_textstring- Plain text fallback content for email clients that do not support HTML.
mailercloudmcp_update_webhookUpdate an existing webhook's configuration.WriteUpdate Webhook
Update an existing webhook's configuration.
- Idempotent
Inputs
fieldsobjectrequired- Fields to update,required
webhook_idstringrequired- The unique ID of the webhook.
api_keystring- Your MailerCloud API key for authentication.
mailercloudmcp_upsert_contactCreate a contact if it doesn't exist, or update it if it does.WriteUpsert Contact
Create a contact if it doesn't exist, or update it if it does.
- Idempotent
Inputs
emailstringrequired- Contact's email address.
list_idstringrequired- The unique ID of the contact list.
api_keystring- Your MailerCloud API key for authentication.
first_namestring- Contact's first name.
last_namestring- Contact's last name.
mailercloudmcp_delete_contactDelete a contact by ID.DestructiveDelete Contact
Delete a contact by ID.
- Idempotent
Inputs
contact_idstringrequired- The unique ID of the contact.
api_keystring- Your MailerCloud API key for authentication.
mailercloudmcp_delete_listDelete a contact list by ID.DestructiveDelete List
Delete a contact list by ID.
- Idempotent
Inputs
list_idstringrequired- The unique ID of the contact list.
api_keystring- Your MailerCloud API key for authentication.
mailercloudmcp_delete_webhookDelete a webhook.DestructiveDelete Webhook
Delete a webhook.
- Idempotent
Inputs
webhook_idstringrequired- The unique ID of the webhook.
api_keystring- Your MailerCloud API key for authentication.
No tools match.