关于 pp-mercury
pp-mercury 是通过 `mercury-pp-cli` 操作 Mercury 银行与财务资源的技能,适用于自动化账户、付款、发票和交易任务的 Agent 与团队。它支持只读付款规划及本地归档。
主要功能
- 01管理账户与交易
- 02处理发票和收款方
- 03创建不执行付款的计划
- 04将资源归档至本地 SQLite
- 05输出 Agent 命令元数据
适用场景
- 01查看账户和交易数据
- 02准备转账审批计划
- 03离线搜索归档的财务资源
- 04自动处理发票与收款方任务
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ mvanhorn/ printing-press-library --skill pp-mercury安装后在 Claude Code 中输入/pp-mercury确认已加载。
详细介绍
Mercury — Printing Press CLI
前置条件:安装 CLI
此技能通过 mercury-pp-cli 二进制文件运行。**调用此技能中的任何命令之前,必须确认 CLI 已安装。**如果尚未安装,请先安装:
- 通过 Printing Press 安装程序安装。在 macOS/Linux 上,二进制文件默认安装到
$HOME/.local/bin;在 Windows 上,默认安装到%LOCALAPPDATA%\Programs\PrintingPress\bin:npx -y @mvanhorn/printing-press-library install mercury --cli-only - 验证:
mercury-pp-cli --version - 确保报告的安装目录位于将调用此技能的 Agent/运行时的
$PATH中。
如果 npx 安装失败(没有 Node、离线等),请改用 Go 直接安装(需要 Go 1.26.6 或更高版本):
go install github.com/mvanhorn/printing-press-library/library/payments/mercury/cmd/mercury-pp-cli@latest
如果安装后 --version 报告“command not found”,则运行时无法在 $PATH 中找到二进制文件目录。验证成功之前,不要继续执行技能命令。
独特功能
这些功能无法通过此 API 的任何其他工具使用。
-
workflow payment-plan— 在付款或转账写入操作之前,生成只读审批计划,其中包含请求正文、幂等键、试运行命令和执行命令。Agent 可以准备精确的写入命令,而无需转移资金。
mercury-pp-cli workflow payment-plan --kind transfer --source-account-id acct_src --destination-account-id acct_dst --amount 25 --agent -
workflow archive— 将受支持的 Mercury 资源同步到本地 SQLite 存储,以便离线搜索和分析。减少 API 调用,并为 Agent 提供可重复使用的上下文。
mercury-pp-cli workflow archive --agent -
agent-context— 为 Agent 和 MCP 主机输出机器可读的命令元数据。改善自主命令选择,并减少上下文浪费。
mercury-pp-cli agent-context --agent
命令参考
account — 管理银行账户
mercury-pp-cli account <accountId>— 按 ID 获取账户
accounts — 管理银行账户
mercury-pp-cli accounts— 获取账户的分页列表。支持基于游标的分页,可使用 limit、order、start_after 和……
ar — 管理应收账款
mercury-pp-cli ar cancel-invoice— 取消发票。此操作无法撤销。mercury-pp-cli ar create-customer— 为组织创建新客户mercury-pp-cli ar create-invoice— 为组织创建新发票mercury-pp-cli ar delete-customer— 删除客户。此操作无法撤销。mercury-pp-cli ar get-attachment— 获取附件详情,包括下载 URLmercury-pp-cli ar get-customer— 按客户 ID 获取特定客户的详情mercury-pp-cli ar get-invoice— 按发票 ID 获取发票详情mercury-pp-cli ar get-invoice-pdf— 下载指定发票的 PDF 文件。响应包含 Content-Disposition 标头,其值设置为……mercury-pp-cli ar list-customers— 获取客户的分页列表。支持基于游标的分页,可使用 limit、order、start_after 和……mercury-pp-cli ar list-invoice-attachments— 获取特定发票的所有附件列表mercury-pp-cli ar list-invoices— 获取发票的分页列表。支持基于游标的分页,可使用 limit、order、start_after 和……mercury-pp-cli ar update-customer— 更新现有客户mercury-pp-cli ar update-invoice— 更新现有发票
books — 管理组织账簿
mercury-pp-cli books delete-agent-coa-template— 删除指定的科目表模板。mercury-pp-cli books delete-agent-ledger-template— 删除 Agent 所有的科目表模板中的现有分类账。mercury-pp-cli books delete-journal-entries— 批量删除日记账分录mercury-pp-cli books get-agent-coa-template— 获取指定科目表模板的详细信息。mercury-pp-cli books get-agent-coa-templates— 获取所有默认及 Agent 所有的科目表模板的分页列表。这些模板可用于……mercury-pp-cli books get-journal-entries— 列出所有日记账分录mercury-pp-cli books get-journal-entry— 获取日记账分录mercury-pp-cli books post-agent-coa-templates— 创建新的 Agent 所有的科目表模板。这些模板可用于创建新的 Books 实例……mercury-pp-cli books post-agent-ledger-templates— 在 Agent 所有的科目表模板中创建新的分类账。mercury-pp-cli books post-journal-entries— 创建多条日记账分录mercury-pp-cli books put-agent-ledger-template— 更新 Agent 所有的科目表模板中的现有分类账。mercury-pp-cli books put-journal-entries— 批量更新日记账分录
cards — 管理卡片
mercury-pp-cli cards create— 签发新的虚拟卡。mercury-pp-cli cards get— 根据卡片 ID 获取指定卡片的详细信息。mercury-pp-cli cards list— 获取卡片分页列表。mercury-pp-cli cards update— 更新卡片的昵称或消费限额。
categories — 管理支出类别
mercury-pp-cli categories create-category— 为组织创建新的自定义支出类别。mercury-pp-cli categories list— 获取组织所有可用自定义支出类别的分页列表。支持基于游标的……
credit — 管理信贷账户
mercury-pp-cli credit— 获取组织的所有信贷账户列表。
events — 管理 API 事件
mercury-pp-cli events get— 获取所有事件mercury-pp-cli events get-eventid— 根据 ID 获取事件
organization — 组织信息
mercury-pp-cli organization— 获取组织信息,包括 EIN、法定企业名称和 DBA。
recipient — 管理付款收款方
mercury-pp-cli recipient get— 根据 ID 获取指定收款方的详细信息mercury-pp-cli recipient update— 编辑指定收款方的信息
recipients — 管理付款收款方
mercury-pp-cli recipients create— 创建新的收款方以进行付款mercury-pp-cli recipients get— 获取所有收款方的分页列表。使用游标参数(start_after、end_before)进行分页。mercury-pp-cli recipients list-attachments— 获取组织所有收款方的税务表单附件分页列表。使用……
request-send-money — 管理汇款请求
mercury-pp-cli request-send-money get-send-money-approval-request— 根据 ID 获取汇款审批请求mercury-pp-cli request-send-money list-send-money-approval-requests— 获取已验证组织的汇款审批请求分页列表。支持按……筛选
safes — 管理 SAFE(未来股权简单协议)请求
mercury-pp-cli safes get-request— 根据 ID 获取指定的 SAFE 请求。mercury-pp-cli safes get-requests— 获取组织的所有 SAFE(未来股权简单协议)请求。
statements — 下载账户对账单
transaction — 管理交易
mercury-pp-cli transaction get-by-id— 按 ID 检索单笔交易。返回完整的交易详情,包括附件、支票图像以及……mercury-pp-cli transaction update— 更新现有交易的备注和/或类别。使用 null 值清除现有数据。
transactions — 管理交易
mercury-pp-cli transactions— 检索所有账户中交易的分页列表。支持按日期范围进行高级筛选,……
transfer — 管理转账
mercury-pp-cli transfer— 在同一组织内的两个账户之间转账。支持在存款账户之间转账……
treasury — 管理资金账户和交易
mercury-pp-cli treasury— 检索与已通过身份验证的组织关联的所有资金账户的分页列表。使用游标……
users — 管理组织团队成员
mercury-pp-cli users get— 获取所有用户mercury-pp-cli users get-userid— 按 ID 获取用户
webhooks — 管理 Webhook
mercury-pp-cli webhooks create— 注册新的 Webhook 端点以接收事件通知mercury-pp-cli webhooks delete— 删除 Webhook 端点mercury-pp-cli webhooks get— 检索组织所有 Webhook 端点的分页列表。支持按状态筛选。mercury-pp-cli webhooks get-webhookendpointid— 按 ID 检索特定 Webhook 端点的详情mercury-pp-cli webhooks update— 更新现有 Webhook 端点的配置。因连续……而被禁用的 Webhook
查找合适的命令
当你知道想做什么,却不知道该用哪个命令时,可以直接询问 CLI:
mercury-pp-cli which "<capability in your own words>"
which 会根据自然语言能力查询,从此 CLI 精选的功能索引中匹配最合适的命令。退出码 0 表示至少有一个匹配项;退出码 2 表示无法确定匹配项,此时请改用 --help 或使用更具体的查询。
身份验证设置
保存访问令牌:
mercury-pp-cli auth set-token YOUR_TOKEN_HERE
或者将 MERCURY_BEARER_AUTH 设置为环境变量。
运行 mercury-pp-cli doctor 验证设置。
Agent 模式
为任意命令添加 --agent。它会展开为:--json --compact --no-input --no-color --yes。
-
可通过管道传递 — JSON 输出到 stdout,错误输出到 stderr
-
可筛选 —
--select保留部分字段。点分路径可深入嵌套结构;数组会逐元素遍历。对于输出冗长的 API,这是控制上下文大小的关键:mercury-pp-cli account mock-value --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 连接到终端时,才会将易读的 N results (live) 摘要输出到 stderr;通过管道传递的结果或 Agent 消费者则会在 stdout 中获得纯 JSON。
Agent 反馈
当你(或 Agent)发现此 CLI 有问题时,请记录下来:
mercury-pp-cli feedback "the --since flag is inclusive but docs say exclusive"
mercury-pp-cli feedback --stdin < notes.txt
mercury-pp-cli feedback list --json --limit 10
条目会本地保存在 ~/.mercury-pp-cli/feedback.jsonl。除非设置了 MERCURY_FEEDBACK_ENDPOINT,并且传入了 --send 或设置了 MERCURY_FEEDBACK_AUTO_SEND=true,否则绝不会通过 POST 发送。默认行为仅保存到本地。
写下令你感到意外的地方,而不是提交错误报告。简短、具体、一行即可:这才是能够持续积累价值的部分。
输出交付
每条命令都支持 --deliver <sink>。除了(或代替)标准输出,结果还会发送到指定的接收端,因此 Agent 无需手动管道传输即可路由命令结果。支持三种接收端:
| 接收端 | 效果 |
|---|---|
stdout | 默认;仅写入标准输出 |
file:<path> | 将输出原子性地写入 <path>(临时文件 + 重命名) |
webhook:<url> | 将输出正文 POST 到该 URL(使用 application/json,或在使用 --compact 时使用 application/x-ndjson) |
遇到未知协议时会拒绝请求,并通过结构化错误指出支持的协议。Webhook 失败时会返回非零状态码,并在标准错误中记录 URL + HTTP 状态码。
命名配置
配置是保存的一组标志值,可在多次调用中重复使用。当定时运行的 Agent 每次都以相同配置调用同一条命令时,可使用配置——这就是 HeyGen 的“Beacon”模式。
mercury-pp-cli profile save briefing --json
mercury-pp-cli --profile briefing account mock-value
mercury-pp-cli profile list --json
mercury-pp-cli profile show briefing
mercury-pp-cli profile delete briefing --yes
显式标志始终优先于配置值;配置值优先于默认值。agent-context 会在 available_profiles 下列出所有可用配置,以便 Agent 在运行时发现这些配置。
退出代码
| 代码 | 含义 |
|---|---|
| 0 | 成功 |
| 2 | 用法错误(参数错误) |
| 3 | 未找到资源 |
| 4 | 需要身份验证 |
| 5 | API 错误(上游问题) |
| 7 | 触发速率限制(等待后重试) |
| 10 | 配置错误 |
参数解析
解析 $ARGUMENTS:
- 为空、
help或--help→ 显示mercury-pp-cli --help输出 - 以
install开头 → 以mcp结尾 → 安装 MCP;否则 → 参见上文的前提条件 - 其他任何内容 → 直接使用(作为带有
--agent的 CLI 命令执行)
安装 MCP 服务
- 安装 MCP 服务:
go install github.com/mvanhorn/printing-press-library/library/payments/mercury/cmd/mercury-pp-mcp@latest - 注册到 Claude Code:
claude mcp add mercury-pp-mcp -- mercury-pp-mcp - 验证:
claude mcp list
直接使用
- 检查是否已安装:
which mercury-pp-cli如果未找到,则提供安装选项(参见本技能顶部的前提条件)。 - 根据用户查询,从上文的独特功能和命令参考中选择最合适的命令。
- 使用
--agent标志执行:mercury-pp-cli <command> [subcommand] [args] --agent - 如果有歧义,可查看子命令帮助:
mercury-pp-cli <command> --help。