内容
# 我的个人财务管理MCP服务器
一款将Claude转变为个人财务管理器的MCP服务器。跟踪支出、管理预算、同步Splitwise — 所有操作都通过对话完成。
无需应用程序,无需表单。只需对话。
---
### 问题
我已经跟踪了2年的财务记录。使用笔记本和应用程序,每笔交易都被记录两次。虽然有效,但非常耗时 — 而且该系统无法回答一个真正重要的问题:
> *"我能负担得起吗?"*
要回答这个问题,我不得不导出数据、建立电子表格、计算消费率……基本上要为自己的生活做一个MBA作业。我试过的所有财务应用程序(我试过很多)都有同样的缺陷:它们非常适合记录,但不适合思考。
### 解决方案
该MCP服务器将Claude连接到Supabase数据库。现在,我不再通过表单输入,而是直接对话:
```
我: 花了340元坐uber,用的HDFC卡
Claude: 已记录HDFC信用卡在交通类别下的340元支出。
本月交通支出:2180元 / 3000元预算(73%)。
我: 把2400元的晚餐费用在Bombay Canteen分给Rohit、Sneha和我。我已支付。
Claude: 已添加到Splitwise — Rohit欠800元,Sneha欠800元。
在HDFC卡上记录了800元的食品支出。
我: 我能买得起MacBook Pro吗?
Claude: 当前储蓄:18万元。每月消费:3.8万元。
那台MacBook(15万元)会让你剩下大约5周的资金。
我建议再等2个月。
```
那句回答很伤人。但这是我得到的对我最有用的财务建议 — 来自一个基于我自己数据的系统。
---
## 功能
**交易记录** — 只需说出你花费了什么,就可以添加收入/支出。支持多个账户(银行、信用卡、现金、钱包)、类别、标签和支付方式。编辑、删除、搜索历史记录。
**预算** — 为每个类别设置每月限额。Claude会在你添加支出时告诉你当前的预算状况,而不是等到月底。
**账户余额** — 根据所有交易自动计算。账户间转账(从银行账户还信用卡、存入储蓄账户)。
**消费分析** — 按类别提供每月/每年总结。比较不同时间段(“这个月和上个月比怎么样?”)。发现手动很难发现的模式。
**Splitwise集成** — 创建共享支出、查看余额、查看谁欠你钱 — 无需打开Splitwise。在对话中直接分割账单。
**定期交易** — 跟踪即将到来的账单和订阅。知道账单到期前需要做什么。
---
## 设置
大约需要15分钟。
### 前置条件
- **Node.js 18+**
- **Claude Pro** (或任何支持MCP的Claude计划)
- **Supabase账户** — [免费层](https://supabase.com) 足够使用
- **Splitwise API密钥** — 可选,仅在需要Splitwise功能时需要([在此注册应用](https://secure.splitwise.com/apps))
### 1. 克隆和配置
```bash
git clone https://github.com/kartikpathe-kp/my-money-mcp.git
cd my-money-mcp
cp .env.example .env
```
打开 `.env` 并添加您的Supabase凭证(在您的Supabase项目 → 设置 → API中找到)。
### 2. 设置数据库
打开 [Supabase SQL编辑器](https://supabase.com/dashboard) 并运行 `schema.sql` 文件的内容。这将创建所有表、视图、索引和一些默认的支出/收入类别。
### 3. 安装和运行
```bash
npm install
npm run build
npm start
```
服务器启动在 `http://localhost:3001`。访问 `/health` 验证服务器是否运行。
### 4. 连接到Claude
在Claude MCP配置中添加以下内容:
```json
{
"mcpServers": {
"my-money": {
"url": "http://localhost:3001/mcp"
}
}
}
```
开始对话。试试:*"在HDFC卡上添加500元晚餐支出"*
如果Claude用确认和预算状态回应,则表示您已成功运行。
---
## 部署到Railway(可选)
如果您想从任何地方(而不仅仅是本地主机)访问它:
1. 将您的fork推送到GitHub
2. 在[Railway](https://railway.app)上创建一个新项目 → 从GitHub部署
3. 在Railway的仪表板中添加您的环境变量(`SUPABASE_URL`、`SUPABASE_KEY`,以及可选的Splitwise密钥)
4. 记录您的公共URL并更新Claude的MCP配置:
```json
{
"mcpServers": {
"my-money": {
"url": "https://your-app.up.railway.app/mcp"
}
}
}
```
Railway的免费层可以轻松处理此任务。
---
## 隐私
您的财务数据存储在您自己的Supabase数据库中。MCP服务器只是Claude和您的数据之间的桥梁 — 它本身不存储任何数据。在您自己的基础设施上部署它,别人就无法访问。包括我、Anthropic、Railway在内。
---
## 技术栈
TypeScript、Express、Supabase、Splitwise SDK、MCP协议
## 许可证
MIT — 您可以随意使用。
---
*由 [Kartik Pathe](https://linkedin.com/in/kartik-pathe) 构建。我每天都在使用它,这是我2年来没有放弃的第一个财务跟踪系统。*