mailchimp-mcp
MCP server for full Mailchimp management: audiences, tags, segments, campaigns, templates and reporting. Enables creating, sending, scheduling campaigns, managing contacts, and retrieving reports via natural language.
README
mailchimp-mcp
MCP server for full Mailchimp management: audiences, tags, segments, campaigns, templates and reporting.
Tools (40)
Audience
| Tool | What it does |
|---|---|
get_lists |
All audiences with stats |
get_list_members |
Members with status/tag filters |
get_member |
Full contact data by email |
upsert_member |
Create or update a contact (never duplicates) |
archive_member |
Unsubscribe (not a permanent delete) |
search_members |
Search across all audiences |
get_member_activity |
Last 50 events for a contact |
Tags
| Tool | What it does |
|---|---|
get_tags |
All tags for an audience |
update_member_tags |
Add/remove tags on an existing contact |
Merge fields
| Tool | What it does |
|---|---|
get_merge_fields |
Custom fields for an audience |
create_merge_field |
Create a new field (CITY, BIRTHDAY...) |
Segments
| Tool | What it does |
|---|---|
get_segments |
Saved segments with their IDs |
create_segment |
Create a segment by conditions or as a static list |
add_members_to_segment |
Add emails to an existing static segment |
remove_members_from_segment |
Remove emails from a static segment |
delete_segment |
Delete a saved segment (doesn't delete contacts) |
Batch (bulk sync)
| Tool | What it does |
|---|---|
batch_upsert_members |
Upsert many contacts in a single call |
get_batch_status |
Poll batch progress |
Campaigns
| Tool | What it does |
|---|---|
get_campaigns |
List campaigns with filters |
get_campaign |
Campaign details |
create_campaign |
New draft campaign |
update_campaign |
Update subject, from, segment... |
replicate_campaign |
Duplicate an existing campaign |
delete_campaign |
Delete a draft |
Content and design
| Tool | What it does |
|---|---|
get_campaign_content |
Read a campaign's current HTML |
set_campaign_content |
Write the campaign's HTML |
send_test_email |
Send a test before the real send |
get_send_checklist |
Check requirements before sending |
Sending
| Tool | What it does |
|---|---|
send_campaign |
Send immediately |
schedule_campaign |
Schedule for a date/time |
unschedule_campaign |
Cancel a scheduled send |
create_resend |
Resend to non-openers |
Templates
| Tool | What it does |
|---|---|
get_templates |
List available templates |
create_template |
Create a reusable template from HTML |
update_template |
Update an existing template |
Reporting
| Tool | What it does |
|---|---|
get_campaign_report |
Full report (opens, clicks, unsubscribes, bounces) |
get_campaign_advice |
Mailchimp's automatic suggestions |
get_campaign_click_details |
Clicks by URL |
get_campaign_open_details |
Who opened, open count and date |
get_campaign_unsubscribes |
Contacts who unsubscribed after the campaign |
Recommended flow to design and send a campaign
1. get_campaigns(status="save") → find the draft campaign
2. get_campaign(campaign_id) → check current settings
3. update_campaign(...) → adjust subject, preview text, segment
4. set_campaign_content(html=...) → design the email
5. send_test_email(test_emails=[...]) → check rendering
6. get_send_checklist(campaign_id) → verify everything is ready
7. schedule_campaign(...) / send_campaign → send or schedule
8. get_campaign_report(campaign_id) → review post-send metrics
9. create_resend(campaign_id) → optional: resend to non-openers
Bulk sync flow
1. batch_upsert_members(list_id, members=[...]) → returns batch_id
2. get_batch_status(batch_id) → poll until status="finished"
Turns thousands of individual API calls into one call + polling.
Setup
- Get your API key: Mailchimp → Account → Extras → API keys. The
datacenter (e.g.
us17) is the suffix after the dash — the server extracts it automatically. - Install dependencies:
python3 -m venv .venv source .venv/bin/activate pip install -r requirements.txt
MCP client configuration
{
"mcpServers": {
"mailchimp": {
"command": "/path/to/.venv/bin/python3",
"args": ["/path/to/mailchimp-mcp/server.py"],
"env": {
"MAILCHIMP_API_KEY": "<your-api-key>-usXX"
}
}
}
}
License
MIT — see LICENSE.
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.