gnucash-mcp:让智能体读写本地 GnuCash 账本
让智能体直接读写本地 GnuCash 复式记账账本:录流水、开发票、对账、看预算,数据不离开本机。每次写入都留审计日志并自动备份,适合个人理财和小生意。
项目与安装文档
查看项目https://github.com/ninetails-io/gnucash-mcp
用 GnuCash 记账的人都知道,最累的不是看报表,是把一张张银行流水敲进去,再按月对账。gnucash-mcp 让智能体直接读写你本地的 .gnucash 文件:念一句“昨天在超市花了 230 元”,它就按 GnuCash 的复式记账规则记进对应科目。账本不上传任何服务器。项目截至 2026-10-06 约 80 star,知道的人还不多。
能做什么
- 一次调用看全局:智能体打开账本时先拿到一份概览,包括净资产走势、每月收支、现金能撑多少天、预算进度、逾期发票和未对账的账户。
- 按角色加载工具:
--modules选core(科目、交易、余额、对账、备份,始终加载)、bookkeeper(报表、预算、定期交易)、investor(持仓成本和价格)、freelancer或business(客户、发票、销项税、供应商),全开共 80 多个工具。 - 多币种和发票:支持外币发票,按汇率变动记已实现汇兑损益。
- 安全设计:每次写入都记入账本旁的审计日志,每个会话第一次写入前自动备份;已对账的分录默认拒绝修改,“作废”走 GnuCash 正规的 void 流程,不是直接删除。
适合谁
- 用 GnuCash 管个人财务的人,想口述记账、让智能体帮忙对账和做预算。
- 用 GnuCash 记账的自由职业者和小店主,想在对话里开发票、追应收款。
- 在意数据只留在本机、不想用云端记账服务的人。
接入方式
需要 GnuCash 账本为 SQLite 格式(XML 格式先在 GnuCash 里“另存为”转换一次)。Claude Desktop 用户可下载 Release 里的 gnucash-mcp.mcpb 双击安装;其他客户端先装好命令:
git clone https://github.com/ninetails-io/gnucash-mcp.git
uv tool install -e ./gnucash-mcp
再在客户端配置里把 command 指向 ~/.local/bin/gnucash-mcp 的绝对路径,参数 --modules=all,环境变量 GNUCASH_BOOK_PATH 填账本路径。
编辑点评
财务类 MCP 大多连云端服务,gnucash-mcp 是少见的本地记账方案,而且看得出作者懂会计:对账保护、作废不删除、写前备份,这些都是一般 CRUD 包装器不会想到的。仓库还附了三本虚构的样例账本(美国自由职业者、深圳跨境电商、德国 SKR03 科目),可以先拿样例试,不碰真账。要注意:这是个人维护的项目;GnuCash 开着同一本账时会有文件锁冲突,用前先关掉 GnuCash;它会真实改账,备份机制再完善,也建议先在副本上试。许可证为 MIT。