mcpField
M
Mailchimp Automation

Mailchimp Automation

github.com/claude-office-skillsMarketing & growth5454.6k installsUpdated 39w ago
Repository

About Mailchimp Automation

Mailchimp Automation is a skill for planning Mailchimp campaigns and managing audiences, automations, and performance. It outlines workflows and configuration examples for email marketers.

Key features

  1. 01Campaign planning and configuration
  2. 02Audience segmentation and tagging
  3. 03Welcome, cart, and post-purchase flows
  4. 04A/B and multivariate testing
  5. 05Templates and personalization
  6. 06Campaign and audience analytics

Use cases

  1. 01Set up a welcome email series
  2. 02Segment subscribers by engagement
  3. 03Test subject lines or send times
  4. 04Review campaign delivery and audience health

Install

Copy the command and run it in a terminal.

$npx skills add https://github.com/claude-office-skills/skills --skill mailchimp-automation

After installing, type/mailchimp-automationin Claude Code to confirm it loaded.

Details

From the project README

Mailchimp Automation

Comprehensive skill for automating Mailchimp email marketing and audience management.

Core Workflows

1. Campaign Pipeline
EMAIL CAMPAIGN FLOW:
┌─────────────────┐
│  Plan Campaign  │
│  - Goals        │
│  - Audience     │
└────────┬────────┘
         ▼
┌─────────────────┐
│  Create Content │
│  - Design       │
│  - Copy         │
└────────┬────────┘
         ▼
┌─────────────────┐
│  Configure      │
│  - Subject      │
│  - Preview      │
│  - Settings     │
└────────┬────────┘
         ▼
┌─────────────────┐
│  Test & Review  │
│  - A/B test     │
│  - Preview      │
└────────┬────────┘
         ▼
┌─────────────────┐
│  Schedule/Send  │
│  - Timing       │
│  - Send         │
└────────┬────────┘
         ▼
┌─────────────────┐
│    Analyze      │
│  - Opens/Clicks │
│  - Revenue      │
└─────────────────┘
2. Campaign Configuration
campaign_config:
  type: regular  # regular, automated, plaintext, ab_test
  
  recipients:
    list_id: "abc123"
    segment_opts:
      saved_segment_id: "seg123"
      # or dynamic conditions
      
  settings:
    subject_line: "{{subject}}"
    preview_text: "{{preview}}"
    from_name: "{{company}}"
    reply_to: "{{email}}"
    
  tracking:
    opens: true
    clicks: true
    ecommerce: true
    google_analytics: "campaign_name"
    
  content_type: "template"
  template_id: "template_123"

Audience Management

Segmentation Rules
segments:
  - name: active_subscribers
    conditions:
      - field: last_opened
        op: greater_than
        value: "30_days_ago"
        
  - name: high_value_customers
    conditions:
      - field: ecomm_total_spent
        op: greater_than
        value: 500
      - field: ecomm_orders
        op: greater_than
        value: 3
        
  - name: at_risk
    conditions:
      - field: last_opened
        op: greater_than
        value: "90_days_ago"
      - field: email_campaigns_opened
        op: greater_than
        value: 5
        
  - name: new_subscribers
    conditions:
      - field: timestamp_signup
        op: greater_than
        value: "30_days_ago"
Audience Tags
tagging_automation:
  - trigger: form_submit
    form: "newsletter_signup"
    actions:
      - add_tag: "newsletter"
      - add_tag: "{{form.interest}}"
      
  - trigger: purchase
    actions:
      - add_tag: "customer"
      - add_tag: "purchased_{{product_category}}"
      
  - trigger: link_clicked
    url_contains: "/pricing"
    actions:
      - add_tag: "interested_in_pricing"

Email Automation

Welcome Series
welcome_automation:
  name: "Welcome Series"
  trigger:
    type: signup
    list_id: "main_list"
    
  emails:
    - delay: immediate
      subject: "Welcome to {{company}}! 🎉"
      template: welcome_email_1
      
    - delay: 2_days
      subject: "Here's how to get started"
      template: welcome_email_2
      
    - delay: 5_days
      subject: "{{first_name}}, your exclusive tips"
      template: welcome_email_3
      
    - delay: 10_days
      subject: "Ready to take the next step?"
      template: welcome_email_4
      content: offer_cta
Abandoned Cart
abandoned_cart:
  name: "Cart Recovery"
  trigger:
    type: ecommerce
    event: cart_abandoned
    delay: 1_hour
    
  emails:
    - delay: 1_hour
      subject: "You left something behind..."
      template: cart_reminder_1
      show_cart_items: true
      
    - delay: 24_hours
      condition: cart_not_recovered
      subject: "Your cart is waiting"
      template: cart_reminder_2
      include_discount: false
      
    - delay: 72_hours
      condition: cart_not_recovered
      subject: "Last chance: 10% off your cart"
      template: cart_reminder_3
      include_discount: true
      discount_code: "COMEBACK10"
Post-Purchase
post_purchase:
  name: "Post-Purchase Nurture"
  trigger:
    type: ecommerce
    event: purchase
    
  emails:
    - delay: immediate
      type: transactional
      subject: "Order confirmed #{{order_id}}"
      template: order_confirmation
      
    - delay: 3_days
      type: transactional
      subject: "Your order has shipped"
      template: shipping_notification
      condition: order_shipped
      
    - delay: 7_days
      subject: "How's your {{product_name}}?"
      template: review_request
      condition: order_delivered
      
    - delay: 30_days
      subject: "You might also like..."
      template: cross_sell
      content: recommended_products

A/B Testing

Test Configuration
ab_test:
  type: subject_line  # or content, send_time, from_name
  
  variants:
    a:
      subject: "Don't miss out: Sale ends tonight"
    b:
      subject: "⚡ Flash sale: 24 hours only"
      
  test_settings:
    split_percentage: 20  # Test on 20%, winner to 80%
    winning_metric: open_rate  # or click_rate, revenue
    wait_time: 4_hours
    
  auto_winner:
    enabled: true
    send_remaining: true
Multivariate Test
multivariate_test:
  factors:
    subject_line:
      - "New arrivals just dropped"
      - "You'll love what's new"
    preview_text:
      - "Shop the latest styles"
      - "See what's trending now"
    send_time:
      - "09:00"
      - "14:00"
      
  combinations: 8
  sample_size: 25%
  duration: 24_hours

Email Templates

Newsletter Template
newsletter_template:
  layout: multi_column
  
  sections:
    - type: header
      logo: "{{logo_url}}"
      navigation: true
      
    - type: hero
      image: "{{hero_image}}"
      headline: "{{headline}}"
      subheadline: "{{subheadline}}"
      cta:
        text: "{{cta_text}}"
        url: "{{cta_url}}"
        
    - type: content_blocks
      columns: 2
      items:
        - image: "{{item1_image}}"
          title: "{{item1_title}}"
          description: "{{item1_desc}}"
          link: "{{item1_url}}"
          
    - type: footer
      social_links: true
      unsubscribe: true
      company_address: true
Personalization
personalization:
  merge_tags:
    - "*|FNAME|*": first_name
    - "*|LNAME|*": last_name
    - "*|EMAIL|*": email
    - "*|COMPANY|*": company
    
  conditional_content:
    - condition: "*|IF:VIP|*"
      content: "As a VIP member, you get early access!"
      
  dynamic_content:
    - tag: "*|PRODUCT_RECS|*"
      source: ecommerce
      type: recommended_products
      limit: 4

Analytics Dashboard

Campaign Performance
CAMPAIGN ANALYTICS - "January Newsletter"
═══════════════════════════════════════

DELIVERY:
Sent:          25,430
Delivered:     24,892 (97.9%)
Bounced:       538 (2.1%)

ENGAGEMENT:
Opened:        8,450 (33.9%)
Clicked:       2,156 (8.7%)
Unsubscribed:  45 (0.18%)

REVENUE (if e-commerce):
Orders:        89
Revenue:       $4,523
Revenue/Email: $0.18

BY DEVICE:
Desktop   ████████████████ 52%
Mobile    ██████████░░░░░░ 38%
Tablet    ███░░░░░░░░░░░░░ 10%

TOP CLICKED LINKS:
┌────────────────────────┬────────┐
│ Link                   │ Clicks │
├────────────────────────┼────────┤
│ Main CTA button        │ 1,245  │
│ Product image 1        │ 456    │
│ "Learn more" link      │ 234    │
│ Social - Twitter       │ 123    │
└────────────────────────┴────────┘

OPEN TIME:
Peak: 10:00 AM - 12:00 PM (42%)
Audience Health
audience_metrics:
  total_subscribers: 45,230
  growth_rate: "+3.2% monthly"
  
  health_indicators:
    active_30_days: 78%
    engaged_90_days: 65%
    dormant: 22%
    
  list_quality:
    average_open_rate: 28.5%
    average_click_rate: 4.2%
    unsubscribe_rate: 0.15%
    bounce_rate: 1.8%

API Examples

Create Campaign
// Create Campaign
const campaign = await mailchimp.campaigns.create({
  type: "regular",
  recipients: {
    list_id: "abc123",
    segment_opts: {
      saved_segment_id: "seg123"
    }
  },
  settings: {
    subject_line: "Your Weekly Update",
    preview_text: "This week's top stories",
    from_name: "Company Name",
    reply_to: "[email protected]"
  }
});

// Set Content
await mailchimp.campaigns.setContent(campaign.id, {
  template: {
    id: "template_123",
    sections: {
      headline: "Welcome to our newsletter!"
    }
  }
});

// Send Campaign
await mailchimp.campaigns.send(campaign.id);
Manage Subscribers
// Add Subscriber
await mailchimp.lists.addListMember("list_id", {
  email_address: "[email protected]",
  status: "subscribed",
  merge_fields: {
    FNAME: "John",
    LNAME: "Doe"
  },
  tags: ["newsletter", "customer"]
});

// Update Subscriber
await mailchimp.lists.updateListMember("list_id", "subscriber_hash", {
  merge_fields: {
    COMPANY: "Acme Inc"
  }
});

// Add Tags
await mailchimp.lists.updateListMemberTags("list_id", "subscriber_hash", {
  tags: [{ name: "vip", status: "active" }]
});

Best Practices

  1. Clean Your List: Remove bounces and inactive
  2. Segment Thoughtfully: Right message to right people
  3. Test Everything: Subject lines, content, timing
  4. Mobile First: Design for mobile readers
  5. Personalize: Use merge tags and dynamic content
  6. Monitor Metrics: Track and improve over time
  7. Respect Frequency: Don't over-send
  8. Comply with Laws: CAN-SPAM, GDPR

Comments

Markdown supported