Loading...
Loading...
CLI harness for the Mailchimp Marketing API v3.0 — 303 commands across 30 resource groups (lists, campaigns, reports, automations, ecommerce, templates, and more). Supports JSON output and interactive REPL mode.
npx skill4agent add hkuds/cli-anything cli-anything-mailchimpMAILCHIMP_API_KEYabc123-us8# From the CLI-Anything repo (once merged):
pip install git+https://github.com/HKUDS/CLI-Anything.git#subdirectory=mailchimp/agent-harness
# During development:
cd mailchimp/agent-harness && pip install -e .| Command | Description |
|---|---|
| Health check — confirms API connectivity |
| Get account info |
| Output any command as JSON |
| Launch interactive REPL |
| Command | Description |
|---|---|
| List all audiences |
| Get audience info |
| Create audience |
| Update audience |
| Delete audience |
| List members |
| Get member by MD5 hash |
| Add member |
| List merge fields |
| Add merge field |
| List segments |
| List member tags |
| Add/remove member tags |
| List webhooks |
| Add webhook |
| Command | Description |
|---|---|
| List campaigns |
| Get campaign info |
| Create campaign |
| Update campaign settings |
| Delete campaign |
| Send campaign immediately |
| Schedule campaign |
| Cancel scheduled send |
| Pause RSS campaign |
| Resume RSS campaign |
| Duplicate campaign |
| Get campaign content |
| Pre-send checklist |
| Command | Description |
|---|---|
| List all campaign reports |
| Get campaign summary report |
| Per-subscriber open/click activity |
| Link click breakdown |
| Per-subscriber opens |
| Unsubscribers |
| Geographic breakdown |
| Per-domain stats |
| Command | Description |
|---|---|
| List automations |
| Get automation info |
| Create automation |
| Pause automation |
| Start automation |
| Archive automation |
| List automation emails |
| Command | Description |
|---|---|
| List stores |
| Get store info |
| Add store |
| List orders |
| List products |
| List customers |
| List carts |
| List promo codes |
| Group | Description |
|---|---|
| Email templates (list, get, create, update, delete) |
| Template folders |
| Campaign folders |
| Files and folders in the file manager |
| Landing pages (list, create, publish, unpublish) |
| SMS campaigns (10 operations) |
| Surveys (list, get, publish) |
| Facebook ad and landing page reporting |
| Search campaigns by query |
| Search members across all audiences |
| Batch API operations |
| Batch operation webhooks |
| Email domain verification |
| OAuth connected apps |
| Connected site integrations |
| Inbox conversations |
| Account activity feed |
| Account data exports |
--json# List all audiences as JSON
cli-anything-mailchimp --json lists list
# Get a campaign report as JSON
cli-anything-mailchimp --json reports get abc123def
# Pipe to jq — use the native Mailchimp field name for the resource
cli-anything-mailchimp --json lists list | jq '.lists[].name'
cli-anything-mailchimp --json campaigns list | jq '.campaigns[].id'// List endpoints — key matches the resource name (lists, campaigns, members, etc.)
{"lists": [...], "total_items": 42, "_links": [...]}
{"campaigns": [...], "total_items": 10, "_links": [...]}
// Single resource GET / POST / PATCH
{"id": "abc123", "name": "My List", ...}
// DELETE
{"ok": true, "message": "Deleted."}
// Error
{"ok": false, "message": "Resource Not Found: ...", "data": {...}}# Get account health
cli-anything-mailchimp --json ping | jq '.health_status'
# List all audience IDs and names
cli-anything-mailchimp --json lists list | jq '.lists[] | {id, name}'
# Find all subscribed members in an audience
cli-anything-mailchimp --json lists list-lists-id-members <list_id> --status subscribed | jq '.members[].email_address'
# Create a campaign and get its send checklist
cli-anything-mailchimp --json campaigns create --data '{"type":"regular","settings":{"subject_line":"Hello","from_name":"Me","reply_to":"me@example.com"}}' | jq '.id'
cli-anything-mailchimp --json campaigns list-send-checklist <campaign_id> | jq '.items[] | select(.result == false)'
# Get unsubscribes for a sent campaign
cli-anything-mailchimp --json reports list-unsubscribed <campaign_id> | jq '.unsubscribes[].email_address'
# Add a member to an audience (subscriber hash = MD5 of lowercased email)
cli-anything-mailchimp --json lists create-members <list_id> --data '{"email_address":"user@example.com","status":"subscribed"}'
# Search for a member across all audiences
cli-anything-mailchimp --json search-members list --query "user@example.com" | jq '.exact_matches.members[]'cli-anything-mailchimp◆ cli-anything · Mailchimp
v0.1.0
Type help for commands, quit to exit
◆ mailchimp ❯ ping
✓ {"health_status": "Everything's Chimpy!"}
◆ mailchimp ❯ --json lists list
{"lists": [...], "total_items": 3, "_links": [...]}
◆ mailchimp ❯ quitpython -c "import hashlib; email='email@example.com'; print(hashlib.md5(email.strip().lower().encode()).hexdigest())"--data '<json>'-us8-eu2MAILCHIMP_API_KEYbatches