关于 deposits
deposits 是用于管理客户保证金和预付款的 MCP 服务,涵盖收款登记、发票抵扣和退款。它与 mcp-invoice 配合使用,数据保存在本机。
主要功能
- 01记录和列出客户押金
- 02将押金记为发票付款
- 03退还持有款项
- 04按客户和币种查看余额
- 05生成文本和 PDF 对账单
适用场景
- 01收到保证金时登记款项
- 02将预付款抵扣客户发票
- 03开票前核对持有金额
- 04准备邮件用押金对账单
MCP 相关
向 MCP 客户端提供押金管理工具、`deposits://held` 资源和 `settle_deposits` 提示词。它从 `mcp-invoice` 读取客户和发票,并将已抵扣的押金记为发票付款。
配置
远程服务无需本地安装。选择你使用的客户端,复制配置或使用一键安装。
https://mcp.zovo.one/mcp/depositsclaude mcp add --transport http theluckystrike-deposits https://mcp.zovo.one/mcp/deposits{"mcpServers":{"theluckystrike-deposits":{"type":"http","url":"https://mcp.zovo.one/mcp/deposits"}}}在 Cursor 中打开{"servers":{"theluckystrike-deposits":{"type":"http","url":"https://mcp.zovo.one/mcp/deposits"}}}在 VS Code 中打开{"mcpServers":{"theluckystrike-deposits":{"type":"http","url":"https://mcp.zovo.one/mcp/deposits"}}}{"mcpServers":{"theluckystrike-deposits":{"serverUrl":"https://mcp.zovo.one/mcp/deposits"}}}命令在终端中运行;JSON 粘贴到对应客户端的 MCP 配置后重启。需要授权的服务会在首次连接时提示登录。
https://mcp.zovo.one/mcp/deposits需要授权工具
11| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| kind | enum | 是 | security:用于抵扣损坏或未付款的保证金。retainer:用于尚未开票的工作的预付款。security | retainer |
| notes | string | 否 | 记录中保留并打印在对账单上的自由文本 |
| client | string | 是 | 客户名称或客户 ID。若发票服务端已识别该名称,则会将其地址、电子邮件和 VAT ID 添加到保证金记录中。 |
| currency | string | 否 | 默认为您的企业默认币种 |
| reference | string | 否 | 款项到账时附带的银行参考信息、转账备注或支票号码 |
| amount_minor | integer | 是 | 收到的金额,以最小货币单位计:50000 = 500.00 EUR,50000 = JPY 50000。不得使用小数。 |
| client_email | string | 否 | 仅在用户提供时使用;否则使用已存储的客户电子邮件 |
| client_vat_id | string | 否 | 客户 VAT/税务登记 ID |
| received_date | string | 否 | YYYY-MM-DD,款项到账日期。默认为今天 |
| client_address | string | 否 | 对账单客户信息栏使用的邮寄地址,可包含换行符 |
详细介绍
mcp-deposits
按客户分别持有的保证金和预付款,使用与发票相同的引擎。
保证金是存放在你账户上的客户资金。收到时必须记录,开具账单时抵扣发票,不需要时退还,并且在此期间随时都要能说明:你持有客户多少资金、使用什么币种、从何时开始持有。本服务通过 mcp-invoice 服务已有的发票和客户信息完成这四项操作。将保证金抵扣到发票时,付款会记录在该发票上,因此 invoice_list 和 overdue_report 不会再追讨你已经收到的款项。所有数据都保留在你的计算机上。
资金、币种和存储代码基于 @theluckystrike/mcp-invoice/lib 构建,A4 页面基于 @theluckystrike/mcp-billing-docs/lib 构建,因此保证金对账单的外观与旁边的贷项通知单和发票一致,金额精确到最小货币单位。
已加入 MCP 官方注册表(io.github.theluckystrike/deposits)。

@theluckystrike/mcp-deposits 的 npm 发布尚未完成,因此目前运行 npx -y @theluckystrike/mcp-deposits 会返回 404。在此之前,可使用 .mcpb 一键安装包,或克隆并构建。
安装
Claude Desktop(claude_desktop_config.json):
{
"mcpServers": {
"deposits": {
"command": "npx",
"args": ["-y", "@theluckystrike/mcp-deposits"]
}
}
}
Claude Code:
claude mcp add deposits -- npx -y @theluckystrike/mcp-deposits
Cursor(.cursor/mcp.json):
{
"mcpServers": {
"deposits": {
"command": "npx",
"args": ["-y", "@theluckystrike/mcp-deposits"]
}
}
}
同时运行 mcp-invoice:本服务会读取该服务中的发票和客户信息,将抵扣保证金产生的付款写入发票;两个服务也会从同一份企业资料中读取名称、地址、VAT id 和默认币种。
工具
| 工具 | 功能 |
|---|---|
deposit_record | 记录收到的保证金或预付款:以最小货币单位计的金额、币种、日期和参考信息 |
deposit_list | 列出所有保证金及其已收、已抵扣、已退款和持有金额。可按客户、状态、类型或日期筛选 |
deposit_apply | 将部分或全部持有的保证金抵扣到发票上,作为该发票的一笔付款 |
deposit_refund | 退还部分或全部持有的保证金,并记录日期和方式 |
deposit_delete | 删除误录的保证金记录,但前提是从未抵扣或退款 |
deposit_balance | 按客户和币种查看持有金额:已收、已抵扣、已退款和持有金额 |
deposit_statement_text | 可粘贴到电子邮件中的纯文本对账单 |
deposit_statement_pdf | 标题为 DEPOSIT STATEMENT(Pro)的 A4 PDF |
deposits_report | 按币种统计持有金额、持有时间最长的保证金,以及未抵扣达到 N 天的金额(Pro) |
license_status、license_activate | 查看免费版或 Pro 版状态,以及如何升级 |
一个资源 deposits://held,以及一个提示词 settle_deposits。
免费版与 Pro 版
| 免费版 | Pro 版 | |
|---|---|---|
| 每个日历月记录的押金数 | 5 | 不限 |
| 用于发票、退款、余额、列表 | 是,不限 | 是 |
对从未发生资金流动的押金使用 deposit_delete | 是,不限 | 是 |
deposit_statement_text | 是,不限 | 是 |
deposit_statement_pdf | 否 | 是,另含您的徽标且不带页脚署名 |
deposits_report | 否 | 是 |
免费版的上限只针对新记录的押金。已持有的资金在任何套餐中都可以随时用于支付、退款和入账:如果限制导致客户的押金无法使用,受限的就是客户的钱,而不是您的钱。
上限按当月收到日期的押金记录数计算,因此 deposit_delete 会立即返还名额:重复录入或金额有误的押金,除了占用 ID 外不花费任何成本。deposit_record 也会拒绝与已有记录在客户、金额、币种、类型、收到日期和参考信息上都相符的押金,并返回该记录的 ID,且不会存储任何内容,因此同一笔资金绝不会被重复持有,重试也不会占用免费名额。
获取 Pro 版:https://mcp.zovo.one/buy/deposits(此服务一次性收费 $19,套装收费 $39)。
一个实测案例
**发票服务自身的收款工具会将已付金额设为指定数值,因此通过它处理押金会抹掉之前的付款。**根据 servers/invoice/dist/index.js 的实测,在一张金额为 EUR 1,000.00 的发票上,先使用 invoice_mark_paid {amount: 200} 记录银行转账,再使用 invoice_mark_paid {amount: 300} 记录押金,结果 paid_minor 变成 30000,回复显示“应付余额 EUR 700.00”。实际到账的 EUR 200.00 从记录中消失了,客户也会因此被催款。
deposit_apply 会在同一条记录上写入相同的三个字段:paid_minor、paid_date、status,但它会累加:相同的两笔付款会使 paid_minor 达到 50000,应付余额为 EUR 500.00。此行为已在 test/unit.test.mjs 中通过断言验证:“第二次应用会累加到 paid_minor,而不是替换它”。
一般而言:两个服务共享的存储,只有在你了解负责该存储的服务如何写入数据时,才可以安全写入。字段名称一致并不代表遵循了约定;对这些字段的运算方式才是关键。
隐私
所有数据都保留在本地:${XDG_DATA_HOME:-~/.local/share}/mcp-servers/deposits/。无需账户、API 密钥,也不会进行网络调用。许可证密钥会离线验证。
由 theluckystrike 构建。支持邮箱:[email protected]
将这些文档用作 MCP 服务
任何 MCP 客户端(Claude、Cursor、Windsurf、VS Code)都可以通过 GitMCP 直接读取此仓库的文档,无需安装:
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。