简短答案
官方没有 SimpleFIN 的 MCP 服务器。SimpleFIN 发布的是一个小巧、开放的只读银行数据协议,SimpleFIN Bridge 是讲这个协议的托管服务。你拿到的就是一个端点吐出来的原始 JSON。AI agent 需要的其他所有东西(工具定义、分类、托管、认证),得你自己搭,或者从 GitHub 上几个社区项目里借。
BankBridge 就是这一层缺失的东西做成产品。它是一个托管的 MCP 服务器,11 个类型化工具,实时拉取的数据,两种认证方式:bbk_* API key 或 OAuth 2.1。连上银行,把 URL 粘到 agent 配置里,就可以开始提问。
所以这不是工具对工具的对比,而是自建对采购:每年 $15 的数据流加一个周末的活儿,对上一个每家银行每月 $5、已经做好的服务器。两种选择都合理。这篇指南剩下的部分就是把差距画清楚,让你睁着眼睛做选择。
SimpleFIN Bridge 给你什么
SimpleFIN Bridge 每月 $1.50 或每年 $15,一个订阅最多覆盖 25 家机构。你通过它的银行连接层把银行接上,生成一个 setup token,认领一次,拿回一个把凭证嵌进去的 access URL。之后,一个对 /accounts 的 GET 请求就返回你的数据。
数据模型故意做得非常小。账户带名字、货币、余额和余额日期。交易带 id、入账日期、金额、原始描述字符串,有时候还有 pending 标志。这就是整个协议。
就这个价钱,已经很难得了。这是开发者能买到的最便宜的合法只读银行数据源,这就是为什么 Actual Budget 这类预算工具支持它,也是为什么自托管人群爱它。
从原始 JSON 到 agent 工具之间的差距
把 SimpleFIN 包成 MCP,浅层很简单。定义一个工具,叫它 get_accounts,拉 JSON,交给模型。称职的开发者一个下午就能搞定,你能找到的社区包装器,基本也就是这样。
问题出在第二个问题上。SimpleFIN 的描述就是银行怎么发就怎么给:'POS DEBIT SQ *COFFEE 4417',没有分类,没有清洗过的商户名,没有经常性的概念。每个问题都变成'把全部拉下来让模型自己去理'。
我在给哪些订阅付钱,今年有没有哪个涨过价?
用原始的 SimpleFIN 数据,模型得拉 90 天交易,猜哪些描述字符串是同一家商户,推断计费周期,再比较金额。它经常能得出答案,但会烧掉大量上下文,更慢,还会漏掉像描述在半年里换过的订阅这种情况。用类型化工具,那就是一次 get_recurring_charges 调用。
对齐功能需要开发的清单
BankBridge 出厂就带的工具是:list_accounts、get_account、list_transactions、search_transactions、get_spending_summary、get_recurring_charges、get_monthly_cashflow、get_merchant_history、list_categories、list_holdings 和 list_investment_transactions。要在 SimpleFIN 之上对齐,大部分你得自己搭。
交易类工具需要一层分类(协议里没有)、商户归一化(一个订阅可能以好几种描述拼法出现)、以及经常性扣款检测。汇总类工具需要按月和按分类做聚合。搜索需要索引,起码要有一份历史的本地全量镜像。
这 11 个里有 2 个根本搭不出来。协议里没有标准字段表示持仓或投资活动,所以券商相关的问题根本没得聊。
然后是怎么把它端出去。本地 stdio 服务器给 Claude Code、Cursor 或 Zed 用是够的。但像 ChatGPT connectors 和网页版 Claude 这种远程主机,想要一个讲 OAuth 2.1 的托管服务器。这下你就在跑基础设施了,而你要保护的那个东西,是一段像银行凭证一样敏感的 access URL。
新鲜度与配额
SimpleFIN Bridge 大约每 24 小时刷新一次账户数据,预期每天不超过 24 次 API 请求,每次查询最多返回 90 天历史。这些限制正好契合每晚的预算同步,契合 agent 对话就差一些。
Agent 是话多的。一次理财复盘会话没使劲就能打十几次工具调用:
把我这个月的花销和上个月比一下,然后把最大的那个分类按商户拆开。
BankBridge 每次调用都实时拉,服务器上不缓存任何东西,所以今天上午发生的一笔扣款,下一次回答里就有。公平地说 SimpleFIN 一句:如果你的问题是每周做的、回顾性的,每日的新鲜度就够用。但如果你问的是'那笔退款到账了没',那就不够了。
SimpleFIN 更胜一筹的地方
首先是价格,而且差得很清楚。每年 $15 覆盖最多 25 家机构。BankBridge 上四家银行就是每月 $20。如果你唯一的约束是钱,SimpleFIN 完胜,差距不小。
它还赢在归属感上。协议是开放的,数据流进你写的代码,你和 JSON 之间没有别的东西。如果你自托管预算工具栈、跑 homelab,或者就是喜欢自己搭,那对你来说是真金白银的价值,SimpleFIN 尊重这一点。
而且如果你已经在为 SimpleFIN 付钱,把数据喂给 Actual Budget 或类似工具,那再写一个小 MCP 包装器来偶尔回答一下 agent 的问题,除了写代码的时间以外不花什么钱。这挺好。
怎么选
选 SimpleFIN,如果你想要最便宜的数据源、喜欢动手搭、每日数据够新、不需要投资类工具,而且你的 agent 是跑在 Claude Code 或 Cursor 这类本地环境里。
选 BankBridge,如果你更想今天就开始问问题,而不是这个周末搭东西,你用 ChatGPT 或网页版 Claude 这样的远程主机,你想要实时余额,或者你持有希望 agent 也能看到的投资。每家已连接银行每月 $5,随时可取消,还有 29 个主机接入方案,一步一步写好。
值得算一笔账:包装器本身是一个愉快的周末,但分类、经常性扣款检测和商户归一化这几层才是真正的产品,而且永远也做不完。描述会变、银行会给东西换名、边角情况会不断堆积。要是维护这些每个月哪怕只花你一小时,那你在每家银行上省了大约 $3.50,代价是搭进去的晚上。
我上个月在杂货上花了多少,趋势在上涨吗?
用 BankBridge,连上的那一刻就能问。用 SimpleFIN,得等你把让它能问的那个东西搭完。两条路都到得了。只是其中一条,是你的项目。