Mailchimp MCP Server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| MAILCHIMP_API_KEY | Yes | Your Mailchimp API key (format: xxxxxxxxxx-usXX) |
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| pingA | Validate your Mailchimp API key and get account info (name, email, total subscribers). |
| list_campaignsB | List email campaigns. Filter by status (save, paused, schedule, sending, sent) or audience list_id. |
| get_campaignA | Get full details for a specific campaign including settings, tracking, and recipient info. |
| create_campaignC | Create a new email campaign. Returns the campaign ID. Type: regular, plaintext, absplit, rss. |
| update_campaignB | Update campaign settings. Only provide fields you want to change. |
| send_campaignA | Send a campaign immediately. The campaign must be in 'save' status with content set. |
| schedule_campaignB | Schedule a campaign. schedule_time must be ISO 8601 UTC (e.g. '2026-04-01T14:00:00+00:00'). |
| replicate_campaignC | Create a copy of an existing campaign. Returns the new campaign ID. |
| send_test_emailB | Send a test email for a campaign. test_emails: comma-separated addresses (max 5). |
| get_campaign_contentA | Get the HTML and plain-text content of a campaign. |
| set_campaign_contentA | Set campaign content. Provide html for custom content, or template_id to use a template. |
| get_campaign_reportA | Get performance report for a sent campaign — opens, clicks, bounces, unsubscribes, and more. |
| get_click_reportB | Get click details for a campaign — which URLs were clicked and how many times. |
| get_open_reportC | Get open details for a campaign — which subscribers opened and when. |
| list_audiencesB | List all audiences (mailing lists) with subscriber counts and stats. |
| get_audienceC | Get detailed info and stats for a specific audience. |
| create_audienceC | Create a new audience/list. Requires name, sender email, and company name. |
| list_membersB | List members of an audience. Filter by status: subscribed, unsubscribed, cleaned, pending, transactional. |
| get_memberB | Get details for a specific subscriber by email address. |
| add_or_update_memberA | Add a new subscriber or update if exists (upsert). Status: subscribed, pending, unsubscribed. Tags: comma-separated. |
| archive_memberA | Archive (soft-delete) a subscriber. They can be re-added later via add_or_update_member. |
| search_membersA | Search for members by email or name across all audiences (or a specific one). |
| get_member_activityB | Get recent activity for a subscriber — opens, clicks, bounces, etc. |
| list_tagsC | List all tags for an audience. |
| manage_member_tagsB | Add or remove tags on a subscriber. Provide comma-separated tag names for add_tags and/or remove_tags. |
| list_segmentsC | List saved segments for an audience. |
| get_segment_membersC | List members in a specific segment. |
| create_segmentB | Create a static segment from email addresses. emails: comma-separated list. |
| list_templatesC | List available email templates. |
| get_templateB | Get a template's details and HTML content. |
| list_automationsC | List classic automations with status and stats. |
| pause_automationC | Pause all emails in a classic automation workflow. |
| start_automationC | Start all emails in a classic automation workflow. |
| get_automationB | Get details for a specific automation including trigger, recipients, and stats. |
| list_automation_emailsA | List all emails in an automation workflow with their status, delay, and position. |
| delete_campaignA | Permanently delete a campaign. Only works on campaigns that haven't been sent. |
| unschedule_campaignB | Unschedule a scheduled campaign, returning it to 'save' status. |
| cancel_campaignA | Cancel a campaign that is currently sending. Only works during the send window. |
| update_audienceC | Update audience settings. Only provide fields you want to change. |
| batch_subscribe_membersA | Batch subscribe multiple members at once. emails: comma-separated list (max 500). |
| delete_member_permanentA | Permanently delete a subscriber. Cannot be undone — the contact cannot be re-imported. |
| list_merge_fieldsB | List merge fields (custom fields) for an audience — FNAME, LNAME, plus any custom ones. |
| create_merge_fieldC | Create a custom merge field. field_type: text, number, address, phone, date, url, dropdown, radio, birthday. |
| list_interest_categoriesC | List interest categories (groups) for an audience — checkboxes, dropdowns, radio buttons, etc. |
| list_interestsA | List interests (individual options) within a category — the actual checkbox/radio items. |
| create_templateB | Create a new email template from HTML content. |
| delete_templateA | Delete a custom email template. Cannot delete Mailchimp's built-in templates. |
| update_segmentA | Update a static segment — rename or add/remove members. emails: comma-separated. |
| delete_segmentC | Delete a segment from an audience. |
| list_webhooksC | List webhooks configured for an audience. |
| create_webhookC | Create a webhook for audience events. Configure which events trigger the callback. |
| delete_webhookC | Delete a webhook from an audience. |
| get_unsubscribe_reportB | Get unsubscribe details for a campaign — who unsubscribed and why. |
| get_sent_to_reportA | Get delivery details — which members received the email and their status (sent, hard, soft). |
| list_landing_pagesC | List landing pages with their status, visits, and conversion stats. |
| get_landing_pageA | Get details for a specific landing page including tracking stats. |
| create_batch_operationB | Submit a batch of API operations. operations: JSON array of {method, path, body} objects. Max 500 ops. |
| list_ecommerce_storesB | List connected e-commerce stores (Shopify, WooCommerce, etc.) with revenue stats. |
| list_store_productsC | List products in a connected e-commerce store. |
| list_store_ordersB | List orders from a connected store. Optionally filter by campaign_id to see revenue attribution. |
| get_ecommerce_customerB | Get e-commerce customer details including order count and total spent. |
| list_store_cartsB | List abandoned carts from a connected store — useful for abandoned cart recovery campaigns. |
| list_store_promo_codesC | List promo codes for a specific promo rule in a connected store. |
| get_audience_growthB | Get monthly audience growth history — subscribes, unsubscribes, and net change over time. |
| get_audience_locationsC | Get subscriber location breakdown by country/region — where your audience lives. |
| get_email_client_statsB | Get email client usage for a campaign — Gmail, Apple Mail, Outlook breakdown. |
| get_ab_test_resultsB | Get A/B test (variate) results for a campaign — which combination won and performance of each. |
| list_member_notesB | List notes on a subscriber — internal CRM-style notes attached to a contact. |
| add_member_noteB | Add a note to a subscriber — useful for CRM-style contact management. |
| list_filesA | List files in the Mailchimp file manager. Filter by file_type: image, file. |
| upload_fileC | Upload a file to the Mailchimp file manager. file_data_base64: base64-encoded file content. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/AlexlaGuardia/mcp-mailchimp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server