Tmp.NiUuz7mrUd
v2.0.3通过MCP访问Splitwise的费用和群组数据。当用户询问Splitwise的费用、群组、朋友或余额,或者想要添加、编辑或删除费用时使用。触发短语如“将该费用添加到Splitwise”、“与度假群组分摊此费用”、“确保Meredith在该群组中”、“我欠多少钱”或任何涉及Splitwise共享费用或群组管理的请求。需要安装splitwise-mcp并注册splitwise服务器(见下面的Setup)。
运行时依赖
安装命令
点击复制技能文档
Splitwise-MCP Splitwise — npm:npmjs.com/package/splitwise-mcp Source:github.com/chrischall/splitwise-mcp
选项 A — npx (推荐) 在项目的 .mcp.json 或 ~/.claude/mcp.json 中添加: { "mcpServers": { "splitwise": { "command": "npx", "args": ["-y", "splitwise-mcp"], "env": { "SPLITWISE_API_KEY": "your-api-key-here" } } } }
选项 B — 从源代码安装 git clone https://github.com/chrischall/splitwise-mcp cd splitwise-mcp npm install && npm run build 然后在 .mcp.json 中添加: { "mcpServers": { "splitwise": { "command": "node", "args": ["/path/to/splitwise-mcp/dist/index.js"], "env": { "SPLITWISE_API_KEY": "your-api-key-here" } } } } 或者在项目目录中使用 .env 文件,内容为 SPLITWISE_API_KEY=。
获取 API 密钥 访问 splitwise.com/apps/register 注册一个应用(名称和描述可以任意) 从应用详情页面复制 API 密钥
身份验证 API 密钥身份验证 — 无登录流程或令牌轮换。密钥附加到每个请求的 Authorization: Bearer 中。
工具 用户工具 sw_get_current_user 获取已认证用户的个人资料(id、first_name、last_name、email)
群组工具 sw_list_groups 列出所有群组,包括 id、name 和 members[] sw_get_group(id) 获取单个群组的详细信息,包括成员和余额 sw_create_group(name, group_type?, simplify_by_default?) 创建一个新群组(group_type:apartment、house、trip、other) sw_add_user_to_group(group_id, user_id?) 将用户添加到群组(首选 user_id 或 first_name + last_name + email) sw_remove_user_from_group(group_id, user_id) 将用户从群组中删除
朋友工具 sw_list_friends 列出所有朋友,包括 id、first_name、last_name、email
费用工具 sw_list_expenses(group_id?, friend_id?, dated_after?, dated_before?, limit?, offset?) 列出或搜索费用 sw_get_expense(id) 获取单个费用的详细信息 sw_create_expense(group_id, description, cost, split_equally? | users?) 创建一个费用 —— 平均分配或自定义分配 sw_update_expense(expense_id, ...) 编辑现有的费用(自定义分配需要完整的用户数组) sw_delete_expense(id) 软删除一个费用
实用工具 sw_get_notifications 获取当前用户的最近活动提醒 sw_get_categories 获取费用类别的层次列表(使用 id 作为 category_id) sw_get_currencies 列出支持的货币代码
工作流 将费用添加到群组:sw_list_groups → 查找群组 ID 为 "vacation" 的群组 sw_create_expense(group_id, "Dinner", "80.00", split_equally: true) 将某人添加到群组:sw_list_friends → 查找 Meredith 的 user_id sw_get_group(id) → 检查 Meredith 是否已经在 members[] 中 sw_add_user_to_group(group_id, user_id) → 如果不在,则添加 自定义分配(你支付,60/40 分配):sw_get_current_user → 获取你的 user_id sw_list_friends → 获取其他人的 user_id sw_create_expense(group_id, "Hotel", "200.00", users: [ { user_id: yours, paid_share: "200.00", owed_share: "120.00" }, { user_id: theirs, paid_share: "0.00", owed_share: "80.00" } ]) 搜索和编辑费用:sw_list_expenses(group_id, dated_after: "2026-01-01") → 查找费用 ID sw_update_expense(expense_id, description: "Corrected description", cost: "95.00")
注意 cost 始终是一个小数字符串(例如 "25.00") split_equally: true 和 users 数组是互斥的 对于自定义分配更新,需要完整的用户数组 —— API 替换整个分配 sw_delete_expense 是软删除;恢复需要 Splitwise 网页应用 API 默认为 sw_list_expenses 返回 20 个结果,当 limit 省略时