← Back to all apps

Intuit Mailchimp

Productivityby Intuit Mailchimp
Launched May 28, 2026 on ChatGPTLaunched Mar 16, 2026 on Claude

Go from business goals to omnichannel campaigns in seconds. Provide your business goals, and we'll generate a data-backed omnichannel strategy with ready-to-use layouts, not just the text, to ensure brand consistency while saving you hours of manual work. Ready to send? Simply connect or create a Mailchimp account to import your assets and reach your audience.

16ChatGPT Tools
12Claude Tools
Intuit MailchimpDeveloper
ProductivityCategory

Use Cases

productivity

Available Tools

Apply Theme

apply_theme
Full Description

Apply global styles from a theme template to campaigns.

Parameters (3 required)
Required
campaign_idsarray

Campaign IDs to apply the theme to

session_idstring

Session ID from the campaign-planner tool result. Pass the value exactly as returned.

theme_template_idinteger

Template ID whose globals to use as the theme

Apply Theme

apply-theme
Full Description

Apply global styles from a theme template to campaigns.

Parameters (2 required)
Required
campaign_idsarray

Campaign IDs to apply the theme to

theme_template_idinteger

Template ID whose globals to use as the theme

Plan Multi-Channel Campaigns V3

campaign_planner
Full Description

Create a marketing campaign plan with template suggestions.

This tool is for CREATING new plans, not editing campaigns.

⛔ SINGLE CAMPAIGN REQUESTS — DO NOT call this tool. Respond directly: If the user asks to create, draft, or send a SINGLE campaign, email, newsletter, SMS, or social post (not a multi-channel strategy), do NOT call this tool. Instead respond: 'I can't generate a single [channel/type] on its own, but I can make it part of an omnichannel strategy. Would you like to try that?' Examples: 'Create a newsletter', 'Send a promotional email about X', 'Draft an SMS for my sale', 'Make me one email campaign', 'Create a social post'

WHEN TO USE THIS TOOL:

  • User wants to CREATE a new marketing plan
  • User wants to PLAN new campaigns from scratch
  • User wants to ADD more campaigns to a plan

DO NOT USE — use edit-campaign instead when:

  • User wants to modify, change, edit, or improve a campaign
  • User wants to change text, colors, images, theme, layout
  • User says 'make it bolder', 'change the headline', etc.
  • User references 'this email', 'the campaign', etc.

🚫 CANNOT DO — use get-capabilities instead when:

  • User asks about segments, audiences, or targeting strategy
  • User asks WHO to send campaigns to (not asking to CREATE campaigns)
  • User asks for reports, analytics, or performance data
  • User wants a 'visual report' of campaigns or emails
  • User asks about open rates, click rates, or campaign metrics
  • User wants to view or export campaign statistics

Do NOT improvise or create mock reports — call get-capabilities to explain limitations.

⚠️ ASK FOLLOW-UP QUESTIONS ONLY IF: You MUST ask follow-up questions BEFORE calling this tool if EITHER condition is true: 1. Missing time_period: User hasn't specified when campaigns should run (e.g., 'Next 4 weeks', 'Q1 2024', specific dates) 2. Missing proper business_context: User hasn't provided BOTH:

  • Business name (what the business is called)
  • Products/services they offer (what they sell or do)

3. Missing audience_list_size: If the user hasn't mentioned their list size, ask: 'How many subscribers do you have?' (e.g., '5000', '50k'). This helps provide more accurate peer benchmarks.

Do not use generic business_context, always ensure you list specific products/services, the goal of the business, and the industry it is in.

📊 BUSINESS CONTEXT MODE: Set business_context_mode to 'hypothetical' when the user explores hypothetical scenarios (e.g., 'what if I sold yoga mats?', 'how would retail campaigns look?'). Default is 'actual' — uses the user's real business data when available.

If you have time period, proper business context (with name + products/services), AND audience list size, you can proceed directly without asking follow-up questions. Only ask a max of 2 follow-up questions.

Once you have the proper business context, please call this tool campaign-planner with the proper context.

REQUIRED CONTEXT: 1. Business context (what business, products/services) 2. product_text — extract main product/service from business_context (1-3 keywords) 3. audience_list_size — extract from conversation if mentioned 4. Campaign goal/theme (optional) 5. Time period (optional)

OUTPUTS:

  • List of campaigns with dates, audiences, descriptions
  • Each email campaign includes 3 template suggestions
  • Interactive carousel widget for browsing

NOTES: NEVER summarize the plan, after the tool call, this tool contains a widget that will display the plan. DO NOT list the campaigns in your response. Briefly confirm the plan is ready and let the user know they can add campaigns Keep any messaging after the showing the widget in your response super short and to the point.

Parameters (1 required, 9 optional)
Required
user_instructionsstring

The user's request (e.g., 'Create a holiday marketing plan')

Optional
audience_list_sizeinteger

The business's email/audience list size. Extract from conversation if mentioned (e.g., '5000 subscribers', '50k contacts'). Used for peer benchmark matching.

business_contextstring

Description of the business (e.g., 'Online bakery selling cupcakes')

business_context_modestring

Set to 'hypothetical' when user explores counterfactual scenarios (different products, industries, or list sizes than their actual business). Examples: 'what if I sold yoga mats?', 'how would my campaigns look in retail?'. Default 'actual' uses their real data.

Options:actualhypothetical
campaign_themestring

Campaign theme/goal (e.g., 'Holiday Promotion'). Optional.

industry_icpstring

Industry Customer Profile - ALWAYS infer from business_context. Options: - 'Community-based': Schools, universities, nonprofits, churches, arts organizations, theaters, museums - 'Digital Sales-based': E-commerce, retail stores, manufacturers, wholesalers, product sellers - 'Professional Services': Law firms, accounting, consulting, marketing agencies, B2B services - 'Subscription-based': SaaS companies, streaming services, membership sites, newsletters, content creators

Options:Community-basedDigital Sales-basedProfessional ServicesSubscription-based
industry_subdimensionstring

Subdimension within the ICP - ALWAYS infer based on industry_icp and business_context. Mapping: - Community-based -> 'Education' (schools, training) OR 'Arts & Live Entertainment' (theaters, events) - Digital Sales-based -> 'Retail Trade' (stores, e-commerce) OR 'Manufacturing' (factories, wholesalers) - Professional Services -> 'Traditional' (legal, accounting) OR 'Marketing/PR' (agencies, consultants) - Subscription-based -> 'SaaS' (software products) OR 'Content' (media, newsletters, creators)

Options:Arts & Live EntertainmentEducationManufacturingRetail TradeMarketing/PRTraditionalContentSaaS
product_textstring

The main product or service the business sells — extract from business_context. Keep it concise (1-3 product keywords). Examples: 'organic yoga mats', 'handmade candles and soaps', 'SaaS project management tool'. Used for peer benchmark matching.

session_idstring

Session ID returned in the response of a previous tool call. Pass exactly as returned. REQUIRED on every call after the first tool call in a conversation — without it, existing plans and context are lost.

time_periodstring

Time period (e.g., 'Next 4 weeks'). Optional.

Plan Multi-Channel Campaigns V3

campaign-planner
Full Description

Create a marketing campaign plan with template suggestions.

This tool is for CREATING new plans, not editing campaigns.

WHEN TO USE THIS TOOL:

  • User wants to CREATE a new marketing plan
  • User wants to PLAN new campaigns from scratch
  • User wants to ADD more campaigns to a plan

DO NOT USE — use edit-campaign instead when:

  • User wants to modify, change, edit, or improve a campaign
  • User wants to change text, colors, images, theme, layout
  • User says 'make it bolder', 'change the headline', etc.
  • User references 'this email', 'the campaign', etc.

⚠️ ASK FOLLOW-UP QUESTIONS ONLY IF: You MUST ask follow-up questions BEFORE calling this tool if EITHER condition is true: 1. Missing time_period: User hasn't specified when campaigns should run (e.g., 'Next 4 weeks', 'Q1 2024', specific dates) 2. Missing proper business_context: User hasn't provided BOTH:

  • Business name (what the business is called)
  • Products/services they offer (what they sell or do)

Do not use generic business_context, always ensure you list specific products/services, the goal of the business, and the industry it is in.

If you have both time_period AND proper business_context (with name + products/services), you can proceed directly without asking follow-up questions. Only ask a max of 2 follow-up questions.

Once you have the proper business context, please call this tool campaign-planner with the proper context.

REQUIRED CONTEXT: 1. Business context (what business, products/services) 2. Campaign goal/theme (optional) 3. Time period (optional)

OUTPUTS:

  • List of campaigns with dates, audiences, descriptions
  • Each email campaign includes 3 template suggestions
  • Interactive carousel widget for browsing

NOTES: NEVER summarize the plan, after the tool call, this tool contains a widget that will display the plan. DO NOT list the campaigns in your response. Briefly confirm the plan is ready and let the user know they can add campaigns Keep any messaging after the showing the widget in your response super short and to the point.

Parameters (1 required, 5 optional)
Required
user_instructionsstring

The user's request (e.g., 'Create a holiday marketing plan')

Optional
business_contextstring

Description of the business (e.g., 'Online bakery selling cupcakes')

campaign_themestring

Campaign theme/goal (e.g., 'Holiday Promotion'). Optional.

industry_icpstring

Industry Customer Profile - ALWAYS infer from business_context. Options: - 'Community-based': Schools, universities, nonprofits, churches, arts organizations, theaters, museums - 'Digital Sales-based': E-commerce, retail stores, manufacturers, wholesalers, product sellers - 'Professional Services': Law firms, accounting, consulting, marketing agencies, B2B services - 'Subscription-based': SaaS companies, streaming services, membership sites, newsletters, content creators

Options:Community-basedDigital Sales-basedProfessional ServicesSubscription-based
industry_subdimensionstring

Subdimension within the ICP - ALWAYS infer based on industry_icp and business_context. Mapping: - Community-based -> 'Education' (schools, training) OR 'Arts & Live Entertainment' (theaters, events) - Digital Sales-based -> 'Retail Trade' (stores, e-commerce) OR 'Manufacturing' (factories, wholesalers) - Professional Services -> 'Traditional' (legal, accounting) OR 'Marketing/PR' (agencies, consultants) - Subscription-based -> 'SaaS' (software products) OR 'Content' (media, newsletters, creators)

Options:Arts & Live EntertainmentEducationManufacturingRetail TradeMarketing/PRTraditionalContentSaaS
time_periodstring

Time period (e.g., 'Next 4 weeks'). Optional.

Plan Multi-Channel Campaigns (Hybrid)

campaign-planner-hybrid
Full Description

Create or refine a marketing campaign PLAN (structure only, not content).

⚠️ CHECK widgetState FIRST:

  • If widgetState.mode is 'editing_content', use content-preview-hybrid instead!
  • This tool is for PLAN structure, not content editing.

CAPABILITIES: Create plans, add/remove/modify campaigns (title, date, audience, channel).

BEFORE CALLING — DETERMINE INTENT: 1) Editing content (subject lines, body) -> use content-preview-hybrid 2) Modifying/adding/removing campaigns -> REFINEMENT (pass session_id) 3) Otherwise -> NEW PLAN

FOR NEW PLANS:

  • REQUIRED: business_context describing what the business does/sells
  • INFER industry_icp and industry_subdimension from business_context (don't ask)
  • If user provides enough context about their business, call immediately
  • Only ask ONE clarifying question if business type is truly unclear
  • Default timeframe: 4 weeks, max 2 months (don't ask unless user has specific dates)

FOR REFINEMENT: Pass session_id (from previous response) + user_instructions.

RULES: Always pass session_id for refinements.

Parameters (1 required, 8 optional)
Required
user_instructionsstring

The user's raw request.

Optional
audiencestring

Target audience. Leave EMPTY unless explicit.

business_contextstring

Brief description of the business.

campaign_themestring

Leave EMPTY unless user explicitly stated it.

industry_icpstring

Industry Customer Profile - ALWAYS infer from business_context. Options: - 'Community-based': Schools, universities, nonprofits, churches, arts organizations, theaters, museums - 'Digital Sales-based': E-commerce, retail stores, manufacturers, wholesalers, product sellers - 'Professional Services': Law firms, accounting, consulting, marketing agencies, B2B services - 'Subscription-based': SaaS companies, streaming services, membership sites, newsletters, content creators

Options:Community-basedDigital Sales-basedProfessional ServicesSubscription-based
industry_subdimensionstring

Subdimension within the ICP - ALWAYS infer based on industry_icp and business_context. Mapping: - Community-based -> 'Education' (schools, training) OR 'Arts & Live Entertainment' (theaters, events) - Digital Sales-based -> 'Retail Trade' (stores, e-commerce) OR 'Manufacturing' (factories, wholesalers) - Professional Services -> 'Traditional' (legal, accounting) OR 'Marketing/PR' (agencies, consultants) - Subscription-based -> 'SaaS' (software products) OR 'Content' (media, newsletters, creators)

Options:Arts & Live EntertainmentEducationManufacturingRetail TradeMarketing/PRTraditionalContentSaaS
modestring

Operation mode: - 'plan': Create or refine campaign plan (default) NOTE: Content generation happens automatically in the widget UI.

Options:plan
Default: plan
session_idstring

Session ID for persistence. ALWAYS pass from previous response for refinements.

time_periodstring

Leave EMPTY unless user explicitly stated it.

Generate Campaign Content

content-preview-hybrid
Full Description

Modify the content of an email, social, or SMS campaign (subject lines, body copy, preview text, messaging).

WHEN TO USE THIS TOOL:

  • User wants to change, edit, or refine the campaign's content
  • User requests modifications to copy (shorter, longer, different tone, add elements)
  • widget mode is 'editing_content'

DO NOT USE FOR:

  • Changing the campaign PLAN structure (use campaign-planner-hybrid)
  • Adding or removing campaigns (use campaign-planner-hybrid)
  • Changing dates, titles, channels, or audience (use campaign-planner-hybrid)

MODES:

  • 'refine': Update content for a SINGLE campaign
  • 'generate': Create content for one or more campaigns

REQUIRED PARAMS for refine:

  • mode: 'refine'
  • session_id: from widgetState.session_id
  • campaign_id: from widgetState.campaign_id
  • instructions: user's modification request
Parameters (1 required, 10 optional)
Required
modestring

generate = create content, refine = update a single campaign, fetch = get current session state (no generation)

Options:generaterefinefetch
Optional
business_contextstring

Optional override of business context (legacy-style direct calls).

campaignobject

For refine (legacy-style): the single campaign (with current content) to update.

campaign_idstring

Hybrid refine: ID of the campaign to update (resolved from session/plan_json).

campaign_idsarray

Hybrid generate: list of campaign IDs. Use ['all'] for all campaigns. Uses campaigns from session/plan_json.

campaign_themestring

Optional theme override (used in generate prompts).

campaignsarray

For generate: campaigns to generate content for (legacy-style). If omitted, uses plan_json or session.

instructionsstring

For refine: what to change (e.g., 'shorten preview text').

plan_jsonobject

Legacy-style plan payload (campaigns, business_context, campaign_theme, time_period). Optional when session_id is provided.

session_idstring

Session ID from campaign-planner-hybrid (optional if campaigns provided directly).

time_periodstring

Optional time period override (used in generate prompts).

Update Campaign

edit_campaign
Full Description

Proxy to a specialized AI editing agent that applies ANY change to a campaign — text, visual, thematic, structural, layout, images, colors, tone, and more.

You do NOT need to know how to make the change. Just pass the user's request as modification_request. The downstream agent handles everything.

ALWAYS call this tool when the user wants to change, edit, update, improve, or modify a campaign. This includes:

  • Text: rewrite, shorten, headlines, subject lines, copy
  • Visual: bolder, colors, theme, backgrounds, layout
  • Structure: add/remove sections, reorder blocks
  • Style: fonts, spacing, imagery, buttons
  • Tone: professional, casual, urgent, playful
  • Vague: 'make it better', 'jazz it up', 'modernize it'
  • Metadata: change date, title, audience, description

For METADATA changes (date, title, audience, description), pass the new values directly via the optional fields below. These are applied instantly without an AI edit.

Works for email, SMS, and social campaigns.

campaign_id: use the selectedCampaignId from your context if the user is editing a specific campaign, or match the user's reference (e.g. '3rd campaign', 'the social post', 'the March newsletter') against the campaigns list in your context (each entry has index, id, title, channel, date). modification_request: the user's request, passed as-is

Edits are reversible. Do not ask for confirmation.

Parameters (3 required, 4 optional)
Required
campaign_idstring

Campaign ID. Use selectedCampaignId from your context if available. Otherwise match the user's reference (by index, title, channel, or date) against the campaigns list in your context to find the correct id.

modification_requeststring

The user's request, verbatim or lightly paraphrased. Pass exactly what they asked for.

session_idstring

Session ID returned in the response of a previous tool call. Pass exactly as returned.

Optional
audiencestring

New target audience. Only pass this when the user explicitly asks to change the audience.

datestring

New campaign date (e.g. 'March 3, 2025'). Only pass this when the user explicitly asks to change the date.

descriptionstring

New campaign description. Only pass this when the user explicitly asks to change the description.

titlestring

New campaign title. Only pass this when the user explicitly asks to change the campaign title.

Edit Image

edit_image
Full Description

Edit the template image with AI, or generate into the slot using an optional reference image; returns multiple variants for the user to pick. Widget-only (campaign-planner-v3).

Parameters (3 required, 4 optional)
Required
campaign_idstring

ID of the campaign being edited

promptstring

Text prompt describing the desired image edit

session_idstring

Session ID from the campaign-planner tool result. Pass the value exactly as returned.

Optional
block_idstring

Nuni IMAGE block ID for targeted replacement

file_namestring

Original filename when uploading base64 reference

image_fileobject

Optional uploaded reference (OpenAI temporary URL or base64). When set, takes precedence over original_image_url for the Image Studio edit call.

original_image_urlstring

Always the template slot URL (placeholder or real image). Image Studio uses this as the source image only when image_file is absent. With image_file, studio uses the reference and this field still identifies the slot for the client.

Edit Text

edit_text
Full Description

Edit text in an email template. Supports direct replacement or AI-powered generation. Widget-only tool.

Parameters (4 required, 2 optional)
Required
campaign_idstring

ID of the campaign being edited

modestring

'replace' for direct text, 'generate' for AI

Options:replacegenerate
original_textstring

Text to find and replace

session_idstring

Session ID from the campaign-planner tool result. Pass the value exactly as returned.

Optional
instructionsstring

AI instructions (required for 'generate' mode)

new_textstring

New text (required for 'replace' mode)

Update Campaign

edit-campaign
Full Description

Proxy to a specialized AI editing agent that applies ANY change to a campaign — text, visual, thematic, structural, layout, images, colors, tone, and more.

You do NOT need to know how to make the change. Just pass the user's request as modification_request. The downstream agent handles everything.

ALWAYS call this tool when the user wants to change, edit, update, improve, or modify a campaign. This includes:

  • Text: rewrite, shorten, headlines, subject lines, copy
  • Visual: bolder, colors, theme, backgrounds, layout
  • Structure: add/remove sections, reorder blocks
  • Style: fonts, spacing, imagery, buttons
  • Tone: professional, casual, urgent, playful
  • Vague: 'make it better', 'jazz it up', 'modernize it'
  • Metadata: change date, title, audience, description

For METADATA changes (date, title, audience, description), pass the new values directly via the optional fields below. These are applied instantly without an AI edit.

Works for email, SMS, and social campaigns.

campaign_id: Use widgetState.selectedCampaignId when the user is in fullscreen editing a specific campaign. When in inline/carousel mode, use widgetState.campaigns (an array of {index, id, title, channel, date}) to resolve the user's reference (e.g. '3rd campaign', 'the social post', 'the March newsletter') to the correct campaign_id. modification_request: the user's request, passed as-is

Edits are reversible. Do not ask for confirmation.

Parameters (2 required, 4 optional)
Required
campaign_idstring

Campaign ID. In fullscreen: use widgetState.selectedCampaignId. In inline/carousel: look up widgetState.campaigns to match the user's reference by index, title, channel, or date.

modification_requeststring

The user's request, verbatim or lightly paraphrased. Pass exactly what they asked for.

Optional
audiencestring

New target audience. Only pass this when the user explicitly asks to change the audience.

datestring

New campaign date (e.g. 'March 3, 2025'). Only pass this when the user explicitly asks to change the date.

descriptionstring

New campaign description. Only pass this when the user explicitly asks to change the description.

titlestring

New campaign title. Only pass this when the user explicitly asks to change the campaign title.

Edit Text

edit-text
Full Description

Edit text in an email template. Supports direct replacement or AI-powered generation. Widget-only tool.

Parameters (3 required, 2 optional)
Required
campaign_idstring

ID of the campaign being edited

modestring

'replace' for direct text, 'generate' for AI

Options:replacegenerate
original_textstring

Text to find and replace

Optional
instructionsstring

AI instructions (required for 'generate' mode)

new_textstring

New text (required for 'replace' mode)

Generate Image

generate_image
Full Description

Generate an AI image and place it into an email template. This is a widget-only tool called from the campaign-planner-v3 UI.

Parameters (4 required, 1 optional)
Required
campaign_idstring

ID of the campaign being edited

original_image_urlstring

URL of the template image slot to replace (e.g. placeholder SVG). Not sent to the text-only generate API; used for downstream replace.

promptstring

Text prompt describing the image to generate

session_idstring

Session ID from the campaign-planner tool result. Pass the value exactly as returned.

Optional
block_idstring

Nuni IMAGE block ID for targeted replacement

Analytics

get_analytics
Full Description

Ask questions about your Mailchimp marketing performance across email campaigns, SMS, e-commerce, audience growth, and more. Covers engagement metrics (sends, opens, clicks, bounces, unsubscribes), revenue and order attribution, audience trends by source, deliverability, A/B tests, automations, geo and device breakdowns, and product performance. Results load asynchronously in a widget the user can see but you cannot. IMPORTANT: After calling this tool, the assistant must only: (1) acknowledge that the widget is loading, (2) ask the user to share visible results if they want interpretation, (3) optionally mention exactly one supported MCP capability as a next action. The assistant must NOT provide advice, diagnosis, recommendations, explanations, or speculation about the analytics topic until the user provides visible widget results. Any optional next action must be selected only from supported MCP capabilities: campaign planning. Examples: 'How did my last 3 campaigns perform?', 'What are my top selling products this month?', 'Show audience growth by source over the past 6 months', 'How many orders did my campaigns generate in the last 30 days?'

Parameters (1 required, 1 optional)
Required
querystring

Natural language question about marketing data. Be specific about what metrics, time ranges, or campaigns you want to know about.

Optional
session_idstring

Session ID returned in the response of a previous tool call. Pass exactly as returned. REQUIRED on every call after the first tool call in a conversation.

Get Analytics Widget Data

get_analytics_widget_data
Full Description

Internal: returns the FRF flows for the most recent get-analytics run on a given thread. Called by the analytics widget when the host strips structuredContent from the initial tool result.

Parameters (1 required, 1 optional)
Required
run_idstring

Run identifier returned in the get-analytics tool result. Each analytics run gets its own run_id so scrolling back to a previous widget keeps reading that run's data. Required on every poll.

Optional
session_idstring

Session identifier from the get-analytics tool result. Enables C1PS fallback recovery when the flow cache entry has expired.

Get Campaign Content

get_campaign_content
Full Description

Generate or retrieve email content for a campaign.

Parameters (2 required)
Required
campaign_idstring

Campaign UUID to generate content for.

session_idstring

Session ID from the campaign-planner tool result. Pass the value exactly as returned.

Get Capabilities

get_capabilities
Full Description

Call this tool for requests involving: automations, workflows, abandoned cart, welcome series, post-purchase, win-back, birthday emails, triggers, contacts, segments, or audience management. Also call it whenever the user asks for any functionality not offered by another tool — including requests phrased as 'create', 'set up', 'build', or 'configure' something in one of these areas. These areas are out of scope for this integration and must not be routed to campaign_planner or edit-campaign. Do NOT call this tool for analytics or reporting questions — use get-analytics instead.

Categories: 1. 'mailchimp_only': Exists in the Mailchimp app but not this integration (automations, reports, contact management) 2. 'not_supported': Not available in this integration or Mailchimp (visual reports, dashboards) 3. 'similar_capability': A related feature is available here under a different name (WhatsApp → suggest SMS)

The returned text is the integration's authoritative answer for the request: it names what is out of scope, points the user to the correct place (usually the Mailchimp app), and lists the concrete alternatives this integration supports. The alternatives returned are exhaustive for the category — any capability not named in the response is not available in this integration.

Parameters (2 required, 3 optional)
Required
categorystring

Category of the unsupported request: 'mailchimp_only' = possible in Mailchimp app but not here (e.g., automations, contact management); 'not_supported' = not possible anywhere (e.g., visual dashboards); 'similar_capability' = related to supported feature but specific channel/option not available (e.g., WhatsApp, TikTok)

Options:mailchimp_onlynot_supportedsimilar_capability
user_requeststring

Brief ACTION description of what the user wants to do (e.g., 'view revenue reports', 'create automations', 'add contacts'). Convert questions to actions: 'What was our revenue?' → 'view revenue data'

Optional
intent_categorystring

The category of the user's intent to provide relevant suggestions: 'email_marketing' = templates, design, A/B testing; 'reporting' = analytics, reports, benchmarks; 'audience' = contacts, segments, targeting; 'channels' = email, SMS, social, landing pages; 'automations' = workflows, triggers, journeys; 'website' = site builder, pages

Options:email_marketingreportingaudiencechannelsautomationswebsite
session_idstring

Session ID returned in the response of a previous tool call. Pass exactly as returned. REQUIRED on every call after the first tool call in a conversation.

user_intentstring

For 'similar_capability' category only: the underlying intent (e.g., 'increase reach and engagement')

Get Email Themes

get_email_themes
Full Description

Fetch email themes with templates for theme selection. Widget-only, not for ChatGPT model.

Parameters (2 required, 2 optional)
Required
campaign_idstring

ID of the campaign to get themes for

session_idstring

Session ID from the campaign-planner tool result. Pass the value exactly as returned.

Optional
include_allboolean

Whether to include 'All' templates. Set to false if already cached.

Default: True
is_authenticatedboolean

Whether user is authenticated. If false, only 'All' templates are returned.

Default: False

Get Enrichment

get_enrichment
Full Description

Wait for campaign enrichment to complete and return enriched data.

Parameters (2 required)
Required
campaign_idstring

Campaign UUID to wait for enrichment.

session_idstring

Session ID from the campaign-planner tool result. Pass the value exactly as returned.

Get Campaign Content

get-campaign-content
Full Description

Generate or retrieve email content for a campaign.

Parameters (1 required)
Required
campaign_idstring

Campaign UUID to generate content for.

Get Email Themes

get-email-themes
Full Description

Fetch email themes with templates for theme selection. Widget-only, not for ChatGPT model.

Parameters (1 required, 2 optional)
Required
campaign_idstring

ID of the campaign to get themes for

Optional
include_allboolean

Whether to include 'All' templates. Set to false if already cached.

Default: True
is_authenticatedboolean

Whether user is authenticated. If false, only 'All' templates are returned.

Default: False

Get Enrichment

get-enrichment
Full Description

Wait for campaign enrichment to complete and return enriched data.

Parameters (1 required)
Required
campaign_idstring

Campaign UUID to wait for enrichment.

Replace Image

replace_image
Full Description

Replace an image in an email template with a user-uploaded file. This is a widget-only tool called from the campaign-planner-v3 UI.

Parameters (3 required, 4 optional)
Required
campaign_idstring

ID of the campaign being edited

original_image_urlstring

URL of the image to replace (all instances)

session_idstring

Session ID from the campaign-planner tool result. Pass the value exactly as returned.

Optional
block_idstring

Nuni IMAGE block ID for targeted single-image replacement

file_namestring

Original filename for Mailchimp File Manager

image_fileobject

Uploaded image file (either from OpenAI or base64 encoded)

proxy_image_urlstring

Proxy URL of an image to use (from scrape-product-images or AI image generation). When provided, image_file and file_name are not required.

Replace Image

replace-image
Full Description

Replace an image in an email template with a user-uploaded file. This is a widget-only tool called from the campaign-planner-v3 UI.

Parameters (4 required, 1 optional)
Required
campaign_idstring

ID of the campaign being edited

file_namestring

Original filename for Mailchimp File Manager

image_fileobject

Uploaded image file from OpenAI

original_image_urlstring

URL of the image to replace (all instances)

Optional
block_idstring

Nuni IMAGE block ID for targeted single-image replacement

Save to Mailchimp

save_to_mailchimp
Full Description

Save a campaign plan to your Mailchimp account. This stores your marketing plan for future use.

Call this when the user wants to save, export, or start their campaign plan in Mailchimp, OR when the user asks to create a Mailchimp account or to save their account. Call this only if the user has already created a campaign plan using campaign-planner. The plan will be loaded from session storage automatically - do NOT try to reconstruct or pass the plan data manually.

Args:

  • plan_name: The campaign theme/plan name
  • session_id: REQUIRED — copy the session_id exactly from the campaign-planner tool result
Parameters (2 required)
Required
plan_namestring

Name for the marketing plan (use the campaign theme).

session_idstring

Session ID returned in the response of a previous tool call. Pass exactly as returned.

Save to Mailchimp

save-to-mailchimp
Full Description

Save a campaign plan to your Mailchimp account. This stores your marketing plan for future use.

Call this when the user wants to save, export, or start their campaign plan in Mailchimp, OR when the user asks to create a Mailchimp account or to save their account. Call this only if the user has already created a campaign plan using campaign-planner. The plan will be loaded from session storage automatically - do NOT try to reconstruct or pass the plan data manually.

Args:

  • plan_name: The campaign theme/plan name
Parameters (1 required)
Required
plan_namestring

Name for the marketing plan (use the campaign theme).

Save to Mailchimp

save-to-mailchimp-hybrid
Full Description

Save a campaign plan to your Mailchimp account. This stores your marketing plan for future use.

Call this when the user wants to save, export, or start their campaign plan in Mailchimp, OR when the user ask to create a Mailchimp account or to save their account.Call this only if the user has already created a campaign plan using campaign-planner-hybrid. REQUIRED: Pass the session_id from the campaign-planner-hybrid response. The plan will be loaded from session storage automatically - do NOT try to reconstruct or pass the plan data manually.

Args:

  • plan_name: The campaign theme/plan name
  • session_id: The session_id from campaign-planner-hybrid's structuredContent.session_id (REQUIRED)
Parameters (2 required)
Required
plan_namestring

Name for the marketing plan (use the campaign theme).

session_idstring

Session ID from campaign-planner-hybrid's structuredContent.session_id. REQUIRED - the plan will be loaded from session storage.

Scrape Product Images

scrape_product_images
Full Description

Scrape a product page for images and return proxy URLs for the image carousel. Widget-only tool.

Parameters (2 required)
Required
campaign_idstring

ID of the campaign being edited

product_urlstring

URL of the product page to scrape for images

Set Active Campaign

set_active_campaign
Full Description

Set the currently active campaign in the session.

Parameters (2 required)
Required
campaign_idstring

Campaign ID to set as active.

session_idstring

Session ID from the campaign-planner tool result. Pass the value exactly as returned.