上行银行MCP服务器
一个模型上下文协议(MCP)服务器,提供与 上行银行API此服务器允许Claude与您的Up银行数据交互,包括账户、交易和类别。
特性
- 账户管理:列出所有账户,获取账户详细信息和余额
- 交易历史记录:通过灵活的筛选(日期范围、状态、类别、标签)查询交易
- 类别信息:访问Up的支出类别,以获得更好的交易洞察
- 类型安全:使用TypeScript构建,以提高可靠性和开发人员体验
- 安全:使用Up的个人访问令牌进行身份验证
先决条件
- Node.js 18或更高版本
- Up银行账户
- 向上个人访问令牌
安装
- 克隆或下载此存储库:
cd up-mcp-server- 安装依赖项:
npm install- 构建服务器:
npm run build获取您的Up API代币
- 打开手机上的Up应用程序
- 向右滑动并选择“数据共享”
- 点击“个人访问令牌”
- 选择“生成令牌”
- 选择您希望令牌持续多长时间
- 按照提示安全地复制您的令牌
重要:确保你的代币安全!永远不要分享它或将其提交给版本控制。
配置
Claude桌面配置
将此添加到您的Claude Desktop配置文件中:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json 视窗: %APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"up-banking": {
"command": "node",
"args": ["/absolute/path/to/up-mcp-server/build/index.js"],
"env": {
"UP_API_TOKEN": "your_up_api_token_here"
}
}
}
}替换 /absolute/path/to/up-mcp-server 使用此目录的实际路径,并替换 your_up_api_token_here 使用您的Up个人访问令牌。
替代方案:使用npx
您也可以直接使用npx运行服务器:
{
"mcpServers": {
"up-banking": {
"command": "npx",
"args": ["-y", "/absolute/path/to/up-mcp-server"],
"env": {
"UP_API_TOKEN": "your_up_api_token_here"
}
}
}
}可用工具
up_ping
测试API连接并验证身份验证是否有效。
up_list_accounts
列出所有帐户,并按帐户类型或所有权进行可选筛选。
参数:
accountType(可选):按“保存”、“交易”或“HOME_LOAN”筛选ownershipType(可选):按“个人”或“联合”筛选
up_get_account
获取特定帐户的详细信息。
参数:
accountId(必填):帐户ID
up_list_transactions
列出具有全面过滤选项的交易。
参数:
accountId(可选):筛选到特定帐户status(可选):“搁置”(待定)或“已解决”since(可选):RFC 3339格式的开始日期(例如,“2024-01-01T00:00:00+10:00”)until(可选):RFC 3339格式的结束日期category(可选):类别ID(例如,“餐馆和咖啡馆”)tag(可选):交易标签pageSize(可选):结果数量(1-100)
up_get_transaction
获取特定交易的详细信息。
参数:
transactionId(必填):交易ID
up_list_categories
在Up中列出所有支出类别。
参数:
parentId(可选):筛选到特定父类别的子类别
up_get_category
获取特定类别的详细信息。
参数:
categoryId(必填):类别ID(例如,“餐馆和咖啡馆”)
用法示例
配置后,您可以向Claude提出以下问题:
- “我的活期账户余额是多少?”
- “显示上个月的所有交易记录”
- “这周我在餐馆花了多少钱?”
- “列出我的所有储蓄账户”
- “我的支出账户中有哪些待处理的交易?”
- “显示所有标记为“假期”的交易”
发展
观看模式
对于自动重新编译的开发:
npm run dev测试连接
配置后,重新启动Claude Desktop并尝试:
Can you ping the Up API to verify the connection?故障排除
“需要UP_API_TOKEN环境变量”
请确保已将Up API令牌添加到 env Claude桌面配置的一部分。
“Up API错误:401”
您的API令牌无效或已过期。在Up应用程序中生成新令牌。
服务器未出现在Claude中
- 检查以下路径
build/index.js绝对正确 - 验证配置文件中的JSON语法是否有效
- 完全重新启动克劳德桌面
- 检查克劳德的日志以获取错误消息
安全说明
- 您的Up API代币允许对您的银行数据进行完全读取访问
- 永远不要将令牌提交给版本控制
- 使用环境变量或安全配置管理
- 令牌访问可以在Up应用程序中随时撤销
- 考虑为您的代币设置到期日期
API费率限制
向上API有费率限制。如果超过限制,服务器将返回错误消息。使用分页和筛选来最小化API调用。
贡献
这是一个涵盖主要读取操作的基本实现。潜在的增强功能:
- 为实时交易通知添加webhook支持
- 实施交易分类更新
- 添加附件/收据支持
- 支持基于光标浏览的分页
许可证
麻省理工学院
