diff --git a/src/components/templates/agent-connectors/_section-after-setup-mailchimpmcp-common-workflows.mdx b/src/components/templates/agent-connectors/_section-after-setup-mailchimpmcp-common-workflows.mdx
new file mode 100644
index 000000000..20e0dba13
--- /dev/null
+++ b/src/components/templates/agent-connectors/_section-after-setup-mailchimpmcp-common-workflows.mdx
@@ -0,0 +1,78 @@
+{/* TODO: stub cloned from _section-after-setup-atlassianmcp-common-workflows.mdx for Mailchimp MCP. Review and update connector-specific references (URLs, scopes, app-registration steps) before merging. */}
+export const sectionTitle = 'Common workflows'
+
+import { Tabs, TabItem, Aside } from '@astrojs/starlight/components'
+
+### 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.
+
+
+
+
+
+ ```typescript
+ // 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);
+ ```
+
+
+ ```python
+ # Step 1 — get the cloud ID
+ resources = actions.execute_tool(
+ connection_name="mailchimpmcp",
+ identifier="user_123",
+ tool_name="mailchimpmcp_getaccessibleatlassianresources",
+ tool_input={},
+ )
+ cloud_id = resources[0]["id"]
+
+ # Step 2 — use cloud_id in subsequent calls
+ issue = actions.execute_tool(
+ connection_name="mailchimpmcp",
+ identifier="user_123",
+ tool_name="mailchimpmcp_getjiraissue",
+ tool_input={
+ "cloudId": cloud_id,
+ "issueIdOrKey": "KAN-1",
+ },
+ )
+ print(issue)
+ ```
+
+
+
+The `mailchimpmcp_getaccessibleatlassianresources` response looks like this:
+
+```json
+[
+ {
+ "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`.
diff --git a/src/components/templates/agent-connectors/_setup-mailchimpmcp.mdx b/src/components/templates/agent-connectors/_setup-mailchimpmcp.mdx
new file mode 100644
index 000000000..917123fdb
--- /dev/null
+++ b/src/components/templates/agent-connectors/_setup-mailchimpmcp.mdx
@@ -0,0 +1,33 @@
+{/* TODO: stub cloned from _setup-atlassianmcp.mdx for Mailchimp MCP. Review and update connector-specific references (URLs, scopes, app-registration steps) before merging. */}
+import { Steps, Aside } from '@astrojs/starlight/components'
+
+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](https://app.scalekit.com), go to **AgentKit** > **Connections** > **Create Connection**. Find **Mailchimp MCP** and click **Create**. Copy the redirect URI — it looks like `https:///sso/v1/oauth//callback`.
+
+ {/* TODO: add screenshot — alt: "Copy redirect URI from Scalekit dashboard for Mailchimp MCP", original src: @/assets/docs/agent-connectors/mailchimpmcp/copy-redirect-uri.png */}
+2. ### Open the Rovo MCP server settings in Atlassian
+
+ - Go to [admin.atlassian.com](https://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**.
+
+ {/* TODO: add screenshot — alt: "Your domains section in Mailchimp MCP server administration", original src: @/assets/docs/agent-connectors/mailchimpmcp/add-domain-redirect-uri.png */}
+ - In the **Add domain** dialog, paste the redirect URI from Scalekit into the **Domain** field.
+ - Accept the terms and click **Add**.
+
+ {/* TODO: add screenshot — alt: "Add domain dialog in Mailchimp MCP server", original src: @/assets/docs/agent-connectors/mailchimpmcp/add-domain-modal.png */}
+ 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.
+
diff --git a/src/components/templates/agent-connectors/index.ts b/src/components/templates/agent-connectors/index.ts
index dca9fb9b1..ff83886ce 100644
--- a/src/components/templates/agent-connectors/index.ts
+++ b/src/components/templates/agent-connectors/index.ts
@@ -62,6 +62,7 @@ export { default as SetupLinearSection } from './_setup-linear.mdx'
export { default as SetupLinklymcpSection } from './_setup-linklymcp.mdx'
export { default as SetupLushamcpSection } from './_setup-lushamcp.mdx'
export { default as SetupMailchimpSection } from './_setup-mailchimp.mdx'
+export { default as SetupMailchimpmcpSection } from './_setup-mailchimpmcp.mdx'
export { default as SetupMicrosoftExcelSection } from './_setup-microsoft-excel.mdx'
export { default as SetupMicrosoftTeamsSection } from './_setup-microsoft-teams.mdx'
export { default as SetupMicrosoftWordSection } from './_setup-microsoft-word.mdx'
@@ -162,6 +163,7 @@ export { default as SectionAfterSetupLeadiqCommonWorkflows } from './_section-af
export { default as SectionAfterSetupLinearCommonWorkflows } from './_section-after-setup-linear-common-workflows.mdx'
export { default as SectionAfterSetupLinklymcpCommonWorkflows } from './_section-after-setup-linklymcp-common-workflows.mdx'
export { default as SectionAfterSetupMailchimpCommonWorkflows } from './_section-after-setup-mailchimp-common-workflows.mdx'
+export { default as SectionAfterSetupMailchimpmcpCommonWorkflows } from './_section-after-setup-mailchimpmcp-common-workflows.mdx'
export { default as SectionAfterSetupMicrosoft365CommonWorkflows } from './_section-after-setup-microsoft365-common-workflows.mdx'
export { default as SectionAfterSetupMicrosoftexcelCommonWorkflows } from './_section-after-setup-microsoftexcel-common-workflows.mdx'
export { default as SectionAfterSetupMicrosoftteamsCommonWorkflows } from './_section-after-setup-microsoftteams-common-workflows.mdx'
diff --git a/src/content/docs/agentkit/connectors/mailchimpmcp.mdx b/src/content/docs/agentkit/connectors/mailchimpmcp.mdx
new file mode 100644
index 000000000..eb2cdf986
--- /dev/null
+++ b/src/content/docs/agentkit/connectors/mailchimpmcp.mdx
@@ -0,0 +1,89 @@
+---
+title: 'Mailchimp MCP connector'
+tableOfContents: true
+description: 'Connect to Mailchimp''s email marketing and automation platform via Model Context Protocol. Manage audiences, campaigns, automations, and analytics through...'
+sidebar:
+ label: 'Mailchimp MCP'
+overviewTitle: 'Quickstart'
+connectorIcon: https://cdn.scalekit.com/sk-connect/assets/provider-icons/mailchimp.svg
+connectorAuthType: OAuth 2.1
+connectorCategories: [Marketing, Automation, Communication]
+head:
+ - tag: style
+ content: |
+ .sl-markdown-content h2 {
+ font-size: var(--sl-text-xl);
+ }
+ .sl-markdown-content h3 {
+ font-size: var(--sl-text-lg);
+ }
+---
+
+import ToolList from '@/components/ToolList.astro'
+import { tools } from '@/data/agent-connectors/mailchimpmcp'
+import { Steps, Tabs, TabItem } from '@astrojs/starlight/components'
+import { AgentKitCredentials } from '@components/templates'
+import { SetupMailchimpmcpSection } from '@components/templates'
+import { QuickstartGenericOauthSection } from '@components/templates'
+import { SectionAfterSetupMailchimpmcpCommonWorkflows } from '@components/templates'
+
+
+
+1. ### Install the SDK
+
+
+
+ ```bash frame="terminal"
+ npm install @scalekit-sdk/node
+ ```
+
+
+ ```bash frame="terminal"
+ pip install scalekit
+ ```
+
+
+
+ Full SDK reference: [Node.js](/agentkit/sdks/node/) | [Python](/agentkit/sdks/python/)
+
+2. ### Set your credentials
+
+
+
+3. ### Set up the connector
+
+ Register your Mailchimp MCP credentials with Scalekit so it handles the token lifecycle. You do this once per environment.
+
+
+ Dashboard setup steps
+
+
+
+
+
+4. ### Authorize and make your first call
+
+
+
+
+
+## What you can do
+
+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
+
+## Common workflows
+
+
+
+## Tool list
+
+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.
+
+
diff --git a/src/data/agent-connectors/catalog.ts b/src/data/agent-connectors/catalog.ts
index 19ff223f2..f3a88b5f6 100644
--- a/src/data/agent-connectors/catalog.ts
+++ b/src/data/agent-connectors/catalog.ts
@@ -1039,4 +1039,9 @@ export const catalog: Record = {
authType: 'Bearer Token',
categories: ['Communication', 'AI'],
},
+ mailchimpmcp: {
+ iconUrl: 'https://cdn.scalekit.com/sk-connect/assets/provider-icons/mailchimp.svg',
+ authType: 'OAuth 2.1',
+ categories: ['Marketing', 'Automation', 'Communication'],
+ },
}
diff --git a/src/data/agent-connectors/mailchimpmcp.ts b/src/data/agent-connectors/mailchimpmcp.ts
new file mode 100644
index 000000000..a90504407
--- /dev/null
+++ b/src/data/agent-connectors/mailchimpmcp.ts
@@ -0,0 +1,915 @@
+import type { Tool } from '../../types/agent-connectors'
+
+export const tools: Tool[] = [
+ {
+ name: 'mailchimpmcp_mailchimp_add_member_note',
+ description: `Appends a CRM-style note to a specific member's record.`,
+ params: [
+ {
+ name: 'list_id',
+ type: 'string',
+ required: true,
+ description: `The unique identifier for the audience/list`,
+ },
+ { name: 'note', type: 'string', required: true, description: `The note content to add` },
+ {
+ name: 'subscriber_hash',
+ type: 'string',
+ required: true,
+ description: `MD5 hash of the lowercase version of the member's email address`,
+ },
+ ],
+ },
+ {
+ name: 'mailchimpmcp_mailchimp_add_or_update_member',
+ description: `Adds a new subscriber to an audience or updates an existing one (upsert operation).`,
+ params: [
+ {
+ name: 'email_address',
+ type: 'string',
+ required: true,
+ description: `The email address of the subscriber.`,
+ },
+ {
+ name: 'list_id',
+ type: 'string',
+ required: true,
+ description: `The unique identifier for the audience/list.`,
+ },
+ {
+ name: 'status',
+ type: 'string',
+ required: true,
+ description: `Subscriber status: subscribed, unsubscribed, cleaned, pending.`,
+ },
+ {
+ name: 'merge_fields',
+ type: 'object',
+ required: false,
+ description: `Custom merge field values (e.g. FNAME, LNAME).`,
+ },
+ {
+ name: 'tags',
+ type: 'array',
+ required: false,
+ description: `Tags to assign to the subscriber.`,
+ },
+ ],
+ },
+ {
+ name: 'mailchimpmcp_mailchimp_archive_member',
+ description: `Archives (soft-deletes) a contact from an audience without permanently removing them.`,
+ params: [
+ {
+ name: 'list_id',
+ type: 'string',
+ required: true,
+ description: `The unique identifier for the audience/list.`,
+ },
+ {
+ name: 'subscriber_hash',
+ type: 'string',
+ required: true,
+ description: `MD5 hash of the lowercase version of the member's email address.`,
+ },
+ ],
+ },
+ {
+ name: 'mailchimpmcp_mailchimp_create_audience',
+ description: `Creates a new audience (list) in the Mailchimp account with specified settings.`,
+ params: [
+ {
+ name: 'campaign_defaults',
+ type: 'object',
+ required: true,
+ description: `Default values for campaigns sent to this list.`,
+ },
+ {
+ name: 'contact',
+ type: 'object',
+ required: true,
+ description: `Contact information for the list owner.`,
+ },
+ {
+ name: 'email_type_option',
+ type: 'boolean',
+ required: true,
+ description: `Whether the list supports multiple formats for emails.`,
+ },
+ {
+ name: 'name',
+ type: 'string',
+ required: true,
+ description: `The name of the new audience.`,
+ },
+ {
+ name: 'permission_reminder',
+ type: 'string',
+ required: true,
+ description: `Reminder of how the user signed up for the list.`,
+ },
+ ],
+ },
+ {
+ name: 'mailchimpmcp_mailchimp_create_campaign',
+ description: `Creates a new campaign draft with specified type, audience, subject line, and sender details.`,
+ params: [
+ {
+ name: 'type',
+ type: 'string',
+ required: true,
+ description: `Campaign type: regular, plaintext, absplit, rss, variate.`,
+ },
+ {
+ name: 'recipients',
+ type: 'object',
+ required: false,
+ description: `List settings including list_id and segment conditions.`,
+ },
+ {
+ name: 'settings',
+ type: 'object',
+ required: false,
+ description: `Campaign settings including subject_line, from_name, reply_to.`,
+ },
+ ],
+ },
+ {
+ name: 'mailchimpmcp_mailchimp_create_merge_field',
+ description: `Adds a new custom merge field to an audience for collecting additional subscriber data.`,
+ params: [
+ {
+ name: 'list_id',
+ type: 'string',
+ required: true,
+ description: `The unique identifier for the audience/list`,
+ },
+ { name: 'name', type: 'string', required: true, description: `The name of the merge field` },
+ {
+ name: 'type',
+ type: 'string',
+ required: true,
+ description: `Field type: text, number, address, phone, date, url, imageurl, radio, dropdown, birthday, zip`,
+ },
+ ],
+ },
+ {
+ name: 'mailchimpmcp_mailchimp_create_segment',
+ description: `Builds a static or dynamic segment within an audience based on conditions.`,
+ params: [
+ {
+ name: 'list_id',
+ type: 'string',
+ required: true,
+ description: `The unique identifier for the audience/list.`,
+ },
+ { name: 'name', type: 'string', required: true, description: `Name of the segment.` },
+ {
+ name: 'options',
+ type: 'object',
+ required: false,
+ description: `Segment conditions (match, conditions array).`,
+ },
+ {
+ name: 'static_segment',
+ type: 'array',
+ required: false,
+ description: `Email addresses for a static segment.`,
+ },
+ ],
+ },
+ {
+ name: 'mailchimpmcp_mailchimp_create_template',
+ description: `Creates a new email template with custom HTML content.`,
+ params: [
+ {
+ name: 'html',
+ type: 'string',
+ required: true,
+ description: `HTML content of the template.`,
+ },
+ { name: 'name', type: 'string', required: true, description: `Name of the template.` },
+ ],
+ },
+ {
+ name: 'mailchimpmcp_mailchimp_delete_audience',
+ description: `Permanently deletes an audience and all associated member data.`,
+ params: [
+ {
+ name: 'list_id',
+ type: 'string',
+ required: true,
+ description: `The unique identifier for the audience/list to delete.`,
+ },
+ ],
+ },
+ {
+ name: 'mailchimpmcp_mailchimp_delete_campaign',
+ description: `Removes an unsent campaign from the account permanently.`,
+ params: [
+ {
+ name: 'campaign_id',
+ type: 'string',
+ required: true,
+ description: `The unique identifier for the campaign to delete.`,
+ },
+ ],
+ },
+ {
+ name: 'mailchimpmcp_mailchimp_delete_member_permanent',
+ description: `Permanently and irreversibly removes a contact from an audience.`,
+ params: [
+ {
+ name: 'list_id',
+ type: 'string',
+ required: true,
+ description: `The unique identifier for the audience/list`,
+ },
+ {
+ name: 'subscriber_hash',
+ type: 'string',
+ required: true,
+ description: `MD5 hash of the lowercase version of the member's email address`,
+ },
+ ],
+ },
+ {
+ name: 'mailchimpmcp_mailchimp_delete_segment',
+ description: `Permanently removes a segment from an audience.`,
+ params: [
+ {
+ name: 'list_id',
+ type: 'string',
+ required: true,
+ description: `The unique identifier for the audience/list.`,
+ },
+ {
+ name: 'segment_id',
+ type: 'integer',
+ required: true,
+ description: `The unique identifier for the segment to delete.`,
+ },
+ ],
+ },
+ {
+ name: 'mailchimpmcp_mailchimp_delete_template',
+ description: `Permanently removes a template from the account.`,
+ params: [
+ {
+ name: 'template_id',
+ type: 'integer',
+ required: true,
+ description: `The unique identifier for the template to delete.`,
+ },
+ ],
+ },
+ {
+ name: 'mailchimpmcp_mailchimp_get_account',
+ description: `Retrieves account details including plan information, total subscriber count, and account metadata.`,
+ params: [],
+ },
+ {
+ name: 'mailchimpmcp_mailchimp_get_audience',
+ description: `Retrieves detailed information about a specific Mailchimp audience including settings and statistics.`,
+ params: [
+ {
+ name: 'list_id',
+ type: 'string',
+ required: true,
+ description: `The unique identifier for the audience/list.`,
+ },
+ ],
+ },
+ {
+ name: 'mailchimpmcp_mailchimp_get_automation',
+ description: `Retrieves details of a specific Classic Automation workflow.`,
+ params: [
+ {
+ name: 'workflow_id',
+ type: 'string',
+ required: true,
+ description: `The unique identifier for the automation workflow.`,
+ },
+ ],
+ },
+ {
+ name: 'mailchimpmcp_mailchimp_get_campaign',
+ description: `Returns full configuration details for a specific campaign.`,
+ params: [
+ {
+ name: 'campaign_id',
+ type: 'string',
+ required: true,
+ description: `The unique identifier for the campaign.`,
+ },
+ ],
+ },
+ {
+ name: 'mailchimpmcp_mailchimp_get_campaign_content',
+ description: `Retrieves the HTML and plain-text content of a campaign.`,
+ params: [
+ {
+ name: 'campaign_id',
+ type: 'string',
+ required: true,
+ description: `The unique identifier for the campaign.`,
+ },
+ ],
+ },
+ {
+ name: 'mailchimpmcp_mailchimp_get_campaign_report',
+ description: `Returns engagement metrics for a sent campaign including opens, clicks, and bounces.`,
+ params: [
+ {
+ name: 'campaign_id',
+ type: 'string',
+ required: true,
+ description: `The unique identifier for the campaign.`,
+ },
+ ],
+ },
+ {
+ name: 'mailchimpmcp_mailchimp_get_campaign_sent_to',
+ description: `Returns the complete list of recipients a campaign was sent to with delivery status.`,
+ params: [
+ {
+ name: 'campaign_id',
+ type: 'string',
+ required: true,
+ description: `The unique identifier for the campaign.`,
+ },
+ ],
+ },
+ {
+ name: 'mailchimpmcp_mailchimp_get_click_details',
+ description: `Returns per-link click engagement metrics for a campaign.`,
+ params: [
+ {
+ name: 'campaign_id',
+ type: 'string',
+ required: true,
+ description: `The unique identifier for the campaign.`,
+ },
+ ],
+ },
+ {
+ name: 'mailchimpmcp_mailchimp_get_domain_performance',
+ description: `Returns email campaign performance broken down by recipient email domain (e.g. gmail.com, yahoo.com).`,
+ params: [
+ {
+ name: 'campaign_id',
+ type: 'string',
+ required: true,
+ description: `The unique identifier for the campaign.`,
+ },
+ ],
+ },
+ {
+ name: 'mailchimpmcp_mailchimp_get_email_activity',
+ description: `Reports per-recipient delivery status and engagement for a campaign.`,
+ params: [
+ {
+ name: 'campaign_id',
+ type: 'string',
+ required: true,
+ description: `The unique identifier for the campaign.`,
+ },
+ ],
+ },
+ {
+ name: 'mailchimpmcp_mailchimp_get_member',
+ description: `Retrieves full profile information for a specific member in an audience.`,
+ params: [
+ {
+ name: 'list_id',
+ type: 'string',
+ required: true,
+ description: `The unique identifier for the audience/list.`,
+ },
+ {
+ name: 'subscriber_hash',
+ type: 'string',
+ required: true,
+ description: `MD5 hash of the lowercase version of the member's email address.`,
+ },
+ ],
+ },
+ {
+ name: 'mailchimpmcp_mailchimp_get_member_activity',
+ description: `Retrieves a member's activity history including opens, clicks, and bounce events.`,
+ params: [
+ {
+ name: 'list_id',
+ type: 'string',
+ required: true,
+ description: `The unique identifier for the audience/list`,
+ },
+ {
+ name: 'subscriber_hash',
+ type: 'string',
+ required: true,
+ description: `MD5 hash of the lowercase version of the member's email address`,
+ },
+ ],
+ },
+ {
+ name: 'mailchimpmcp_mailchimp_get_member_notes',
+ description: `Retrieves CRM-style notes attached to a specific member.`,
+ params: [
+ {
+ name: 'list_id',
+ type: 'string',
+ required: true,
+ description: `The unique identifier for the audience/list`,
+ },
+ {
+ name: 'subscriber_hash',
+ type: 'string',
+ required: true,
+ description: `MD5 hash of the lowercase version of the member's email address`,
+ },
+ ],
+ },
+ {
+ name: 'mailchimpmcp_mailchimp_get_member_tags',
+ description: `Returns the tags assigned to a specific subscriber.`,
+ params: [
+ {
+ name: 'list_id',
+ type: 'string',
+ required: true,
+ description: `The unique identifier for the audience/list.`,
+ },
+ {
+ name: 'subscriber_hash',
+ type: 'string',
+ required: true,
+ description: `MD5 hash of the lowercase version of the member's email address.`,
+ },
+ ],
+ },
+ {
+ name: 'mailchimpmcp_mailchimp_get_open_details',
+ description: `Returns details about who opened a campaign and when, including open frequency and timing.`,
+ params: [
+ {
+ name: 'campaign_id',
+ type: 'string',
+ required: true,
+ description: `The unique identifier for the campaign.`,
+ },
+ ],
+ },
+ {
+ name: 'mailchimpmcp_mailchimp_get_template',
+ description: `Fetches the details of a specific email template.`,
+ params: [
+ {
+ name: 'template_id',
+ type: 'integer',
+ required: true,
+ description: `The unique identifier for the template.`,
+ },
+ ],
+ },
+ {
+ name: 'mailchimpmcp_mailchimp_get_top_links',
+ description: `Ranks campaign links by click performance to identify highest-engagement content.`,
+ params: [
+ {
+ name: 'campaign_id',
+ type: 'string',
+ required: true,
+ description: `The unique identifier for the campaign.`,
+ },
+ ],
+ },
+ {
+ name: 'mailchimpmcp_mailchimp_list_audiences',
+ description: `Returns a list of all audiences (lists) in the Mailchimp account with member counts and statistics.`,
+ params: [
+ {
+ name: 'count',
+ type: 'integer',
+ required: false,
+ description: `Number of records to return (max 1000).`,
+ },
+ {
+ name: 'offset',
+ type: 'integer',
+ required: false,
+ description: `Number of records to skip for pagination.`,
+ },
+ ],
+ },
+ {
+ name: 'mailchimpmcp_mailchimp_list_automation_emails',
+ description: `Returns the emails within a Classic Automation workflow.`,
+ params: [
+ {
+ name: 'workflow_id',
+ type: 'string',
+ required: true,
+ description: `The unique identifier for the automation workflow.`,
+ },
+ ],
+ },
+ {
+ name: 'mailchimpmcp_mailchimp_list_automations',
+ description: `Returns all Classic Automation workflows in the account.`,
+ params: [],
+ },
+ {
+ name: 'mailchimpmcp_mailchimp_list_campaign_abuse_reports',
+ description: `Returns a list of spam complaints received for a campaign.`,
+ params: [
+ {
+ name: 'campaign_id',
+ type: 'string',
+ required: true,
+ description: `The unique identifier for the campaign.`,
+ },
+ ],
+ },
+ {
+ name: 'mailchimpmcp_mailchimp_list_campaigns',
+ description: `Returns a list of campaigns in the Mailchimp account with optional status and audience filtering.`,
+ params: [
+ {
+ name: 'count',
+ type: 'integer',
+ required: false,
+ description: `Number of records to return`,
+ },
+ {
+ name: 'list_id',
+ type: 'string',
+ required: false,
+ description: `Filter campaigns by audience`,
+ },
+ {
+ name: 'offset',
+ type: 'integer',
+ required: false,
+ description: `Number of records to skip for pagination`,
+ },
+ {
+ name: 'status',
+ type: 'string',
+ required: false,
+ description: `Filter by campaign status: save, paused, schedule, sending, sent`,
+ },
+ ],
+ },
+ {
+ name: 'mailchimpmcp_mailchimp_list_interest_categories',
+ description: `Returns interest category groupings for an audience used in subscriber preference management.`,
+ params: [
+ {
+ name: 'list_id',
+ type: 'string',
+ required: true,
+ description: `The unique identifier for the audience/list`,
+ },
+ ],
+ },
+ {
+ name: 'mailchimpmcp_mailchimp_list_interests',
+ description: `Returns interests within a specific interest category for an audience.`,
+ params: [
+ {
+ name: 'interest_category_id',
+ type: 'string',
+ required: true,
+ description: `The unique identifier for the interest category`,
+ },
+ {
+ name: 'list_id',
+ type: 'string',
+ required: true,
+ description: `The unique identifier for the audience/list`,
+ },
+ ],
+ },
+ {
+ name: 'mailchimpmcp_mailchimp_list_members',
+ description: `Returns a list of members in a specified audience with optional status filtering.`,
+ params: [
+ {
+ name: 'list_id',
+ type: 'string',
+ required: true,
+ description: `The unique identifier for the audience/list.`,
+ },
+ {
+ name: 'count',
+ type: 'integer',
+ required: false,
+ description: `Number of records to return.`,
+ },
+ {
+ name: 'offset',
+ type: 'integer',
+ required: false,
+ description: `Number of records to skip for pagination.`,
+ },
+ {
+ name: 'status',
+ type: 'string',
+ required: false,
+ description: `Member status filter: subscribed, unsubscribed, cleaned, pending, transactional.`,
+ },
+ ],
+ },
+ {
+ name: 'mailchimpmcp_mailchimp_list_merge_fields',
+ description: `Returns all custom merge fields (custom contact data fields) for an audience.`,
+ params: [
+ {
+ name: 'list_id',
+ type: 'string',
+ required: true,
+ description: `The unique identifier for the audience/list`,
+ },
+ ],
+ },
+ {
+ name: 'mailchimpmcp_mailchimp_list_segments',
+ description: `Returns all saved segments in an audience.`,
+ params: [
+ {
+ name: 'list_id',
+ type: 'string',
+ required: true,
+ description: `The unique identifier for the audience/list.`,
+ },
+ ],
+ },
+ {
+ name: 'mailchimpmcp_mailchimp_list_tags',
+ description: `Returns all tags available in a specific audience.`,
+ params: [
+ {
+ name: 'list_id',
+ type: 'string',
+ required: true,
+ description: `The unique identifier for the audience/list.`,
+ },
+ ],
+ },
+ {
+ name: 'mailchimpmcp_mailchimp_list_templates',
+ description: `Returns available email templates in the account.`,
+ params: [
+ {
+ name: 'count',
+ type: 'integer',
+ required: false,
+ description: `Number of records to return.`,
+ },
+ {
+ name: 'offset',
+ type: 'integer',
+ required: false,
+ description: `Number of records to skip for pagination.`,
+ },
+ ],
+ },
+ {
+ name: 'mailchimpmcp_mailchimp_pause_automation',
+ description: `Pauses a Classic Automation workflow, halting email delivery until restarted.`,
+ params: [
+ {
+ name: 'workflow_id',
+ type: 'string',
+ required: true,
+ description: `The unique identifier for the automation workflow.`,
+ },
+ ],
+ },
+ {
+ name: 'mailchimpmcp_mailchimp_ping',
+ description: `Validates API key connectivity and checks that the Mailchimp account is reachable.`,
+ params: [],
+ },
+ {
+ name: 'mailchimpmcp_mailchimp_schedule_campaign',
+ description: `Queues a campaign for future delivery at a specified date and time.`,
+ params: [
+ {
+ name: 'campaign_id',
+ type: 'string',
+ required: true,
+ description: `The unique identifier for the campaign.`,
+ },
+ {
+ name: 'schedule_time',
+ type: 'string',
+ required: true,
+ description: `UTC datetime for scheduled delivery (ISO 8601 format).`,
+ },
+ ],
+ },
+ {
+ name: 'mailchimpmcp_mailchimp_search_members',
+ description: `Searches across audiences for members matching a query by email address or name.`,
+ params: [
+ {
+ name: 'query',
+ type: 'string',
+ required: true,
+ description: `Search query string (email or name)`,
+ },
+ {
+ name: 'list_id',
+ type: 'string',
+ required: false,
+ description: `Optional: restrict search to a specific audience`,
+ },
+ ],
+ },
+ {
+ name: 'mailchimpmcp_mailchimp_send_campaign',
+ description: `Dispatches a campaign immediately to all recipients. This action is irreversible.`,
+ params: [
+ {
+ name: 'campaign_id',
+ type: 'string',
+ required: true,
+ description: `The unique identifier for the campaign to send.`,
+ },
+ ],
+ },
+ {
+ name: 'mailchimpmcp_mailchimp_send_test_email',
+ description: `Sends a preview test email to specified recipients before live distribution.`,
+ params: [
+ {
+ name: 'campaign_id',
+ type: 'string',
+ required: true,
+ description: `The unique identifier for the campaign.`,
+ },
+ {
+ name: 'send_type',
+ type: 'string',
+ required: true,
+ description: `Test type: html or plaintext.`,
+ },
+ {
+ name: 'test_emails',
+ type: 'array',
+ required: true,
+ description: `Email addresses to send the test to.`,
+ },
+ ],
+ },
+ {
+ name: 'mailchimpmcp_mailchimp_start_automation',
+ description: `Activates a Classic Automation workflow so it begins processing.`,
+ params: [
+ {
+ name: 'workflow_id',
+ type: 'string',
+ required: true,
+ description: `The unique identifier for the automation workflow.`,
+ },
+ ],
+ },
+ {
+ name: 'mailchimpmcp_mailchimp_unschedule_campaign',
+ description: `Cancels a previously scheduled campaign, returning it to draft status.`,
+ params: [
+ {
+ name: 'campaign_id',
+ type: 'string',
+ required: true,
+ description: `The unique identifier for the scheduled campaign.`,
+ },
+ ],
+ },
+ {
+ name: 'mailchimpmcp_mailchimp_update_audience',
+ description: `Updates an existing audience's settings such as name and campaign defaults.`,
+ params: [
+ {
+ name: 'list_id',
+ type: 'string',
+ required: true,
+ description: `The unique identifier for the audience/list.`,
+ },
+ { name: 'name', type: 'string', required: false, description: `New name for the audience.` },
+ ],
+ },
+ {
+ name: 'mailchimpmcp_mailchimp_update_campaign',
+ description: `Modifies an existing campaign's settings including subject line, sender info, and audience targeting.`,
+ params: [
+ {
+ name: 'campaign_id',
+ type: 'string',
+ required: true,
+ description: `The unique identifier for the campaign.`,
+ },
+ {
+ name: 'recipients',
+ type: 'object',
+ required: false,
+ description: `Audience targeting settings.`,
+ },
+ {
+ name: 'settings',
+ type: 'object',
+ required: false,
+ description: `Campaign settings to update (subject_line, from_name, reply_to, etc.).`,
+ },
+ ],
+ },
+ {
+ name: 'mailchimpmcp_mailchimp_update_campaign_content',
+ description: `Sets or modifies the HTML and plain-text content of a campaign draft.`,
+ params: [
+ {
+ name: 'campaign_id',
+ type: 'string',
+ required: true,
+ description: `The unique identifier for the campaign.`,
+ },
+ {
+ name: 'html',
+ type: 'string',
+ required: false,
+ description: `The HTML content for the campaign.`,
+ },
+ {
+ name: 'plain_text',
+ type: 'string',
+ required: false,
+ description: `The plain-text content for the campaign.`,
+ },
+ {
+ name: 'template',
+ type: 'object',
+ required: false,
+ description: `Template ID and section content to use for the campaign.`,
+ },
+ ],
+ },
+ {
+ name: 'mailchimpmcp_mailchimp_update_member_tags',
+ description: `Adds or removes tags for a specific subscriber in an audience.`,
+ params: [
+ {
+ name: 'list_id',
+ type: 'string',
+ required: true,
+ description: `The unique identifier for the audience/list.`,
+ },
+ {
+ name: 'subscriber_hash',
+ type: 'string',
+ required: true,
+ description: `MD5 hash of the lowercase version of the member's email address.`,
+ },
+ {
+ name: 'tags',
+ type: 'array',
+ required: true,
+ description: `Tags to add (active) or remove (inactive).`,
+ },
+ ],
+ },
+ {
+ name: 'mailchimpmcp_mailchimp_update_segment',
+ description: `Modifies an existing audience segment's name or conditions.`,
+ params: [
+ {
+ name: 'list_id',
+ type: 'string',
+ required: true,
+ description: `The unique identifier for the audience/list.`,
+ },
+ {
+ name: 'segment_id',
+ type: 'integer',
+ required: true,
+ description: `The unique identifier for the segment.`,
+ },
+ { name: 'name', type: 'string', required: false, description: `New name for the segment.` },
+ ],
+ },
+ {
+ name: 'mailchimpmcp_mailchimp_update_template',
+ description: `Modifies an existing template's name or HTML content.`,
+ params: [
+ {
+ name: 'template_id',
+ type: 'integer',
+ required: true,
+ description: `The unique identifier for the template.`,
+ },
+ { name: 'html', type: 'string', required: false, description: `Updated HTML content.` },
+ { name: 'name', type: 'string', required: false, description: `New name for the template.` },
+ ],
+ },
+]