mcpField
C
cashflow

cashflow

本地服务
mcp.zovo.one金融数据21 天前更新

关于 cashflow

cashflow 是一款 MCP 服务,可将银行 CSV 导出文件转为本地账本,适合追踪收支的用户。它能处理多种 CSV 格式、分类交易、按币种汇总,并将银行扣款与费用收据核对。

主要功能

  1. 01导入并解析银行 CSV
  2. 02去重已导入的交易
  3. 03应用交易分类规则
  4. 04按币种汇总收支
  5. 05检测周期性扣款
  6. 06将扣款与费用收据核对

适用场景

  1. 01查看月度收入与支出
  2. 02识别订阅及年度成本
  3. 03查找没有收据的银行扣款
  4. 04导入含多种币种的账单

MCP 相关

向 MCP 客户端提供银行账单导入、交易查询、汇总、核对和周期性扣款检测工具。还提供 `bank://month` 资源和 `monthly_review` 提示词。

配置

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

暂未收录安装方式

我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。

代码仓库
安装包
mcpbbank-statement.mcpb0.22.5

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

mcp-bank-statement

已收录于 官方 MCP Registry(io.github.theluckystrike/bank-statement-csv-categorize-reconcile-ledger)。

银行对账单演示

从银行导出 CSV,说一句“导入这个”,这个月的账目就一目了然。这个 MCP 服务会将银行导出文件转换为本地账本:它能在银行打印的任意前置信息下方找到标题行,判断哪一列是日期、哪一列是金额,以及资金流向,并按文件本身的区域格式读取金额,因此 mBank 的 1 234,56 和美国银行的 1,234.56 都会转换为相同的数字。借记在导入时存为负数,贷记存为正数,仅处理一次,因此后续流程无需猜测。重新导入相同的导出文件不会添加任何内容:每一行都会根据日期、金额、货币和描述生成哈希,并附带出现序号,因此同一天两笔相同金额的咖啡仍会作为两笔交易保留,而再次导入同一个文件则不会新增交易。你的规则会在交易导入时对其分类;汇总会按货币报告收入、支出和净额,绝不会混合不同货币;recurring_detect 会找出订阅项目及其年费;reconcile_expenses 会将银行借记与 mcp-expense-tracker 中的收据进行匹配,让你查看哪些借记没有收据,以及哪些收据没有出现在银行账单中。所有内容都是保存在你自己机器上的普通 JSON 文件;任何内容都不会上传。

在聊天中将银行 CSV 转换为已分类、已对账的月度账目,无需会计 SaaS。

支持的银行配置:Revolut、Wise、mBank、PKO BP、ING、N26,以及仅根据标题行工作的通用读取器。

无需特别处理即可读取的文件格式:UTF-8 和 UTF-16(任意字节序,包括 Windows 版 Excel 保存的格式)、 CRLF、LF 和仅 CR 的换行符、包含逗号、引号和换行符的带引号字段、1.234,56 和 1,234.56、 会计格式的括号 (12.50) 和尾随负号 12.50-(两者均为负数),以及同一文件中的多种货币。值为 - 或空白的单元格会被跳过,并列入 skipped_lines,而不会被读取为零。如果日期列存在歧义(例如 03/04/2026,且 没有任何大于 12 的值),响应中会说明所采用的日期顺序,而不会默默猜测。

60 秒安装

@theluckystrike/mcp-bank-statement 的 npm 发布尚未完成。在此之前,可使用一键安装包 .mcpb,或克隆并构建; 以下两种方式均已验证。

一键安装(.mcpb):从最新版本下载 bank-statement.mcpb,然后在 Claude Desktop 中双击: https://github.com/theluckystrike/mcp-servers/releases/latest

(claude_desktop_config.json):

{
  "mcpServers": {
    "bank-statement": {
      "command": "npx",
      "args": ["-y", "@theluckystrike/mcp-bank-statement"]
    }
  }
}

Claude Code:

claude mcp add bank-statement -- npx -y @theluckystrike/mcp-bank-statement

(.cursor/mcp.json):

{
  "mcpServers": {
    "bank-statement": {
      "command": "npx",
      "args": ["-y", "@theluckystrike/mcp-bank-statement"]
    }
  }
}

上述 npx 方式将在软件包发布后立即可用。在此之前,请使用上面的一键安装包 .mcpb,或使用以下三个命令从源代码构建:

git clone https://github.com/theluckystrike/mcp-servers.git && cd mcp-servers
npm install
npm run build -w packages/mcp-license -w servers/spreadsheet -w servers/bank-statement

然后将客户端的 command 指向 node,并传入一个参数:servers/bank-statement/dist/index.js 的绝对路径。

要以 Pro 模式运行,请在同一配置块中设置 MCP_LICENSE_KEY,或使用你的密钥调用一次 license_activate。

工具

工具功能说明
statement_import将银行 CSV 读入账本。可在任意前置内容下方检测标题行,以及日期、描述、金额(或借方和贷方)和币种列、日期顺序和数字区域格式。会报告检测到的内容、存储的内容、与已有数据重复的行数,以及跳过的每一行及其原因
transactions_list列出指定日期范围内的交易,可按账户、类别或 uncategorized 筛选,并按币种汇总
transactions_search查找描述、交易对手、类别或账户中包含查询词的交易。仅支持子字符串匹配,绝不使用正则表达式
category_rules设置或列出交易分类规则。拒绝空匹配,因为这会将同一类别套用到整个账本。普通匹配为不区分大小写的子字符串;regex: true 仅在模式不会导致指数级回溯时才会编译,并会拒绝 (a+)+,将其作为子字符串处理。设置规则后,会将其重新应用于已存储的交易
transaction_categorize按 ID 为交易设置类别。除非所有 ID 都存在,否则不会进行任何更改
statement_summary汇总指定范围内的收入、支出和净额,可按类别、月份、账户或交易对手分组,并始终按币种分别统计
reconcile_expenses将银行借记与 mcp-expense-tracker 中的收据匹配:币种相同、金额相同且日期在指定范围内。报告匹配项、没有收据的银行记录,以及尚未入账的收据。只读取费用账本,绝不修改
recurring_detect查找订阅和定期扣款:交易对手相同、金额基本不变、周期稳定。报告周期、典型金额、下一个预计日期和年化费用。两笔扣款只能确定一个间隔,因此会暂不提供年化费用(cadence_confirmed: false),直到第三笔扣款确认周期
statement_export将指定范围写入 csv 或 json,并返回路径。采用原子写入,因此失败时不会留下不完整文件。允许替换现有文件,并会报告(overwrote_existing_file)
accounts_list列出已导入的账户,包括银行、币种、交易数量、日期范围和最新余额
license_status显示免费或 Pro 模式
license_activate激活 Pro 密钥(离线验证)

资源 bank://month 返回本月的收入、支出和净额,按类别分组并按币种分别统计。 提示词 monthly_review 会执行整个月末检查:汇总、未分类记录、订阅和对账。

免费版与 Pro 版

免费版Pro 版
账户2 个不限
可读取的历史记录最近 12 个月全部
分类规则5 条不限
导入、列表、搜索、汇总是是
reconcile_expenses是,每次最多 31 天任意日期范围
recurring_detect是,最近 3 个月、最多 5 笔扣款完整历史记录、所有扣款
statement_export否是

无论使用哪个版本,导入时都会存储每一行:如果导入时静默丢弃记录,账本就会与银行记录不一致。免费版的限制针对的是可读取的内容。

获取 Pro:https://mcp.zovo.one/buy/bank-statement,此服务一次性付费 $19,所有服务一次性付费 $39,终身有效。 密钥均离线验证;不会向任何地方发送数据。

搭配使用

  • mcp-expense-tracker,记录收据和里程;reconcile_expenses 会读取该账本,并告诉你哪些银行借记没有对应的收据。
  • mcp-spreadsheet,此服务使用电子表格服务自带的 RFC 4180 读取器和区域数字解析器来解析银行 CSV,因此 1 234,56 在两者中的含义相同。可用它拆分导出的日期范围。
  • mcp-invoice,处理收入:开具发票,然后在按交易对手分组的 statement_summary 中查看款项到账情况。

隐私

所有内容都保留在你的设备上。银行对账单会在本地解析,并存储在 ${XDG_DATA_HOME:-~/.local/share}/mcp-servers/bank-statement/ 下的纯 JSON 文件中。此服务完全不会发起网络请求,无论是用于许可、解析还是其他任何用途。删除该目录即可重置。

由 theluckystrike 构建。支持:[email protected]

将这些文档用作 MCP 服务

任何 MCP 客户端(Claude、Cursor、Windsurf、VS Code)都可以通过 GitMCP 直接读取此代码库的文档,无需安装:

评论

支持 Markdown

第一次接触 MCP?

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

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