Skip to content
Scalekit Docs
Talk to an Engineer Dashboard

Mailchimp MCP connector

OAuth 2.1MarketingAutomationCommunication

Connect to Mailchimp's email marketing and automation platform via Model Context Protocol. Manage audiences, campaigns, automations, and analytics through...

Mailchimp MCP connector

  1. Terminal window
    npm install @scalekit-sdk/node

    Full SDK reference: Node.js | Python

  2. Add your Scalekit credentials to your .env file. 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>
  3. Register your Mailchimp MCP credentials with Scalekit so it handles the token lifecycle. You do this once per environment.

    Dashboard setup steps

    Mailchimp MCP uses Dynamic Client Registration (DCR) — no client ID or secret is needed. The only step is registering your Scalekit redirect URI as an allowed domain in Atlassian Administration.

    1. Copy the redirect URI from Scalekit

      In the Scalekit dashboard, go to AgentKit > Connections > Create Connection. Find Mailchimp MCP and click Create. Copy the redirect URI — it looks like https://<SCALEKIT_ENVIRONMENT_URL>/sso/v1/oauth/<CONNECTION_ID>/callback.

    2. Open the Rovo MCP server settings in Atlassian

      • Go to admin.atlassian.com and select your organisation.
      • In the left sidebar, expand Rovo and click Rovo access.
      • Click Rovo MCP server in the submenu.
      • Select the Domains tab at the top of the page.
    3. Add the redirect URI as a domain

      • Under Your domains, click Add domain.
      • In the Add domain dialog, paste the redirect URI from Scalekit into the Domain field.
      • Accept the terms and click Add.

      Once added, Scalekit automatically registers the OAuth client via DCR and handles token management for every user who authorizes the connection — no further configuration needed.

  4. quickstart.ts
    import { ScalekitClient } from '@scalekit-sdk/node'
    import 'dotenv/config'
    const scalekit = new ScalekitClient(
    process.env.SCALEKIT_ENV_URL,
    process.env.SCALEKIT_CLIENT_ID,
    process.env.SCALEKIT_CLIENT_SECRET,
    )
    const actions = scalekit.actions
    const connector = 'mailchimpmcp'
    const identifier = 'user_123'
    // Generate an authorization link for the user
    const { link } = await actions.getAuthorizationLink({ connectionName: connector, identifier })
    console.log('Authorize Mailchimp MCP:', link)
    process.stdout.write('Press Enter after authorizing...')
    await new Promise(r => process.stdin.once('data', r))
    // Make your first call
    const result = await actions.executeTool({
    connector,
    identifier,
    toolName: 'mailchimpmcp_mailchimp_get_account',
    toolInput: {},
    })
    console.log(result)

Connect this agent connector to let your agent:

  • Note mailchimp add member — Appends a CRM-style note to a specific member’s record
  • Update mailchimp add or, mailchimp — Adds a new subscriber to an audience or updates an existing one (upsert operation)
  • Member mailchimp archive — Archives (soft-deletes) a contact from an audience without permanently removing them
  • Create mailchimp — Creates a new audience (list) in the Mailchimp account with specified settings
  • Delete mailchimp — Permanently deletes an audience and all associated member data
  • Get mailchimp — Retrieves account details including plan information, total subscriber count, and account metadata

Get your cloud ID

Most Mailchimp MCP tools require a cloudId — the UUID that identifies your Atlassian cloud site. Call mailchimpmcp_getaccessibleatlassianresources once to retrieve it, then pass the id field value in every subsequent tool call.

// Step 1 — get the cloud ID
const resources = await actions.executeTool({
connectionName: 'mailchimpmcp',
identifier: 'user_123',
toolName: 'mailchimpmcp_getaccessibleatlassianresources',
toolInput: {},
});
const cloudId = resources[0].id;
// Step 2 — use cloudId in subsequent calls
const issue = await actions.executeTool({
connectionName: 'mailchimpmcp',
identifier: 'user_123',
toolName: 'mailchimpmcp_getjiraissue',
toolInput: {
cloudId,
issueIdOrKey: 'KAN-1',
},
});
console.log(issue);

The mailchimpmcp_getaccessibleatlassianresources response looks like this:

[
{
"id": "a4c9b3e2-1234-5678-abcd-ef0123456789",
"name": "My Company",
"url": "https://mycompany.atlassian.net",
"scopes": ["read:jira-work", "write:jira-work", "read:confluence-content.all"]
}
]

Use id as the cloudId parameter. If the user belongs to multiple Atlassian sites, the list contains one entry per site — pick the one matching the target url.

Use the exact tool names from the Tool list below when you call execute_tool. If you’re not sure which name to use, list the tools available for the current user first.

mailchimpmcp_mailchimp_add_member_note#Appends a CRM-style note to a specific member's record.3 params

Appends a CRM-style note to a specific member's record.

NameTypeRequiredDescription
list_idstringrequiredThe unique identifier for the audience/list
notestringrequiredThe note content to add
subscriber_hashstringrequiredMD5 hash of the lowercase version of the member's email address
mailchimpmcp_mailchimp_add_or_update_member#Adds a new subscriber to an audience or updates an existing one (upsert operation).5 params

Adds a new subscriber to an audience or updates an existing one (upsert operation).

NameTypeRequiredDescription
email_addressstringrequiredThe email address of the subscriber.
list_idstringrequiredThe unique identifier for the audience/list.
statusstringrequiredSubscriber status: subscribed, unsubscribed, cleaned, pending.
merge_fieldsobjectoptionalCustom merge field values (e.g. FNAME, LNAME).
tagsarrayoptionalTags to assign to the subscriber.
mailchimpmcp_mailchimp_archive_member#Archives (soft-deletes) a contact from an audience without permanently removing them.2 params

Archives (soft-deletes) a contact from an audience without permanently removing them.

NameTypeRequiredDescription
list_idstringrequiredThe unique identifier for the audience/list.
subscriber_hashstringrequiredMD5 hash of the lowercase version of the member's email address.
mailchimpmcp_mailchimp_create_audience#Creates a new audience (list) in the Mailchimp account with specified settings.5 params

Creates a new audience (list) in the Mailchimp account with specified settings.

NameTypeRequiredDescription
campaign_defaultsobjectrequiredDefault values for campaigns sent to this list.
contactobjectrequiredContact information for the list owner.
email_type_optionbooleanrequiredWhether the list supports multiple formats for emails.
namestringrequiredThe name of the new audience.
permission_reminderstringrequiredReminder of how the user signed up for the list.
mailchimpmcp_mailchimp_create_campaign#Creates a new campaign draft with specified type, audience, subject line, and sender details.3 params

Creates a new campaign draft with specified type, audience, subject line, and sender details.

NameTypeRequiredDescription
typestringrequiredCampaign type: regular, plaintext, absplit, rss, variate.
recipientsobjectoptionalList settings including list_id and segment conditions.
settingsobjectoptionalCampaign settings including subject_line, from_name, reply_to.
mailchimpmcp_mailchimp_create_merge_field#Adds a new custom merge field to an audience for collecting additional subscriber data.3 params

Adds a new custom merge field to an audience for collecting additional subscriber data.

NameTypeRequiredDescription
list_idstringrequiredThe unique identifier for the audience/list
namestringrequiredThe name of the merge field
typestringrequiredField type: text, number, address, phone, date, url, imageurl, radio, dropdown, birthday, zip
mailchimpmcp_mailchimp_create_segment#Builds a static or dynamic segment within an audience based on conditions.4 params

Builds a static or dynamic segment within an audience based on conditions.

NameTypeRequiredDescription
list_idstringrequiredThe unique identifier for the audience/list.
namestringrequiredName of the segment.
optionsobjectoptionalSegment conditions (match, conditions array).
static_segmentarrayoptionalEmail addresses for a static segment.
mailchimpmcp_mailchimp_create_template#Creates a new email template with custom HTML content.2 params

Creates a new email template with custom HTML content.

NameTypeRequiredDescription
htmlstringrequiredHTML content of the template.
namestringrequiredName of the template.
mailchimpmcp_mailchimp_delete_audience#Permanently deletes an audience and all associated member data.1 param

Permanently deletes an audience and all associated member data.

NameTypeRequiredDescription
list_idstringrequiredThe unique identifier for the audience/list to delete.
mailchimpmcp_mailchimp_delete_campaign#Removes an unsent campaign from the account permanently.1 param

Removes an unsent campaign from the account permanently.

NameTypeRequiredDescription
campaign_idstringrequiredThe unique identifier for the campaign to delete.
mailchimpmcp_mailchimp_delete_member_permanent#Permanently and irreversibly removes a contact from an audience.2 params

Permanently and irreversibly removes a contact from an audience.

NameTypeRequiredDescription
list_idstringrequiredThe unique identifier for the audience/list
subscriber_hashstringrequiredMD5 hash of the lowercase version of the member's email address
mailchimpmcp_mailchimp_delete_segment#Permanently removes a segment from an audience.2 params

Permanently removes a segment from an audience.

NameTypeRequiredDescription
list_idstringrequiredThe unique identifier for the audience/list.
segment_idintegerrequiredThe unique identifier for the segment to delete.
mailchimpmcp_mailchimp_delete_template#Permanently removes a template from the account.1 param

Permanently removes a template from the account.

NameTypeRequiredDescription
template_idintegerrequiredThe unique identifier for the template to delete.
mailchimpmcp_mailchimp_get_account#Retrieves account details including plan information, total subscriber count, and account metadata.0 params

Retrieves account details including plan information, total subscriber count, and account metadata.

mailchimpmcp_mailchimp_get_audience#Retrieves detailed information about a specific Mailchimp audience including settings and statistics.1 param

Retrieves detailed information about a specific Mailchimp audience including settings and statistics.

NameTypeRequiredDescription
list_idstringrequiredThe unique identifier for the audience/list.
mailchimpmcp_mailchimp_get_automation#Retrieves details of a specific Classic Automation workflow.1 param

Retrieves details of a specific Classic Automation workflow.

NameTypeRequiredDescription
workflow_idstringrequiredThe unique identifier for the automation workflow.
mailchimpmcp_mailchimp_get_campaign#Returns full configuration details for a specific campaign.1 param

Returns full configuration details for a specific campaign.

NameTypeRequiredDescription
campaign_idstringrequiredThe unique identifier for the campaign.
mailchimpmcp_mailchimp_get_campaign_content#Retrieves the HTML and plain-text content of a campaign.1 param

Retrieves the HTML and plain-text content of a campaign.

NameTypeRequiredDescription
campaign_idstringrequiredThe unique identifier for the campaign.
mailchimpmcp_mailchimp_get_campaign_report#Returns engagement metrics for a sent campaign including opens, clicks, and bounces.1 param

Returns engagement metrics for a sent campaign including opens, clicks, and bounces.

NameTypeRequiredDescription
campaign_idstringrequiredThe unique identifier for the campaign.
mailchimpmcp_mailchimp_get_campaign_sent_to#Returns the complete list of recipients a campaign was sent to with delivery status.1 param

Returns the complete list of recipients a campaign was sent to with delivery status.

NameTypeRequiredDescription
campaign_idstringrequiredThe unique identifier for the campaign.
mailchimpmcp_mailchimp_get_click_details#Returns per-link click engagement metrics for a campaign.1 param

Returns per-link click engagement metrics for a campaign.

NameTypeRequiredDescription
campaign_idstringrequiredThe unique identifier for the campaign.
mailchimpmcp_mailchimp_get_domain_performance#Returns email campaign performance broken down by recipient email domain (e.g. gmail.com, yahoo.com).1 param

Returns email campaign performance broken down by recipient email domain (e.g. gmail.com, yahoo.com).

NameTypeRequiredDescription
campaign_idstringrequiredThe unique identifier for the campaign.
mailchimpmcp_mailchimp_get_email_activity#Reports per-recipient delivery status and engagement for a campaign.1 param

Reports per-recipient delivery status and engagement for a campaign.

NameTypeRequiredDescription
campaign_idstringrequiredThe unique identifier for the campaign.
mailchimpmcp_mailchimp_get_member#Retrieves full profile information for a specific member in an audience.2 params

Retrieves full profile information for a specific member in an audience.

NameTypeRequiredDescription
list_idstringrequiredThe unique identifier for the audience/list.
subscriber_hashstringrequiredMD5 hash of the lowercase version of the member's email address.
mailchimpmcp_mailchimp_get_member_activity#Retrieves a member's activity history including opens, clicks, and bounce events.2 params

Retrieves a member's activity history including opens, clicks, and bounce events.

NameTypeRequiredDescription
list_idstringrequiredThe unique identifier for the audience/list
subscriber_hashstringrequiredMD5 hash of the lowercase version of the member's email address
mailchimpmcp_mailchimp_get_member_notes#Retrieves CRM-style notes attached to a specific member.2 params

Retrieves CRM-style notes attached to a specific member.

NameTypeRequiredDescription
list_idstringrequiredThe unique identifier for the audience/list
subscriber_hashstringrequiredMD5 hash of the lowercase version of the member's email address
mailchimpmcp_mailchimp_get_member_tags#Returns the tags assigned to a specific subscriber.2 params

Returns the tags assigned to a specific subscriber.

NameTypeRequiredDescription
list_idstringrequiredThe unique identifier for the audience/list.
subscriber_hashstringrequiredMD5 hash of the lowercase version of the member's email address.
mailchimpmcp_mailchimp_get_open_details#Returns details about who opened a campaign and when, including open frequency and timing.1 param

Returns details about who opened a campaign and when, including open frequency and timing.

NameTypeRequiredDescription
campaign_idstringrequiredThe unique identifier for the campaign.
mailchimpmcp_mailchimp_get_template#Fetches the details of a specific email template.1 param

Fetches the details of a specific email template.

NameTypeRequiredDescription
template_idintegerrequiredThe unique identifier for the template.
mailchimpmcp_mailchimp_list_audiences#Returns a list of all audiences (lists) in the Mailchimp account with member counts and statistics.2 params

Returns a list of all audiences (lists) in the Mailchimp account with member counts and statistics.

NameTypeRequiredDescription
countintegeroptionalNumber of records to return (max 1000).
offsetintegeroptionalNumber of records to skip for pagination.
mailchimpmcp_mailchimp_list_automation_emails#Returns the emails within a Classic Automation workflow.1 param

Returns the emails within a Classic Automation workflow.

NameTypeRequiredDescription
workflow_idstringrequiredThe unique identifier for the automation workflow.
mailchimpmcp_mailchimp_list_automations#Returns all Classic Automation workflows in the account.0 params

Returns all Classic Automation workflows in the account.

mailchimpmcp_mailchimp_list_campaign_abuse_reports#Returns a list of spam complaints received for a campaign.1 param

Returns a list of spam complaints received for a campaign.

NameTypeRequiredDescription
campaign_idstringrequiredThe unique identifier for the campaign.
mailchimpmcp_mailchimp_list_campaigns#Returns a list of campaigns in the Mailchimp account with optional status and audience filtering.4 params

Returns a list of campaigns in the Mailchimp account with optional status and audience filtering.

NameTypeRequiredDescription
countintegeroptionalNumber of records to return
list_idstringoptionalFilter campaigns by audience
offsetintegeroptionalNumber of records to skip for pagination
statusstringoptionalFilter by campaign status: save, paused, schedule, sending, sent
mailchimpmcp_mailchimp_list_interest_categories#Returns interest category groupings for an audience used in subscriber preference management.1 param

Returns interest category groupings for an audience used in subscriber preference management.

NameTypeRequiredDescription
list_idstringrequiredThe unique identifier for the audience/list
mailchimpmcp_mailchimp_list_interests#Returns interests within a specific interest category for an audience.2 params

Returns interests within a specific interest category for an audience.

NameTypeRequiredDescription
interest_category_idstringrequiredThe unique identifier for the interest category
list_idstringrequiredThe unique identifier for the audience/list
mailchimpmcp_mailchimp_list_members#Returns a list of members in a specified audience with optional status filtering.4 params

Returns a list of members in a specified audience with optional status filtering.

NameTypeRequiredDescription
list_idstringrequiredThe unique identifier for the audience/list.
countintegeroptionalNumber of records to return.
offsetintegeroptionalNumber of records to skip for pagination.
statusstringoptionalMember status filter: subscribed, unsubscribed, cleaned, pending, transactional.
mailchimpmcp_mailchimp_list_merge_fields#Returns all custom merge fields (custom contact data fields) for an audience.1 param

Returns all custom merge fields (custom contact data fields) for an audience.

NameTypeRequiredDescription
list_idstringrequiredThe unique identifier for the audience/list
mailchimpmcp_mailchimp_list_segments#Returns all saved segments in an audience.1 param

Returns all saved segments in an audience.

NameTypeRequiredDescription
list_idstringrequiredThe unique identifier for the audience/list.
mailchimpmcp_mailchimp_list_tags#Returns all tags available in a specific audience.1 param

Returns all tags available in a specific audience.

NameTypeRequiredDescription
list_idstringrequiredThe unique identifier for the audience/list.
mailchimpmcp_mailchimp_list_templates#Returns available email templates in the account.2 params

Returns available email templates in the account.

NameTypeRequiredDescription
countintegeroptionalNumber of records to return.
offsetintegeroptionalNumber of records to skip for pagination.
mailchimpmcp_mailchimp_pause_automation#Pauses a Classic Automation workflow, halting email delivery until restarted.1 param

Pauses a Classic Automation workflow, halting email delivery until restarted.

NameTypeRequiredDescription
workflow_idstringrequiredThe unique identifier for the automation workflow.
mailchimpmcp_mailchimp_ping#Validates API key connectivity and checks that the Mailchimp account is reachable.0 params

Validates API key connectivity and checks that the Mailchimp account is reachable.

mailchimpmcp_mailchimp_schedule_campaign#Queues a campaign for future delivery at a specified date and time.2 params

Queues a campaign for future delivery at a specified date and time.

NameTypeRequiredDescription
campaign_idstringrequiredThe unique identifier for the campaign.
schedule_timestringrequiredUTC datetime for scheduled delivery (ISO 8601 format).
mailchimpmcp_mailchimp_search_members#Searches across audiences for members matching a query by email address or name.2 params

Searches across audiences for members matching a query by email address or name.

NameTypeRequiredDescription
querystringrequiredSearch query string (email or name)
list_idstringoptionalOptional: restrict search to a specific audience
mailchimpmcp_mailchimp_send_campaign#Dispatches a campaign immediately to all recipients. This action is irreversible.1 param

Dispatches a campaign immediately to all recipients. This action is irreversible.

NameTypeRequiredDescription
campaign_idstringrequiredThe unique identifier for the campaign to send.
mailchimpmcp_mailchimp_send_test_email#Sends a preview test email to specified recipients before live distribution.3 params

Sends a preview test email to specified recipients before live distribution.

NameTypeRequiredDescription
campaign_idstringrequiredThe unique identifier for the campaign.
send_typestringrequiredTest type: html or plaintext.
test_emailsarrayrequiredEmail addresses to send the test to.
mailchimpmcp_mailchimp_start_automation#Activates a Classic Automation workflow so it begins processing.1 param

Activates a Classic Automation workflow so it begins processing.

NameTypeRequiredDescription
workflow_idstringrequiredThe unique identifier for the automation workflow.
mailchimpmcp_mailchimp_unschedule_campaign#Cancels a previously scheduled campaign, returning it to draft status.1 param

Cancels a previously scheduled campaign, returning it to draft status.

NameTypeRequiredDescription
campaign_idstringrequiredThe unique identifier for the scheduled campaign.
mailchimpmcp_mailchimp_update_audience#Updates an existing audience's settings such as name and campaign defaults.2 params

Updates an existing audience's settings such as name and campaign defaults.

NameTypeRequiredDescription
list_idstringrequiredThe unique identifier for the audience/list.
namestringoptionalNew name for the audience.
mailchimpmcp_mailchimp_update_campaign#Modifies an existing campaign's settings including subject line, sender info, and audience targeting.3 params

Modifies an existing campaign's settings including subject line, sender info, and audience targeting.

NameTypeRequiredDescription
campaign_idstringrequiredThe unique identifier for the campaign.
recipientsobjectoptionalAudience targeting settings.
settingsobjectoptionalCampaign settings to update (subject_line, from_name, reply_to, etc.).
mailchimpmcp_mailchimp_update_campaign_content#Sets or modifies the HTML and plain-text content of a campaign draft.4 params

Sets or modifies the HTML and plain-text content of a campaign draft.

NameTypeRequiredDescription
campaign_idstringrequiredThe unique identifier for the campaign.
htmlstringoptionalThe HTML content for the campaign.
plain_textstringoptionalThe plain-text content for the campaign.
templateobjectoptionalTemplate ID and section content to use for the campaign.
mailchimpmcp_mailchimp_update_member_tags#Adds or removes tags for a specific subscriber in an audience.3 params

Adds or removes tags for a specific subscriber in an audience.

NameTypeRequiredDescription
list_idstringrequiredThe unique identifier for the audience/list.
subscriber_hashstringrequiredMD5 hash of the lowercase version of the member's email address.
tagsarrayrequiredTags to add (active) or remove (inactive).
mailchimpmcp_mailchimp_update_segment#Modifies an existing audience segment's name or conditions.3 params

Modifies an existing audience segment's name or conditions.

NameTypeRequiredDescription
list_idstringrequiredThe unique identifier for the audience/list.
segment_idintegerrequiredThe unique identifier for the segment.
namestringoptionalNew name for the segment.
mailchimpmcp_mailchimp_update_template#Modifies an existing template's name or HTML content.3 params

Modifies an existing template's name or HTML content.

NameTypeRequiredDescription
template_idintegerrequiredThe unique identifier for the template.
htmlstringoptionalUpdated HTML content.
namestringoptionalNew name for the template.