关于 zenmoney-mcp
zenmoney-mcp 让兼容 MCP 的 AI 客户端访问和管理 ZenMoney 个人财务数据。它支持浏览和筛选账户及交易,也可添加、转账和编辑交易。
主要功能
- 01同步 ZenMoney 数据
- 02列出账户、类别和商户
- 03筛选近期交易
- 04添加支出和收入
- 05在账户间转账,支持跨币种
- 06编辑交易并建议类别
适用场景
- 01按日期范围查看支出
- 02添加现金或银行卡交易
- 03在账户之间转账
- 04更正交易类别或详情
MCP 相关
该 MCP 服务向兼容客户端提供 ZenMoney 同步、账户和交易查询、交易创建与编辑、转账及类别建议功能。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
9收录的工具列表 · 更新于 2 周前
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| force_full | boolean | 否 | 强制执行完整同步,而非增量同步 |
详细介绍
zenmoney-mcp
面向 ZenMoney 的 MCP 服务——可通过任何兼容 MCP 的 AI 客户端(Claude Desktop、Cursor 等)访问你的个人财务数据。
功能
| 工具 | 描述 |
|---|---|
sync_data | 与 ZenMoney 同步数据(首先运行) |
list_accounts | 列出钱包、卡片和现金账户 |
list_categories | 按层级列出支出/收入类别 |
list_merchants | 列出已知商家/收款方 |
list_transactions | 列出并筛选近期交易 |
add_expense | 添加一笔支出交易 |
add_income | 添加一笔收入交易 |
add_transfer | 在账户之间转账(包括跨币种转账) |
update_transaction | 修改现有交易——类别、金额、日期、收款方、备注、账户 |
suggest_category | 获取针对某个收款方的自动类别建议 |
前提条件
- Node.js >= 18
- 一个 ZenMoney 账户
- 来自 zerro.app/token 的 API 令牌
快速开始
无需克隆或构建——只需添加到 MCP 客户端配置中:
Claude Desktop
添加到 ~/Library/Application Support/Claude/claude_desktop_config.json(macOS)或 %APPDATA%\Claude\claude_desktop_config.json(Windows):
{
"mcpServers": {
"zenmoney": {
"command": "npx",
"args": ["-y", "zenmoney-mcp"],
"env": {
"ZENMONEY_TOKEN": "your_token_here"
}
}
}
}
Cursor
添加到 .cursor/mcp.json:
{
"mcpServers": {
"zenmoney": {
"command": "npx",
"args": ["-y", "zenmoney-mcp"],
"env": {
"ZENMONEY_TOKEN": "your_token_here"
}
}
}
}
Claude Code
claude mcp add zenmoney -- npx -y zenmoney-mcp
将 your_token_here 替换为你从 zerro.app/token 获取的令牌。
Claude Desktop(MCPB bundle)
如果你希望一键安装而不编辑 JSON,可以构建一个 .mcpb bundle,然后将它拖入 Claude Desktop → 设置 → 扩展:
npm install
npm run pack:mcpb
# → dist/zenmoney-mcp-<version>.mcpb
安装时,Claude Desktop 会提示你输入 ZenMoney 令牌(存储在操作系统钥匙串中)。
从源码安装
git clone https://github.com/artarasov/zenmoney-mcp.git
cd zenmoney-mcp
npm install
npm run build
cp .env.example .env # add your token
使用方法
配置完成后,开始对话并让 AI 客户端:
- 首先同步——“同步我的 ZenMoney 数据”
- 浏览——“显示我的账户”、“列出我的类别”
- 查询——“显示过去 7 天的支出”、“列出 1 月 1 日至 31 日的交易”、“我在杂货上花了多少钱?”
- 添加交易——“今天添加一笔 500 RUB 的咖啡支出”
- 转账——“将 1000 USD 从 Checking 转到 Euro Card,收到 920 EUR”
- 修正错误——“将昨天的 Amazon 支出重新分类为 Household”、“修改那笔 500 RUB 咖啡交易的备注”
list_transactions 会打印每笔交易的 ID,update_transaction 接受一个 ID 或 ID 列表,因此可以在一次调用中批量重新分类。
贡献
欢迎提交 PR!如有错误或功能请求,欢迎提出 issue。
许可证
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。