Skip to main content
Glama
BusyBee3333

Mailchimp MCP Server

by BusyBee3333
README.md
# Mailchimp MCP Server

Complete Model Context Protocol (MCP) server for Mailchimp Marketing API v3.0 with 104+ tools and 15+ React UI apps.

## ๐Ÿš€ Features

### 104+ MCP Tools

Comprehensive coverage of the Mailchimp Marketing API v3.0:

- **Campaigns** (15 tools): Create, manage, send, schedule, and test email campaigns
- **Lists/Audiences** (14 tools): Manage lists, segments, interest categories, and growth analytics
- **Members** (12 tools): Add, update, tag, and track list subscribers
- **Ecommerce** (28 tools): Manage stores, products, orders, carts, customers, and promo codes
- **Automations** (10 tools): Manage automation workflows and emails
- **Reports** (8 tools): Access campaign analytics, click tracking, and performance data
- **Landing Pages** (8 tools): Create and manage landing pages
- **Templates** (6 tools): Manage email templates
- **Search** (2 tools): Search campaigns and members
- **Tags** (1 tool): Search and manage tags

### 15+ React UI Apps

Beautiful, dark-themed React applications for visual interaction:

1. **Campaign Dashboard** - View and manage all campaigns
2. **Audience Manager** - Comprehensive audience/list management
3. **Subscriber Grid** - Searchable subscriber table
4. **Segment Builder** - Create and manage segments
5. **Template Gallery** - Browse and use email templates
6. **Automation Flow** - Manage automation workflows
7. **Campaign Analytics** - Detailed campaign performance metrics
8. **A/B Test Results** - Compare A/B test outcomes
9. **Email Preview** - Preview campaign emails
10. **Tag Manager** - Organize and apply tags
11. **Landing Page Builder** - Create landing pages
12. **Content Manager** - Manage email content
13. **Growth Chart** - Visualize audience growth over time
14. **Send Time Optimizer** - Find optimal send times
15. **List Health Monitor** - Track list health metrics
16. **Ecommerce Dashboard** - Manage stores and products
17. **Promo Code Manager** - Create and track promo codes

## ๐Ÿ“ฆ Installation

```bash
npm install
npm run build
```

## ๐Ÿ”ง Configuration

Set your Mailchimp API key as an environment variable:

```bash
export MAILCHIMP_API_KEY="your-api-key-us19"
```

Your API key format: `xxxxxxxxxxxxxxxxxxxxx-datacenter` (e.g., `abc123-us19`)

You can obtain your API key from: Mailchimp Account โ†’ Extras โ†’ API Keys

## ๐ŸŽฏ Usage

### As MCP Server

Add to your Claude Desktop config (`~/Library/Application Support/Claude/claude_desktop_config.json`):

```json
{
  "mcpServers": {
    "mailchimp": {
      "command": "node",
      "args": ["/path/to/servers/mailchimp/dist/index.js"],
      "env": {
        "MAILCHIMP_API_KEY": "your-api-key-us19"
      }
    }
  }
}
```

### Standalone

```bash
npm start
```

## ๐Ÿ“š API Coverage

### Campaign Management

- Create campaigns (regular, A/B split, RSS, variate)
- Set HTML/template content
- Send, schedule, pause, resume campaigns
- Send test emails
- Replicate campaigns
- Get send checklist

### Audience/List Management

- Create and manage audiences
- Add/update/remove members (batch operations supported)
- Create segments (static, saved, fuzzy)
- Manage interest categories and groups
- Track growth history

### Member Management

- Add/update members with merge fields
- Tag management (add/remove tags)
- Track member activity and goals
- Bulk subscribe operations
- VIP member designation

### Automation Workflows

- List all automations
- Pause/start workflows
- Manage automation emails
- Queue management

### Analytics & Reports

- Campaign performance reports
- Click-through tracking
- Open rate details
- Domain performance analysis
- A/B test results
- Email activity per subscriber

### E-commerce

- Store management
- Product catalog (variants, SKUs, inventory)
- Order tracking
- Cart abandonment
- Customer management
- Promo rules and codes

### Templates & Landing Pages

- Template gallery
- Create custom templates
- Landing page builder
- Publish/unpublish pages

## ๐ŸŽจ React Apps

All apps use a consistent dark theme with Tailwind CSS:
- Background: `bg-gray-900`
- Cards: `bg-gray-800` with `border-gray-700`
- Accents: Blue (`blue-400`, `blue-600`) and Green (`green-400`, `green-600`)
- Typography: White text with gray variants for hierarchy

### Running Individual Apps

```bash
cd src/ui/react-app/campaign-dashboard
npm install
npm run dev
```

## ๐Ÿ” Authentication

The server uses HTTP Basic authentication with Mailchimp's API:
- Username: `anystring` (Mailchimp ignores this)
- Password: Your API key

## โšก Rate Limiting

Mailchimp enforces rate limits (typically 10 requests/second). The client automatically:
- Tracks rate limit headers
- Waits when limit is reached
- Resumes after reset time

## ๐Ÿ“– Tool Examples

### Create a Campaign

```typescript
{
  "type": "regular",
  "recipients": {
    "list_id": "abc123"
  },
  "settings": {
    "subject_line": "Welcome to our newsletter!",
    "from_name": "Your Company",
    "reply_to": "hello@yourcompany.com",
    "title": "Welcome Campaign"
  }
}
```

### Add a Subscriber

```typescript
{
  "list_id": "abc123",
  "email_address": "subscriber@example.com",
  "status": "subscribed",
  "merge_fields": {
    "FNAME": "John",
    "LNAME": "Doe"
  }
}
```

### Get Campaign Report

```typescript
{
  "campaign_id": "abc123"
}
```

## ๐Ÿงช Testing

```bash
npm run typecheck  # TypeScript type checking
npm test          # Run tests (if configured)
```

## ๐Ÿ—๏ธ Architecture

```
mailchimp/
โ”œโ”€โ”€ src/
โ”‚   โ”œโ”€โ”€ index.ts              # MCP server entry point
โ”‚   โ”œโ”€โ”€ clients/
โ”‚   โ”‚   โ””โ”€โ”€ mailchimp.ts      # Mailchimp API client
โ”‚   โ”œโ”€โ”€ tools/
โ”‚   โ”‚   โ”œโ”€โ”€ campaigns-tools.ts
โ”‚   โ”‚   โ”œโ”€โ”€ lists-tools.ts
โ”‚   โ”‚   โ”œโ”€โ”€ members-tools.ts
โ”‚   โ”‚   โ”œโ”€โ”€ automations-tools.ts
โ”‚   โ”‚   โ”œโ”€โ”€ templates-tools.ts
โ”‚   โ”‚   โ”œโ”€โ”€ reports-tools.ts
โ”‚   โ”‚   โ”œโ”€โ”€ landing-pages-tools.ts
โ”‚   โ”‚   โ”œโ”€โ”€ ecommerce-tools.ts
โ”‚   โ”‚   โ”œโ”€โ”€ tags-tools.ts
โ”‚   โ”‚   โ””โ”€โ”€ search-tools.ts
โ”‚   โ”œโ”€โ”€ types/
โ”‚   โ”‚   โ””โ”€โ”€ index.ts          # TypeScript type definitions
โ”‚   โ””โ”€โ”€ ui/
โ”‚       โ””โ”€โ”€ react-app/        # 15+ React applications
โ”‚           โ”œโ”€โ”€ campaign-dashboard/
โ”‚           โ”œโ”€โ”€ audience-manager/
โ”‚           โ”œโ”€โ”€ subscriber-grid/
โ”‚           โ””โ”€โ”€ ... (12+ more apps)
โ”œโ”€โ”€ dist/                     # Compiled JavaScript
โ”œโ”€โ”€ package.json
โ”œโ”€โ”€ tsconfig.json
โ””โ”€โ”€ README.md
```

## ๐Ÿ“„ License

MIT

## ๐Ÿค Contributing

Contributions welcome! Please read our contributing guidelines and submit PRs.

## ๐Ÿ“ž Support

- [Mailchimp API Documentation](https://mailchimp.com/developer/marketing/api/)
- [MCP Documentation](https://modelcontextprotocol.io/)
- Issues: GitHub Issues

## ๐Ÿ”— Related

- [Mailchimp Marketing API v3.0](https://mailchimp.com/developer/marketing/api/)
- [Model Context Protocol](https://modelcontextprotocol.io/)
- [MCPEngine](https://github.com/BusyBee3333/mcpengine)

---

**Built with โค๏ธ for the MCP community**

TDQS

C2.4/5.0

Scored across 120 tools

Disambiguation1/5

The set contains multiple exact-purpose duplicates, such as mailchimp_lists_batch_subscribe vs mailchimp_audiences_batch_subscribe, mailchimp_lists_get_growth_history vs mailchimp_audiences_get_growth_history, and mailchimp_lists_get_segments vs mailchimp_audiences_get_segments. Members_delete and members_archive also have nearly identical descriptions, making tool selection highly ambiguous.

Naming Consistency3/5

Most tools follow a mailchimp_<domain>_<resource>_<action> pattern and are consistently snake_case, but there are notable deviations: search_campaigns and search_members invert the verb placement, and lists/audiences are used interchangeably for the same underlying resource. Members_add_tags is also misnamed since it handles both adding and removing tags.

Tool Count1/5

120 tools is far beyond the 50+ extreme threshold and creates an enormous navigation burden. Even with Mailchimp's broad API surface, the count is excessive and includes many redundant or near-duplicate tools.

Completeness3/5

Core areas like campaigns, lists, members, templates, landing pages, and ecommerce CRUD are well covered, but there are notable gaps: promo rules only have list, promo codes only have list/add, and automations lack update/delete lifecycle operations. These gaps require agents to work around missing functionality.

Maintenance

ActivityInactive
ResponsivenessNo issues