mcpField
C
cli-anything-mailchimp

cli-anything-mailchimp

github.com/hkuds营销与增长57.6k348 次安装5 周前更新
代码仓库

关于 cli-anything-mailchimp

cli-anything-mailchimp 是面向 Agent 的 Mailchimp Marketing API v3.0 命令行工具,可管理受众、营销活动、报告、自动化和电商资源,并支持 JSON 输出与交互式 REPL。

主要功能

  1. 01管理受众与成员
  2. 02创建、排期和发送营销活动
  3. 03查看活动与订阅者报告
  4. 04管理自动邮件工作流
  5. 05管理电商及营销资源
  6. 06支持 JSON 输出与交互式 REPL

适用场景

  1. 01维护受众成员和细分群组
  2. 02安排营销活动并查看结果
  3. 03管理自动邮件序列
  4. 04查询商店订单与产品记录

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/hkuds/cli-anything --skill cli-anything-mailchimp

安装后在 Claude Code 中输入/cli-anything-mailchimp确认已加载。

详细介绍

cli-anything-mailchimp

标识

一个面向 Mailchimp Marketing API v3.0 的 Agent 原生命令行工具,基于 CLI-Anything 框架构建。

此命令行工具的功能

  • 管理 受众(列表) — 创建、更新、删除列表;添加、更新、归档成员;管理合并字段、细分、标签和 Webhook。
  • 运行 营销活动 — 创建、定时、发送、暂停、复制和分析电子邮件营销活动。
  • 读取 报告 — 打开率、点击率、退信统计、退订、电子邮件活动、地理数据。
  • 控制 自动化 — 创建和管理自动化电子邮件工作流。
  • 管理 电子商务 — 商店、订单、客户、产品、购物车和优惠码。
  • 使用 模板、文件管理器、着陆页、短信营销活动、问卷 以及所有其他 Marketing API 资源。

前提条件

  • Python 3.10+
  • 将 MAILCHIMP_API_KEY 环境变量设置为你的 API 密钥(包括数据中心后缀,例如 abc123-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 .

命令参考

根
命令描述
cli-anything-mailchimp ping健康检查 — 确认 API 连接性
cli-anything-mailchimp root list获取账户信息
cli-anything-mailchimp --json <cmd>将任意命令输出为 JSON
cli-anything-mailchimp启动交互式 REPL
列表(受众)
命令描述
lists list列出所有受众
lists get <LIST_ID>获取受众信息
lists create --data '<json>'创建受众
lists update <LIST_ID> --data '<json>'更新受众
lists delete <LIST_ID>删除受众
lists list-lists-id-members <LIST_ID>列出成员
lists get-lists-id-members-id <LIST_ID> <SUBSCRIBER_HASH>通过 MD5 哈希获取成员
lists create-lists-id-members <LIST_ID> --data '<json>'添加成员
lists list-lists-id-merge-fields <LIST_ID>列出合并字段
lists create-lists-id-merge-fields <LIST_ID> --data '<json>'添加合并字段
lists list-lists-id-segments <LIST_ID>列出细分
lists list-list-member-tags <LIST_ID> <SUBSCRIBER_HASH>列出成员标签
lists create-list-member-tags <LIST_ID> <SUBSCRIBER_HASH> --data '<json>'添加/移除成员标签
lists list-lists-id-webhooks <LIST_ID>列出 Webhook
lists create-lists-id-webhooks <LIST_ID> --data '<json>'添加 Webhook
营销活动
命令描述
campaigns list列出营销活动
campaigns get <CAMPAIGN_ID>获取营销活动信息
campaigns create --data '<json>'创建营销活动
campaigns update <CAMPAIGN_ID> --data '<json>'更新营销活动设置
campaigns delete <CAMPAIGN_ID>删除营销活动
campaigns send <CAMPAIGN_ID>立即发送营销活动
campaigns schedule <CAMPAIGN_ID> --data '<json>'定时营销活动
campaigns cancel-send <CAMPAIGN_ID>取消已定时发送
campaigns pause <CAMPAIGN_ID>暂停 RSS 营销活动
campaigns resume <CAMPAIGN_ID>恢复 RSS 营销活动
campaigns replicate <CAMPAIGN_ID>复制营销活动
campaigns list-content <CAMPAIGN_ID>获取营销活动内容
campaigns list-send-checklist <CAMPAIGN_ID>发送前检查清单
报告
命令描述
reports list列出所有营销活动报告
reports get <CAMPAIGN_ID>获取营销活动摘要报告
reports list-email-activity <CAMPAIGN_ID>每位订阅者的打开/点击活动
reports list-click-details <CAMPAIGN_ID>链接点击明细
reports list-open-details <CAMPAIGN_ID>每位订阅者的打开情况
reports list-unsubscribed <CAMPAIGN_ID>退订者
reports list-locations <CAMPAIGN_ID>地理分布
reports list-domain-performance <CAMPAIGN_ID>各域名统计
自动化
命令描述
automations list列出自动化
automations get <WORKFLOW_ID>获取自动化信息
automations create --data '<json>'创建自动化
automations pause <WORKFLOW_ID>暂停自动化
automations start <WORKFLOW_ID>启动自动化
automations archive <WORKFLOW_ID>归档自动化
automations list-emails <WORKFLOW_ID>列出自动化邮件
电子商务
命令描述
ecommerce list-ecommerce-stores列出店铺
ecommerce get <STORE_ID>获取店铺信息
ecommerce create --data '<json>'添加店铺
ecommerce list-ecommerce-stores-id-orders <STORE_ID>列出订单
ecommerce list-ecommerce-stores-id-products <STORE_ID>列出商品
ecommerce list-ecommerce-stores-id-customers <STORE_ID>列出客户
ecommerce list-ecommerce-stores-id-carts <STORE_ID>列出购物车
ecommerce list-ecommerce-stores-id-promocodes <PROMO_RULE_ID> <STORE_ID>列出促销码
其他资源
分组描述
templates邮件模板(列出、获取、创建、更新、删除)
template-folders模板文件夹
campaign-folders营销活动文件夹
file-manager文件管理器中的文件和文件夹
landing-pages落地页(列出、创建、发布、取消发布)
sms-campaigns短信营销活动(10 项操作)
surveys调查问卷(列出、获取、发布)
reportingFacebook 广告和落地页报告
search-campaigns按查询搜索营销活动
search-members在所有受众中搜索成员
batches批量 API 操作
batch-webhooks批量操作 Webhook
verified-domains邮箱域名验证
authorized-appsOAuth 连接的应用
connected-sites已连接的站点集成
conversations收件箱会话
activity-feed账户活动动态
account-exports账户数据导出

JSON 输出

所有命令都支持在根级别使用 --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'

信封结构(Mailchimp API 原生响应 — 使用特定于资源的键):

// 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": {...}}

常见 Agent 模式

# 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":"[email protected]"}}' | 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":"[email protected]","status":"subscribed"}'

# Search for a member across all audiences
cli-anything-mailchimp --json search-members list --query "[email protected]" | jq '.exact_matches.members[]'

交互式 REPL

不带任何参数运行 cli-anything-mailchimp 即可进入 REPL:

◆  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 ❯ quit

说明

  • 订阅者哈希:Mailchimp 通过成员小写邮箱的 MD5 哈希来识别成员。使用 python -c "import hashlib; email='[email protected]'; print(hashlib.md5(email.strip().lower().encode()).hexdigest())" 计算。
  • 请求体负载:所有 POST/PATCH/PUT 命令都接受 --data '<json>'。各端点的 schema 请参阅 Mailchimp API 文档。
  • 数据中心:你的 API 密钥以 -us8、-eu2 等结尾。CLI 会自动提取 — 请将其包含在 MAILCHIMP_API_KEY 中。
  • 速率限制:Marketing API 的速率限制为 10 个并发连接,以及按账户滚动的限制。对于批量操作,请使用 batches 分组。

评论

支持 Markdown