mcpField
L
ledgerbackup

ledgerbackup

本地服务
github.com/CloudCorpRecords金融数据01 周前更新

关于 ledgerbackup

ledgerbackup 是面向需要只读导出会计数据用户的本地桥接工具,数据来自 Boxkite 账户连接的组织。它转发请求至 Boxkite 托管的 MCP 服务,并跟踪导出的清单和下载链接。

主要功能

  1. 01列出已连接的会计组织
  2. 02启动组织的只读数据导出
  3. 03跟踪导出状态和进度
  4. 04查看清单及文件映射
  5. 05获取已完成 ZIP 的下载链接

适用场景

  1. 01确认可用的会计组织
  2. 02请求备份某个组织的数据
  3. 03检查导出包含的文件
  4. 04下载已完成的导出

MCP 相关

在本地提供上游 Boxkite 工具列表,并将 MCP 工具调用转发到其托管服务;成功结果原样返回。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"cloudcorprecords-ledgerbackup": {
"command": "npx",
"args": [
"-y",
"@reneturcios/ledgerbackup"
]
}
}
}
启动命令npx -y @reneturcios/ledgerbackup

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
npm@reneturcios/ledgerbackup0.1.0
ocighcr.io/cloudcorprecords/ledgerbackup:0.1.0

工具

7

收录的工具列表 · 更新于 1 周前

此工具无需参数。

详细介绍

ledgerbackup

ledgerbackup 是一个小型本地桥接工具,可连接托管的 Boxkite MCP 服务。该服务会备份并导出与你的 Boxkite 账户关联的组织(Xero、Sage、Reckon 或 QuickBooks)的会计数据。它会列出这些组织,启动对某个组织数据的 只读导出,然后持续跟踪该导出的状态、清单和 文件到对象的映射,直到可以获取已完成 ZIP 文件的 签名下载 URL。

该桥接工具本身不存储会计数据。它会在本地提供上游服务的工具列表, 内容与从实时端点捕获的内容完全一致,并将每次工具调用转发到上游, 原样返回结果。

工具

  • list_organisations — 列出已通过身份验证的 Boxkite 账户关联的会计组织。无需参数。
  • start_export — 启动对某个组织数据的只读导出。必填参数:organisationId (来自 list_organisations)。根据上游描述,每个组织的导出费用为 39 美元: 如果款项尚未支付,响应状态为 awaiting_payment,并包含 Stripe 结账 URL;重复调用会返回现有导出, 而不会创建第二个导出或再次收费。一次典型的 导出需要数小时。
  • list_exports — 列出一次性导出,按时间从新到旧排序,可选按 organisationId 筛选。 不会产生副作用:绝不会启动导出或收取费用。
  • get_export_status — 报告某个导出的状态 (queued | running | ready | failed)、进度, 以及何时再次轮询。必填参数:exportId。
  • get_export_manifest — 查看进行中的 导出目前包含的内容,可通过 fileOffset 和 fileLimit 分页。必填参数: exportId。
  • get_export_mapping — 对于进行中的导出, 将每个已发现的文件映射到其代表的会计对象,分页方式相同。必填参数: exportId。
  • get_download_url — 返回已完成导出 ZIP 文件的短期有效签名 URL,在导出的 7 天保留期内有效。必填参数: exportId。

配置

  • BOXKITE_MCP_URL(可选)— 覆盖 上游端点。默认为 https://app.getboxkite.com/mcp。(此覆盖机制是本次重建自行添加并明确标注的内容。)
  • BOXKITE_API_KEY(可选)— 设置后,每个上游请求都会携带 X-API-Key: <key> 标头,其中包含你的 Boxkite API 密钥。未设置时,不会发送密钥标头。 绝不会发送 Authorization 标头。(此转发机制也是本次重建自行添加并明确标注的内容;原始接口是在不带密钥的情况下捕获的。)
转发机制

首次调用工具时,客户端会与上游建立一个可流式传输的 HTTP 会话:先发送 JSON-RPC initialize 请求(protocolVersion 为 2025-03-26, clientInfo name 为 ledgerbackup),然后发送 notifications/initialized 通知,接着发送携带调用方参数 (保持不变)的 tools/call 请求。上游以 Mcp-Session-Id 标头响应 initialize 时,该值会附加到会话的 后续每个请求中;该会话会在进程运行期间重复使用。响应可能以 普通 JSON 或服务器发送事件的形式返回;两种格式都会读取。

成功的上游结果会原样传递,包括上游设置的任何 isError 标志。 失败情况(JSON-RPC 错误、非 2xx 状态、无法读取的响应,或 无法完成的请求)会以 isError 结果返回,其文本以 ledgerbackup error: 开头(此错误呈现方式是本次重建自行添加并明确标注的内容)。

CLI

每个工具也可作为一个子命令使用,并接收一个 JSON 参数字符串:

npx @reneturcios/ledgerbackup list_organisations
npx @reneturcios/ledgerbackup start_export '{"organisationId":"org-123"}'
npx @reneturcios/ledgerbackup get_export_status '{"exportId":"exp-9"}'
npx @reneturcios/ledgerbackup get_download_url '{"exportId":"exp-9"}'
npx @reneturcios/ledgerbackup --version

退出代码:成功时为 0,结果为 isError 时为 1, 用法错误时为 2。

MCP 服务

npx -y @reneturcios/ledgerbackup mcp

MCP 客户端配置:

{
  "mcpServers": {
    "ledgerbackup": {
      "command": "npx",
      "args": ["-y", "@reneturcios/ledgerbackup", "mcp"]
    }
  }
}

Docker

docker run -i ghcr.io/cloudcorprecords/ledgerbackup
docker run --rm ghcr.io/cloudcorprecords/ledgerbackup --version

容器的默认命令是 mcp,因此第一种形式会启动 stdio MCP 服务;其他参数则照常传递给 CLI。

开发

npm install
npm run build
npm test
npm run dev

测试套件完全使用桩接的 JSON-RPC 上游运行,不会发起实时网络调用。

License

MIT — see LICENSE.

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。