关于 pp-mailchimp
pp-mailchimp 是面向终端和 Agent 工作流的 Mailchimp 命令行技能,适用于联系人管理、营销活动分析和受众维护。它通过本地 SQLite 缓存支持 SQL 查询,并提供组合多类报告的分析命令。
主要功能
- 01按邮箱订阅联系人并添加标签
- 02通过批处理导入 CSV
- 03汇总营销活动报告与收入数据
- 04审计受众细分
- 05比较活动指标
- 06发送前检查活动清单
适用场景
- 01导入并标记一批订阅者
- 02汇总近期营销活动表现
- 03检查细分群组是否过时或为空
- 04发送前验证营销活动设置
MCP 相关
README 提到 MCP 接口通过代码编排覆盖 291 个端点,并说明了安装 CLI 对应 MCP 服务的方式。
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ mvanhorn/ printing-press-library --skill pp-mailchimp安装后在 Claude Code 中输入/pp-mailchimp确认已加载。
详细介绍
Mailchimp — Printing Press CLI
前置条件:安装 CLI
此技能使用 mailchimp-pp-cli 二进制文件。调用此技能中的任何命令前,必须确认 CLI 已安装。 如果尚未安装,请先安装:
- 使用 Printing Press 安装程序进行安装。在 macOS/Linux 上,二进制文件默认安装到
$HOME/.local/bin;在 Windows 上,默认安装到%LOCALAPPDATA%\Programs\PrintingPress\bin:npx -y @mvanhorn/printing-press-library install mailchimp --cli-only - 验证:
mailchimp-pp-cli --version - 确保报告的安装目录位于将调用此技能的 Agent/运行时的
$PATH中。
如果 npx 安装失败(未安装 Node、处于离线状态等),请改用 Go 直接安装(需要 Go 1.26.6 或更高版本):
go install github.com/mvanhorn/printing-press-library/library/marketing/mailchimp/cmd/mailchimp-pp-cli@latest
如果安装后 --version 报告“command not found”,说明运行时无法在 $PATH 中找到二进制文件目录。在验证成功前,请勿执行此技能的命令。
何时使用此 CLI
当你需要通过终端或 Agent 操作 Mailchimp,且工作流涉及多个端点时,请使用此 CLI:例如,为联系人订阅并添加标签、通过批处理端点导入 CSV、衡量营销活动的成效,或审查细分受众的卫生状况。本地 SQLite 缓存可让你通过 SQL 查询受众,这是控制面板或 SDK 无法做到的。MCP 接口通过代码编排,可在约 1K 个令牌内覆盖 291 个端点,因此 Agent 无需扩充工具列表,就能访问任意 Mailchimp 端点。
独特功能
此 API 的其他工具均不具备以下功能。
工作流组合
-
subscribe— 通过一条命令按电子邮件地址更新或新建会员并应用标签。自动计算 MD5 订阅者哈希值,你无需处理它。当 Agent 需要添加带标签的联系人时,只需调用一次,而不是分三次调用并在中间计算 MD5 哈希值。
mailchimp-pp-cli subscribe [email protected] --list a1b2c3d4e5 --tags vip,onboarding --merge FNAME=Alice -
bulk-subscribe— 读取 CSV,通过 Mailchimp 的 /batches 端点分批处理(这是官方提供的每批 10 个并发连接的处理方式),持续轮询直至完成,在 JSONL 结果的 tar.gz 文件响应 URL 有效的 10 分钟内对其解码,并逐行打印处理结果。当 Agent 需要一次订阅超过约 50 个联系人时,这是唯一安全的途径;它既遵守速率限制,也能返回可操作的逐行结果。
mailchimp-pp-cli bulk-subscribe --csv contacts.csv --list a1b2c3d4e5 --tags newsletter --watch
能产生复合效益的本地联结
-
digest— 单个营销活动模式(digest )将报告、电子邮件活动和电商产品活动合并为一份摘要,包含打开、点击、退信、收入,以及点击次数最多的链接和转化次数最多的产品。汇总模式(digest --last N 或 --week)会生成包含汇总统计数据的多营销活动摘要表。--md 会将任一模式的结果渲染为可直接粘贴的 Markdown。使用 digest 分析单个营销活动;使用 digest --last N 获取每周汇总。--md 会生成两类用户都需要的可直接粘贴到文档中的格式。
mailchimp-pp-cli digest --last 5 --md -
segments audit— 查找空细分、90 天内没有增长的细分,以及近期营销活动中未引用的细分。读取细分端点,并与本地 SQLite 存储中的成员数量联结。清理受众或审核细分规范时,此工具可通过一次调用找出哪些细分已失效。
mailchimp-pp-cli segments audit --list a1b2c3d4e5 --json -
attribution— 将营销活动的电商产品活动报告与已同步的商店订单联结,计算归因收入、按归因收入排名的热门产品,以及转化率(订单数除以打开次数)。衡量营销活动是否带来收入时,只需运行这条命令。
mailchimp-pp-cli attribution 7f8a9b0c1d --store mystore --json -
deliverability— 汇总最近 N 个营销活动的域名表现报告。展示各域名(gmail.com、yahoo.com、outlook.com)的退信率、垃圾邮件率、打开率和点击率,并突出显示表现低于账户平均水平的域名。调查送达率下滑时,无需逐一打开 10 个报告页面,此工具就能显示哪些收件箱服务商的表现正在变差。
mailchimp-pp-cli deliverability --last 10 --json -
compare— 并排比较两个营销活动的指标差异。并行获取两个营销活动的报告和电子邮件活动数据,展示打开率、点击率(CTR)、点击打开率、退信、取消订阅和收入,并为每项指标标出胜出者、计算差值,同时呈现主要差异(主题行、发送时间、受众规模)。--md 会将结果渲染为可直接粘贴的 Markdown。当你想知道“哪个营销活动胜出?”或“这次改动有效吗?”时,只需运行这条命令。--md 模式可将结果粘贴到每周回顾文档中。
mailchimp-pp-cli compare 7f8a9b0c1d 8c9d0e1f2a --md
操作安全
-
send-checked— 发送前运行官方发送检查清单。如果有任何项目的 type=error 或 is_ready=false,则以状态码 2 退出并显示未通过的项目;否则发送。通过流水线发送营销活动时,这是安全的默认选项——有问题的营销活动不会在无提示的情况下发出。
mailchimp-pp-cli send-checked 7f8a9b0c1d
命令参考
account-exports — 管理账户导出
mailchimp-pp-cli account-exports get— 获取指定账户的账户导出列表。mailchimp-pp-cli account-exports get-id— 获取特定账户导出的信息。mailchimp-pp-cli account-exports post— 在你的 Mailchimp 账户中创建新的账户导出。
activity-feed — 管理活动动态
mailchimp-pp-cli activity-feed— 按时间倒序返回此账户的 Chimp Chatter。
audiences — 管理受众
mailchimp-pp-cli audiences get-contacts— 获取账户中所有受众的信息。mailchimp-pp-cli audiences get-id— 获取特定受众的信息。
authorized-apps — 管理已授权应用
mailchimp-pp-cli authorized-apps get— 获取账户已注册并连接的应用列表。mailchimp-pp-cli authorized-apps get-id— 获取特定已授权应用的信息。
automations — 管理自动化
mailchimp-pp-cli automations get— 获取账户中经典自动化的摘要。mailchimp-pp-cli automations get-id— 获取单个经典自动化工作流的设置和内容摘要。trigger_settings对象……mailchimp-pp-cli automations post— 在你的 Mailchimp 账户中创建新的经典自动化。
batch-webhooks — 管理批量 Webhook
mailchimp-pp-cli batch-webhooks delete-id— 删除批次 Webhook。系统将不再向指定 URL 发送 Webhook。mailchimp-pp-cli batch-webhooks get— 获取已为批次配置的所有 Webhook。mailchimp-pp-cli batch-webhooks get-batchwebhooks— 获取特定批次 Webhook 的信息。mailchimp-pp-cli batch-webhooks patch— 更新一个 Webhook,该 Webhook 会在任何批次请求完成处理时触发。mailchimp-pp-cli batch-webhooks post— 配置一个 Webhook,该 Webhook 会在任何批次请求完成处理时触发。您最多只能拥有……
batches — 管理批次
mailchimp-pp-cli batches delete-id— 停止运行批次请求。由于一次只运行一个批次请求,因此可用于取消一个耗时较长的……mailchimp-pp-cli batches get— 获取已提交批次请求的摘要。mailchimp-pp-cli batches get-id— 获取批次请求的状态。mailchimp-pp-cli batches post— 开始处理批量操作请求。
campaign-folders — 管理营销活动文件夹
mailchimp-pp-cli campaign-folders delete-id— 删除特定营销活动文件夹,并将文件夹中的所有营销活动标记为“未归档”。mailchimp-pp-cli campaign-folders get— 获取用于整理营销活动的所有文件夹。mailchimp-pp-cli campaign-folders get-id— 获取用于整理营销活动的特定文件夹的信息。mailchimp-pp-cli campaign-folders patch-id— 更新用于整理营销活动的特定文件夹。mailchimp-pp-cli campaign-folders post— 创建新的营销活动文件夹。
campaigns — 管理营销活动
mailchimp-pp-cli campaigns delete-id— 从您的 Mailchimp 账户中移除营销活动。mailchimp-pp-cli campaigns get— 获取账户中的所有营销活动。mailchimp-pp-cli campaigns get-id— 获取特定营销活动的信息。mailchimp-pp-cli campaigns patch-id— 更新特定营销活动的部分或全部设置。mailchimp-pp-cli campaigns post— 创建新的 Mailchimp 营销活动。
connected-sites — 管理已连接的网站
mailchimp-pp-cli connected-sites delete-id— 从您的 Mailchimp 账户中移除已连接的网站。mailchimp-pp-cli connected-sites get— 获取账户中所有已连接的网站。mailchimp-pp-cli connected-sites get-id— 获取特定已连接网站的信息。mailchimp-pp-cli connected-sites post— 创建新的 Mailchimp 已连接网站。
conversations — 管理对话
mailchimp-pp-cli conversations get— 获取账户的对话列表。对话功能已弃用,建议改用 Inbox;这些端点……mailchimp-pp-cli conversations get-id— 获取单个对话的详情。对话功能已弃用,建议改用 Inbox;这些……
customer-journeys — 管理客户旅程
mailchimp-pp-cli customer-journeys <journey_id> <step_id>— Automation 流程中的步骤触发器。要使用此功能,请在 Automation 流程构建器中创建起点或步骤……
ecommerce — 管理电子商务
-
mailchimp-pp-cli ecommerce delete-stores-id— 删除商店。删除商店也会删除所有相关子资源,包括客户、订单等。 -
mailchimp-pp-cli ecommerce delete-stores-id-carts-id— 删除购物车。 -
mailchimp-pp-cli ecommerce delete-stores-id-carts-lines-id— 删除指定的购物车商品。 -
mailchimp-pp-cli ecommerce delete-stores-id-customers-id— 从商店中删除客户。 -
mailchimp-pp-cli ecommerce delete-stores-id-orders-id— 删除订单。 -
mailchimp-pp-cli ecommerce delete-stores-id-orders-id-lines-id— 删除指定的订单商品。 -
mailchimp-pp-cli ecommerce delete-stores-id-products-id— 删除产品。 -
mailchimp-pp-cli ecommerce delete-stores-id-products-id-images-id— 删除产品图片。 -
mailchimp-pp-cli ecommerce delete-stores-id-products-id-variants-id— 删除产品变体。 -
mailchimp-pp-cli ecommerce delete-stores-id-promocodes-id— 从商店中删除促销码。 -
mailchimp-pp-cli ecommerce delete-stores-id-promorules-id— 从商店中删除促销规则。 -
mailchimp-pp-cli ecommerce get-orders— 获取账户订单的信息。 -
mailchimp-pp-cli ecommerce get-stores— 获取账户中所有商店的信息。 -
mailchimp-pp-cli ecommerce get-stores-id— 获取指定商店的信息。 -
mailchimp-pp-cli ecommerce get-stores-id-carts— 获取商店购物车的信息。 -
mailchimp-pp-cli ecommerce get-stores-id-carts-id— 获取指定购物车的信息。 -
mailchimp-pp-cli ecommerce get-stores-id-carts-id-lines— 获取购物车商品的信息。 -
mailchimp-pp-cli ecommerce get-stores-id-carts-id-lines-id— 获取指定购物车商品的信息。 -
mailchimp-pp-cli ecommerce get-stores-id-customers— 获取商店客户的信息。 -
mailchimp-pp-cli ecommerce get-stores-id-customers-id— 获取指定客户的信息。 -
mailchimp-pp-cli ecommerce get-stores-id-orders— 获取商店订单的信息。 -
mailchimp-pp-cli ecommerce get-stores-id-orders-id— 获取指定订单的信息。 -
mailchimp-pp-cli ecommerce get-stores-id-orders-id-lines— 获取订单商品的信息。 -
mailchimp-pp-cli ecommerce get-stores-id-orders-id-lines-id— 获取指定订单商品的信息。 -
mailchimp-pp-cli ecommerce get-stores-id-products— 获取商店产品的信息。 -
mailchimp-pp-cli ecommerce get-stores-id-products-id— 获取指定产品的信息。 -
mailchimp-pp-cli ecommerce get-stores-id-products-id-images— 获取产品图片的信息。 -
mailchimp-pp-cli ecommerce get-stores-id-products-id-images-id— 获取指定产品图片的信息。 -
mailchimp-pp-cli ecommerce get-stores-id-products-id-variants— 获取产品变体的信息。 -
mailchimp-pp-cli ecommerce get-stores-id-products-id-variants-id— 获取指定产品变体的信息。 -
mailchimp-pp-cli ecommerce get-stores-id-promocodes— 获取商店促销码的信息。 -
mailchimp-pp-cli ecommerce get-stores-id-promocodes-id— 获取指定促销码的信息。 -
mailchimp-pp-cli ecommerce get-stores-id-promorules— 获取商店促销规则的信息。 -
mailchimp-pp-cli ecommerce get-stores-id-promorules-id— 获取指定促销规则的信息。 -
mailchimp-pp-cli ecommerce patch-stores-id— 更新商店。 -
mailchimp-pp-cli ecommerce patch-stores-id-carts-id— 更新指定购物车。 -
mailchimp-pp-cli ecommerce patch-stores-id-carts-id-lines-id— 更新指定购物车商品。 -
mailchimp-pp-cli ecommerce patch-stores-id-customers-id— 更新客户。 -
mailchimp-pp-cli ecommerce patch-stores-id-orders-id— 更新指定订单。 -
mailchimp-pp-cli ecommerce patch-stores-id-orders-id-lines-id— 更新指定订单商品。 -
mailchimp-pp-cli ecommerce patch-stores-id-products-id— 更新指定产品。 -
mailchimp-pp-cli ecommerce patch-stores-id-products-id-images-id— 更新产品图片。 -
mailchimp-pp-cli ecommerce patch-stores-id-products-id-variants-id— 更新产品变体。 -
mailchimp-pp-cli ecommerce patch-stores-id-promocodes-id— 更新促销码。 -
mailchimp-pp-cli ecommerce patch-stores-id-promorules-id— 更新促销规则。 -
mailchimp-pp-cli ecommerce post-stores— 向 Mailchimp 账户添加新商店。 -
mailchimp-pp-cli ecommerce post-stores-id-carts— 向商店添加新购物车。 -
mailchimp-pp-cli ecommerce post-stores-id-carts-id-lines— 向现有购物车添加新商品。 -
mailchimp-pp-cli ecommerce post-stores-id-customers— 向商店添加新客户。 -
mailchimp-pp-cli ecommerce post-stores-id-orders— 向商店添加新订单。 -
mailchimp-pp-cli ecommerce post-stores-id-orders-id-lines— 向现有订单添加新商品。 -
mailchimp-pp-cli ecommerce post-stores-id-products— 向商店添加新产品。 -
mailchimp-pp-cli ecommerce post-stores-id-products-id-images— 向产品添加新图片。 -
mailchimp-pp-cli ecommerce post-stores-id-products-id-variants— 向产品添加新变体。 -
mailchimp-pp-cli ecommerce post-stores-id-promocodes— 向商店添加新促销码。 -
mailchimp-pp-cli ecommerce post-stores-id-promorules— 向商店添加新促销规则。 -
mailchimp-pp-cli ecommerce put-stores-id-customers-id— 添加或更新客户。 -
mailchimp-pp-cli ecommerce put-stores-id-orders-id— 添加或更新订单。 -
mailchimp-pp-cli ecommerce put-stores-id-products-id— 更新指定产品。 -
mailchimp-pp-cli ecommerce put-stores-id-products-id-variants-id— 添加或更新产品变体。 facebook-ads — 管理 Facebook 广告 -
mailchimp-pp-cli facebook-ads get-all— 获取 Facebook 广告列表。 -
mailchimp-pp-cli facebook-ads get-id— 获取 Facebook 广告的详细信息。
file-manager — 管理文件管理器
mailchimp-pp-cli file-manager delete-files-id— 从文件管理器中移除指定文件。mailchimp-pp-cli file-manager delete-folders-id— 删除文件管理器中的指定文件夹。mailchimp-pp-cli file-manager get-files— 获取此账户文件管理器中存储的可用图片和文件列表。mailchimp-pp-cli file-manager get-files-id— 获取文件管理器中指定文件的信息。mailchimp-pp-cli file-manager get-folders— 获取文件管理器中的所有文件夹列表。mailchimp-pp-cli file-manager get-folders-files— 获取此文件夹中存储的可用图片和文件列表。mailchimp-pp-cli file-manager get-folders-id— 获取文件管理器中指定文件夹的信息。mailchimp-pp-cli file-manager patch-files-id— 更新文件管理器中的文件。mailchimp-pp-cli file-manager patch-folders-id— 更新指定的文件管理器文件夹。mailchimp-pp-cli file-manager post-files— 将新图片或文件上传到文件管理器。mailchimp-pp-cli file-manager post-folders— 在文件管理器中创建新文件夹。
landing-pages — 管理落地页
mailchimp-pp-cli landing-pages delete-id— 删除落地页。mailchimp-pp-cli landing-pages get-all— 获取所有落地页。mailchimp-pp-cli landing-pages get-id— 获取指定页面的信息。mailchimp-pp-cli landing-pages patch-id— 更新落地页。mailchimp-pp-cli landing-pages post-all— 创建尚未发布且不含内容的 Mailchimp 落地页。
lists — 管理列表
mailchimp-pp-cli lists delete-id— 从你的 Mailchimp 账户中删除列表。删除列表后,你将丢失列表历史记录,包括订阅者……mailchimp-pp-cli lists get— 获取账户中所有列表的信息。mailchimp-pp-cli lists get-id— 获取 Mailchimp 账户中指定列表的信息。结果包含已注册但……mailchimp-pp-cli lists patch-id— 更新指定列表的设置。mailchimp-pp-cli lists post— 在你的 Mailchimp 账户中创建新列表。mailchimp-pp-cli lists post-id— 批量订阅或取消订阅列表成员。
ping — 管理 ping
mailchimp-pp-cli ping— 用于 API 的健康检查,不会返回任何账户专属信息。
reporting — 管理报告
mailchimp-pp-cli reporting get-facebook-ads— 获取 Facebook 广告报告。mailchimp-pp-cli reporting get-facebook-ads-id— 获取 Facebook 广告报告。mailchimp-pp-cli reporting get-facebook-ads-id-ecommerce-product-activity— 获取某次推广活动的产品活动明细。mailchimp-pp-cli reporting get-landing-pages— 获取落地页报告。mailchimp-pp-cli reporting get-landing-pages-id— 获取落地页报告。mailchimp-pp-cli reporting get-surveys— 获取调查问卷报告。mailchimp-pp-cli reporting get-surveys-id— 获取调查问卷报告。mailchimp-pp-cli reporting get-surveys-id-questions— 获取调查问卷问题报告。mailchimp-pp-cli reporting get-surveys-id-questions-id— 获取调查问卷问题报告。mailchimp-pp-cli reporting get-surveys-id-questions-id-answers— 获取调查问卷问题的答案。mailchimp-pp-cli reporting get-surveys-id-responses— 获取调查问卷的回复。mailchimp-pp-cli reporting get-surveys-id-responses-id— 获取单条调查问卷回复。
reports — 管理报告
mailchimp-pp-cli reports get— 获取营销活动报告。mailchimp-pp-cli reports get-id— 获取指定已发送营销活动的报告详情。
search-campaigns — 管理搜索营销活动
mailchimp-pp-cli search-campaigns— 根据指定的查询词搜索所有营销活动。
search-members — 管理搜索成员
mailchimp-pp-cli search-members— 搜索列表成员。可以将搜索范围限制为特定列表,也可以搜索所有列表……
sms-campaigns — 管理短信营销活动
mailchimp-pp-cli sms-campaigns delete-id— 从 Mailchimp 账户中移除短信营销活动。mailchimp-pp-cli sms-campaigns get— 获取账户中的所有短信营销活动。mailchimp-pp-cli sms-campaigns get-id— 获取特定短信营销活动的信息。mailchimp-pp-cli sms-campaigns patch-id— 更新特定短信营销活动的部分或全部设置。mailchimp-pp-cli sms-campaigns post— 创建新的短信营销活动。
template-folders — 管理模板文件夹
mailchimp-pp-cli template-folders delete-id— 删除特定模板文件夹,并将文件夹中的所有模板标记为“未归档”。mailchimp-pp-cli template-folders get— 获取用于整理模板的所有文件夹。mailchimp-pp-cli template-folders get-id— 获取用于整理模板的特定文件夹的信息。mailchimp-pp-cli template-folders patch-id— 更新用于整理模板的特定文件夹。mailchimp-pp-cli template-folders post— 创建新的模板文件夹。
templates — 管理模板
mailchimp-pp-cli templates delete-id— 删除特定模板。mailchimp-pp-cli templates get— 获取账户中可用模板的列表。mailchimp-pp-cli templates get-id— 获取特定模板的信息。mailchimp-pp-cli templates patch-id— 更新现有模板的名称、HTML 或folder_id。mailchimp-pp-cli templates post— 为账户创建新模板。仅支持 Classic 模板。
verified-domains — 管理已验证域名
mailchimp-pp-cli verified-domains create— 向账户添加域名。mailchimp-pp-cli verified-domains delete— 从账户中删除已验证域名。mailchimp-pp-cli verified-domains get— 获取账户中的所有发送域名。mailchimp-pp-cli verified-domains get-verifieddomains— 获取账户中单个域名的详细信息。
查找合适的命令
如果你知道要执行什么操作,但不知道该用哪个命令,可以直接询问 CLI:
mailchimp-pp-cli which "<capability in your own words>"
which 会根据自然语言功能查询,从此 CLI 精选的功能索引中匹配最合适的命令。退出码 0 表示至少有一个匹配项;退出码 2 表示没有可信的匹配项——请改用 --help 或缩小查询范围。
操作示例
一次调用即可添加带标签的订阅者
mailchimp-pp-cli subscribe [email protected] --list LIST_ID --tags vip,onboarding --merge FNAME=Alice --merge LNAME=Smith
组合调用 PUT /lists/{id}/members/{md5} 和 POST /lists/{id}/members/{md5}/tags,并自动计算 MD5 哈希值。
通过批量端点从 CSV 导入 5,000 个联系人
mailchimp-pp-cli bulk-subscribe --csv contacts.csv --list LIST_ID --tags newsletter --watch
向 /batches 发送请求,轮询直至完成,在 10 分钟有效的 URL 窗口内解压 tar.gz 中的 JSONL,并返回每行的处理结果。
检查营销活动是否成功
mailchimp-pp-cli digest CAMPAIGN_ID --json --select campaign_id,open_rate,click_rate,top_links,top_products
合并四个报告端点,并允许使用 --select 点分隔路径,将响应缩小到 Agent 实际需要的字段(Mailchimp 的报告每份超过 10 KB)。
找出需要清理的过时细分受众
mailchimp-pp-cli segments audit --list LIST_ID --json
列出空细分受众、90 天内成员数量没有增长的细分受众,以及近期营销活动均未使用的细分受众。
根据官方检查清单决定是否发送营销活动
mailchimp-pp-cli send-checked CAMPAIGN_ID
首先运行 /send-checklist;如果任何项目的 type=error,则以退出码 2 退出并打印失败项目,且不发送营销活动。可在 CI 中使用,以防止有问题的营销活动在无人察觉的情况下发布。
为周一的评审文档并排比较两个营销活动
mailchimp-pp-cli compare CAMPAIGN_A CAMPAIGN_B --md
并排呈现打开率、CTR、收入和退订量的差异,并标出每项指标的赢家。--md 输出可直接粘贴到 Notion 或 Slack。
用于创始人评审的每周营销活动汇总
mailchimp-pp-cli digest --last 5 --md
呈现包含汇总统计数据的多营销活动摘要表。符合 Marcus 周一创始人文档的格式。
身份验证设置
Mailchimp 会将数据中心信息编码在 API 密钥后缀中。密钥 'abc...xyz-us6' 会告知 CLI 将请求路由到 'us6.api.mailchimp.com.'。设置 MAILCHIMP_API_KEY 后,CLI 会在启动时解析后缀。对于 OAuth 令牌(不含嵌入的后缀),请显式设置 MAILCHIMP_DC=us1,或使用 'mailchimp auth dc-lookup' 从元数据端点解析数据中心。
运行 mailchimp-pp-cli doctor 验证设置。
Agent 模式
在任何命令后添加 --agent。它会展开为:--json --compact --no-input --no-color --yes。
-
可通过管道传输 — JSON 输出到 stdout,错误输出到 stderr
-
可筛选 —
--select保留字段子集。点分路径可深入嵌套结构;数组会逐项遍历。对于内容冗长的 API,这是控制上下文大小的关键:mailchimp-pp-cli account-exports get --agent --select id,name,status -
可预览 —
--dry-run显示请求,但不发送 -
适合离线使用 — 有本地 SQLite 存储时,同步/搜索命令可使用该存储
-
非交互式 — 从不显示提示词,每项输入都通过标志指定
-
显式重试 — 仅当已存在的创建结果应视为成功时使用
--idempotent;仅当缺失的删除目标应视为成功时使用--ignore-missing
响应封装
从本地存储或 API 读取的命令会将输出封装在来源信息中:
{
"meta": {"source": "live" | "local", "synced_at": "...", "reason": "..."},
"results": <data>
}
解析 .results 获取数据,并查看 .meta.source 判断数据来自实时 API 还是本地存储。只有当 stdout 连接到终端,且未设置任何机器可读格式标志(--json、--csv、--compact、--quiet、--plain、--select)时,才会将人类可读的 N results (live) 摘要打印到 stderr;管道/Agent 使用者和显式指定格式的运行会在 stdout 输出纯 JSON。
Agent 反馈
当你(或 Agent)发现此 CLI 有问题时,请记录下来:
mailchimp-pp-cli feedback "the --since flag is inclusive but docs say exclusive"
mailchimp-pp-cli feedback --stdin < notes.txt
mailchimp-pp-cli feedback list --json --limit 10
条目会保存在本地 ~/.mailchimp-pp-cli/feedback.jsonl。只有在设置了 MAILCHIMP_FEEDBACK_ENDPOINT,且传入 --send 或设置 MAILCHIMP_FEEDBACK_AUTO_SEND=true 时,条目才会通过 POST 发送。默认仅保存在本地。
写下让你感到意外的地方,而不是提交 bug 报告。简短、具体、一行即可:这部分会不断累积价值。
输出交付
每个命令都接受 --deliver <sink>。除 stdout 外(或替代 stdout),输出还会发送到指定目标,以便 Agent 路由命令结果,而无需手动通过管道传输。支持三种目标:
| 目标 | 效果 |
|---|---|
stdout | 默认;仅写入 stdout |
file:<path> | 将输出原子写入 <path>(临时文件 + 重命名) |
webhook:<url> | 将输出正文 POST 到 URL(使用 --compact 时为 application/json 或 application/x-ndjson) |
遇到未知方案时会拒绝执行,并返回结构化错误,指出支持的方案。Webhook 请求失败时会返回非零状态,并在 stderr 记录 URL 和 HTTP 状态。
命名配置
配置是保存的一组标志值,可在多次调用中重复使用。当定时 Agent 每次运行都以相同配置调用同一命令时,可使用配置——这是 HeyGen 的“Beacon”模式。
mailchimp-pp-cli profile save briefing --json
mailchimp-pp-cli --profile briefing account-exports get
mailchimp-pp-cli profile list --json
mailchimp-pp-cli profile show briefing
mailchimp-pp-cli profile delete briefing --yes
显式标志始终优先于配置值;配置值优先于默认值。agent-context 会在 available_profiles 下列出所有可用配置,以便进行自省的 Agent 在运行时发现它们。
退出代码
| 代码 | 含义 |
|---|---|
| 0 | 成功 |
| 2 | 用法错误(参数错误) |
| 3 | 未找到资源 |
| 4 | 需要身份验证 |
| 5 | API 错误(上游问题) |
| 7 | 请求过于频繁(等待后重试) |
| 10 | 配置错误 |
参数解析
解析 $ARGUMENTS:
- 为空、
help或--help→ 显示mailchimp-pp-cli --help输出 - 以
install开头 → 以mcp结尾 → 安装 MCP;否则 → 参阅上文的先决条件 - 其他任何内容 → 直接使用(作为 CLI 命令执行并附加
--agent)
MCP 服务安装
从此 CLI 发布的公共库条目或预构建版本安装 MCP 二进制文件,然后进行注册:
claude mcp add mailchimp-pp-mcp -- mailchimp-pp-mcp
验证:claude mcp list
直接使用
- 检查是否已安装:
which mailchimp-pp-cli如果未找到,请提供安装选项(参见本技能顶部的“先决条件”)。 - 根据上文的“独特功能”和“命令参考”,将用户查询匹配到最合适的命令。
- 使用
--agent标志执行:mailchimp-pp-cli <command> [subcommand] [args] --agent - 如果存在歧义,请查看子命令帮助:
mailchimp-pp-cli <command> --help。