关于 cli-anything-mailchimp
cli-anything-mailchimp 是面向 Agent 的 Mailchimp Marketing API v3.0 命令行工具,可管理受众、营销活动、报告、自动化和电商资源,并支持 JSON 输出与交互式 REPL。
主要功能
- 01管理受众与成员
- 02创建、排期和发送营销活动
- 03查看活动与订阅者报告
- 04管理自动邮件工作流
- 05管理电商及营销资源
- 06支持 JSON 输出与交互式 REPL
适用场景
- 01维护受众成员和细分群组
- 02安排营销活动并查看结果
- 03管理自动邮件序列
- 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 | 调查问卷(列出、获取、发布) |
reporting | Facebook 广告和落地页报告 |
search-campaigns | 按查询搜索营销活动 |
search-members | 在所有受众中搜索成员 |
batches | 批量 API 操作 |
batch-webhooks | 批量操作 Webhook |
verified-domains | 邮箱域名验证 |
authorized-apps | OAuth 连接的应用 |
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