Mailchimp Mcp Server

by damientilman

213 downloads
Not rated
GitHub

About

Connect Claude to your Mailchimp account. Query campaigns, reports, audiences, and automations, or manage contacts and drafts, directly from your Claude conversations.

Details

Author
damientilman
Downloads
213
Categories
Marketing, Automation, Other

- 53 read and write tools covering the Mailchimp Marketing API
- Campaign management: list, create, schedule, send, duplicate, and delete
- Analytics & reporting: opens, clicks, bounces, domain performance, unsubscribes
- Audience management: browse, search, add, update, unsubscribe, and tag members
- Automation control: list, pause, and start email workflows
- E-commerce data: stores, orders, products, and customers
- Safety modes: read-only and dry-run settings prevent accidental writes

Setting up with Highlight

This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:

  1. Download and install Highlight from highlightai.com/download
  2. Navigate to the plugins tab and select "Add Custom Plugin"
  3. Configure the plugin with the settings below
    Plugin Name Mailchimp Mcp Server
    Command (node, npx, python, etc.)

    Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.

  4. Enable "Start Automatically" if you want the plugin to start when Highlight launches

From the repository

Install with pip install mailchimp-mcp-server or run directly with uvx mailchimp-mcp-server. Set the MAILCHIMP_API_KEY environment variable. Optionally set MAILCHIMP_READ_ONLY=true or MAILCHIMP_DRY_RUN=true for safer operation. Add to Claude Desktop via claude_desktop_config.json or to Claude Code via claude mcp add.

Claude Desktop / Cursor

Paste into your MCP client config file to install this server.

{
    "mcpServers": {
        "mailchimp mcp server": {
            "mailchimp": {
                "command": "uvx",
                "args": [
                    "mailchimp-mcp-server"
                ],
                "env": {
                    "MAILCHIMP_API_KEY": "<YOUR_API_KEY>"
                }
            }
        }
    }
}

McpServers

{
    "mailchimp": {
        "command": "uvx",
        "args": [
            "mailchimp-mcp-server"
        ],
        "env": {
            "MAILCHIMP_API_KEY": "<YOUR_API_KEY>"
        }
    }
}

The most completeModel Context Protocol (MCP)server for theMailchimp Marketing API:227 toolsto query and manage your Mailchimp account from any MCP-compatible client. It covers the full campaign, audience, member, segment, automation and reporting surface, complete e-commerce (read and write), landing pages, File Manager, surveys, signup forms and verified domains, plus multi-account support and runtime-security guardrails (read-only, dry-run and audit modes, with per-tool risk metadata).

Uses theMailchimp Marketing APIviarequests. Not based on the officialmailchimp-marketing-pythonclient. I hit too many issues with it so I went with raw HTTP calls instead.

uvx mailchimp-mcp # no install required; just needs MAILCHIMP_API_KEY

Add it to your MCP client (Claude Desktop, Cursor, Cline, …):

{ "mcpServers": { "mailchimp": { "command": "uvx", "args": ["mailchimp-mcp"], "env": { "MAILCHIMP_API_KEY": "your-key-us8", "MAILCHIMP_READ_ONLY": "true" } } } }

Tip: start withMAILCHIMP_READ_ONLY=trueto explore safely, then flip it off when you are ready to write. SeeConfigurationfor all options.

A prebuilt image is published to the GitHub Container Registry on every release:

docker run --rm -i -e MAILCHIMP_API_KEY=your-key-us8 ghcr.io/damientilman/mailchimp-mcp-server:latest
{ "mcpServers": { "mailchimp": { "command": "docker", "args": ["run", "--rm", "-i", "-e", "MAILCHIMP_API_KEY", "-e", "MAILCHIMP_READ_ONLY", "ghcr.io/damientilman/mailchimp-mcp-server:latest"], "env": { "MAILCHIMP_API_KEY": "your-key-us8", "MAILCHIMP_READ_ONLY": "true" } } } }

- Risk metadata- Per-tool read / write / destructive classification via MCP annotations anddescribe_tools
- Audit log- Optional structured JSON audit events per dispatch (MAILCHIMP_AUDIT_LOG)
- Argument validation- Pagination caps and required-ID checks before every request

git clone https://github.com/damientilman/mailchimp-mcp-server.git cd mailchimp-mcp-server python -m venv .venv source .venv/bin/activate pip install -e .

The datacenter (us8,us21, etc.) is automatically extracted from each key.

Read-only mode— WhenMAILCHIMP_READ_ONLY=true, all write tools (create, update, delete, schedule, etc.) are blocked and return an error. Read tools work normally. This is the recommended default for shared or exploratory setups where you only need reporting and analytics.

Dry-run mode— WhenMAILCHIMP_DRY_RUN=true, write tools return a preview of the action theywouldperform (tool name, target resource, parameters, and its risk tier) without making any API call. Useful for testing prompts before going live.

The server is designed for defense-in-depth alongside an external MCP gateway: it owns thesemantics(which tools are reads, reversible writes, or irreversible) and exposes them as machine-readable signals a gateway can enforce on, rather than making the gateway guess which calls are dangerous.

Risk metadata— Every tool is classified asread,write, ordestructive(irreversible data loss or an irreversible send). This surfaces two ways:

- MCP tool annotationsreadOnlyHint,destructiveHint, andidempotentHinttravel through the standardtools/list, so any compliant client or gateway reads them directly.
- describe_tools— a read tool returning{name, risk, read_only, destructive, idempotent}for every tool plus per-tier counts, for gateways that prefer a tool call.

Structured audit log— WithMAILCHIMP_AUDIT_LOG=true, each dispatch emits one JSON event to stderr with the tool, its risk tier, thedestructiveflag, the target account, the outcome (executed/blocked_read_only/dry_run), and the inspected arguments. Bulky or sensitive values (e.g. base64file_data) are redacted and response bodies are never logged, so the stream is a safe audit sink to tail centrally.

Argument-contract validation— All writes funnel through a single_guard_writechokepoint, and every request is validated before dispatch (paginationcountcapped to 1–1000, missing path IDs rejected), so malformed calls fail fast and consistently instead of hitting the API.

Exposing all 227 tools sends a large tool list to the model on every turn (~63k tokens). If you only need part of the surface, load a subset with one line:

"env": { "MAILCHIMP_API_KEY": "your-key-us8", "MAILCHIMP_TOOLS": "read" }

MAILCHIMP_TOOLSaccepts a comma-separated mix ofrisk tiers(read,write,destructive) and/orexact tool names; a tool is kept if either matches. Unset (orall) exposes everything.

- read— reporting and analytics only (~115 tools, ~29k tokens). A safe, lightweight default for exploration.
- read,write— everything except irreversible tools.
- list_campaigns,get_campaign_report,send_campaign— a hand-picked minimal set.

Tool descriptions are also trimmed of repeated boilerplate before they reach the model, so even the full set is leaner than the raw docstrings. Usedescribe_toolsto see each tool's risk tier.

By default the server uses the singleMAILCHIMP_API_KEY, exposed as thedefaultaccount. To manage several Mailchimp accounts from one server, addMAILCHIMP_API_KEY_<NAME>variables — the suffix becomes the lowercased account name (e.g.MAILCHIMP_API_KEY_MARKETINGmarketing).

Every tool then accepts an optionalaccountargument, e.g.list_audiences(account="marketing"). Selection is per call and stateless — there is no "current account" to switch, so a write always names its target. Omittingaccountusesdefault. Calllist_accountsto see the configured names and their safety-flag state, and each account can carry its ownMAILCHIMP_READ_ONLY_<NAME>/MAILCHIMP_DRY_RUN_<NAME>flags (so a write-protected account and a writable one can live side by side). An unknownaccountreturns an error listing the configured names.

Single-key setups are unaffected: with onlyMAILCHIMP_API_KEYset, nothing changes.

{ "mcpServers": { "mailchimp": { "command": "uvx", "args": ["mailchimp-mcp"], "env": { "MAILCHIMP_API_KEY": "your-default-key-us8", "MAILCHIMP_API_KEY_MARKETING": "another-key-us5", "MAILCHIMP_READ_ONLY_MARKETING": "true" } } } }

Most MCP clients accept a JSON configuration block describing how to launch the server. Configure yours to invokeuvx mailchimp-mcp(ormailchimp-mcpif installed via pip) withMAILCHIMP_API_KEYexported in the environment.

{ "mcpServers": { "mailchimp": { "command": "uvx", "args": ["mailchimp-mcp"], "env": { "MAILCHIMP_API_KEY": "your-api-key-here" } } } }
{ "mcpServers": { "mailchimp": { "command": "mailchimp-mcp", "env": { "MAILCHIMP_API_KEY": "your-api-key-here" } } } }
{ "mcpServers": { "mailchimp": { "command": "uvx", "args": ["mailchimp-mcp"], "env": { "MAILCHIMP_API_KEY": "your-api-key-here", "MAILCHIMP_READ_ONLY": "true" } } } }

If your MCP client provides a CLI to register servers, the equivalent invocation is:

mcp-cli add mailchimp \ -e MAILCHIMP_API_KEY=your-api-key-here \ -- uvx mailchimp-mcp

Replacemcp-cliwith your client's binary name. For read-only mode, add-e MAILCHIMP_READ_ONLY=trueto the command.

Mailchimp does not expose a public read API for Customer Journeys (only the trigger endpoint above). Thesearch_automation_campaigns,get_member_journey_eventsandget_automation_summarytools provide the recommended workarounds — they surface every campaign emitted by automations or journeys, even though the journey graph itself remains private.

Campaign Extras (checklist, collaboration, RSS)

Automation Emails (single-email control)

Once connected, you can ask your MCP client to perform requests like:

Multi-step requests that chain tools end to end:

- Weekly performance review"Summarise my last week: list campaigns sent since Monday, pull each report, and rank them by click rate with one takeaway each."Chainssearch_campaignsget_campaign_reportget_campaign_advice.
- Deliverability audit"Check my sending health: are my domains verified, any spam complaints on recent campaigns, and how did the last one perform by recipient domain?"Chainslist_verified_domainsget_campaign_abuse_reportsget_domain_performance.
- Re-engagement"Find everyone who didn't open my last newsletter and resend it with a new subject line."Chainsget_campaign_reportresend_to_non_openers.
- Safe send"Dry-run a campaign to my VIP segment, show me the send checklist, then send it once I confirm."WithMAILCHIMP_DRY_RUN=true, previews viacreate_campaignget_campaign_send_checklistsend_campaign.
- Agencies (multi-account)"For both theacmeandglobexaccounts, list this month's top campaign by open rate."Passesaccount="acme"/account="globex"per call. SeeMulti-account.

Contributions are welcome. SeeCONTRIBUTING.mdfor development setup, test instructions, and pull request guidelines.

If you find a security vulnerability, please follow the responsible disclosure process described inSECURITY.md.

SeeCHANGELOG.mdfor the full release history.

Built byDamien Tilman—damien@tilman.marketing

Free MCP that drives an audit of your marketing. Your AI connects, adsOS digs through your ads, email and site, and hands back a growth plan you can run today.

Operate and customize a tenant-isolated AI CRM for customers, sales, jobs, marketing, reviews, workflows, documents, and workspace pages.

Six go-to-market signal tools in a single MCP server, from hiring detection to ICP scoring, all returning flat Clay-ready data.

MCP server for Google Ads, Meta Ads, GA4, TikTok Ads, LinkedIn Ads, Shopify, HubSpot, and 15+ more advertising and marketing platforms. 300+ tools for campaign creation, performance analysis, keyword research, and CRM workflows. OAuth 2.1 authentication. Every write operation requires explicit user approval.

Find and enrich B2B leads, run multi-channel outreach and manage the sales pipeline — 27 annotated tools.

Allow your agents to launch personalized outbound campaigns

Your AI agent just got a marketing team. SendPulse MCP Server provides full access to the SendPulse marketing platform — email campaigns, CRM, chatbots, SMTP, and online courses. 134 methods across 5 modules.

B2B lead generation, email verification, company enrichment, and governed GTM Ops.

ИИ-коннектор для Яндекс Директа: подключите Claude или ChatGPT к рекламному кабинету и управляйте кампаниями прямо в диалоге — статистика, поиск неэффективных расходов, ставки, бюджеты, минус-слова, аудит.

Remote MCP server for LinkedIn sales workflows: research prospects, draft outreach, classify LinkedIn inbox replies, prepare campaigns, and stage sensitive LinkedIn actions behind review gates.

Built for the next generation of intelligent experiences, ActiveCampaign's remote MCP server makes it easy for AI agents to understand, store, and use customer context across tools, channels, and workflows.

No reviews yet — be the first

Sign in to leave a review

Use Google, GitHub, or an email account so ratings stay tied to real people.

Email sign in

No reviews posted yet.