Enable Banking MCP 服务器
以下为使用指南(Markdown 格式)
-
项目简介
- 该仓库实现了一个基于 MCP 的服务器,主要职责是向 LLM 客户端提供资源(Resources)、可调用的 Tools、以及可渲染的 Prompt/UI。服务器通过 JSON-RPC 与客户端通信,支持标准化的资源读取、工具执行和 UI 渲染。
-
主要功能点
- MCP 核心功能实现
- list_tools、call_tool、list_resources、read_resource 等 MCP 框架接口的实现与对接。
- 多传输协议支持
- 既支持标准输入输出(stdio)传输,也提供 HTTP 传输(基于 axum/Rust 的实现),以供不同环境的 MCP 客户端接入。
- 资源与工具可视化 UI
- 提供 Balance Dashboard、Transaction Table、Spending Chart、Sessions、Accounts、Payment 等 UI 资源,通过嵌入式 UI 在聊天中渲染。
- 与 Enable Banking API 的集成
- 实现 OAuth 授权、会话创建与持久化、账户/交易查询、以及支付等功能的工具实现。
- 会话与密钥管理
- 本地持久化会话信息,私钥与应用信息通过 .env 文件或环境变量传入,具备安全的本地存储特性(文件权限控制)。
- 安全与错误处理
- 使用 JWT 进行鉴权、对 API 调用进行错误处理并向客户端返回清晰的结果或错误信息。
- MCP 核心功能实现
-
安装步骤
- 安装与编译
- 克隆仓库并执行 cargo build --release 以生成可执行二进制。
- 运行方式
- 以标准输入输出模式(stdio)启动:./target/release/enable-banking-mcp
- 以 HTTP 服务模式启动:运行后可通过 HTTP 端点访问 MCP 服务,支持本地或云端部署。
- 环境变量与凭据配置
- ENABLE_BANKING_ENV:sandbox 或 production
- ENABLE_BANKING_APP_ID:Enable Banking 应用 ID
- ENABLE_BANKING_PRIVATE_KEY:应用私钥,PEM 格式,换行需转义为 \n
- ENABLE_BANKING_REDIRECT_URL(可选):OAuth 回调 URL,默认为 GitHub Pages 回调地址
- 配置与初始化
- 通过 CLI 的 configure/install/register/init 等子命令完成配置、注册、初始化和安装步骤,生成 MCP 服务器的运行配置和本地凭证。
- 生产使用注意
- 将私钥和应用信息以受保护的方式存储(如只限拥有者读取的权限),并在需要时重新加载到环境变量或 .env 文件中。
- 安装与编译
-
服务器配置(给 MCP 客户端的配置信息示例) 说明:该配置用于 MCP 客户端在本地/IDE 中启动并连接到服务器。具体字段含义如下:
- server name:MCP 服务器的名称标识
- command:启动服务器的命令路径
- args:启动命令的参数列表(若无参数可留空)
- env:服务器运行所需的环境变量
{ "mcpServers": { "enable-banking": { "name": "enable-banking", "command": "/usr/local/bin/enable-banking-mcp", "args": [], "env": { "ENABLE_BANKING_ENV": "sandbox", "ENABLE_BANKING_APP_ID": "your-app-id", "ENABLE_BANKING_PRIVATE_KEY": "-----BEGIN PRIVATE KEY-----\nMIIJ...\n-----END PRIVATE KEY-----" } // 注:REDIRECT_URL 也可以通过 ENV 设置,若需要请添加 } // 如需其他 MCP 服务器,可继续添加 } }
-
基本使用方法
- 第一步:准备凭据
- 获取 Enable Banking 的 AppID 与私钥,确保在运行环境中能通过环境变量或 .env 读取到 ENABLE_BANKING_APP_ID、ENABLE_BANKING_PRIVATE_KEY、ENABLE_BANKING_ENV。
- 第二步:启动服务器
- 选择菜单式交互启动或直接通过可执行二进制启动(stdio)或 HTTP 服务启动,确保端口与网络可达。
- 第三步:使用工具与资源
- 调用 start_authorization 等工具发起银行授权流程,按照提示在浏览器完成授权并获取回调代码。
- 使用 create_session 将授权码换取会话,并将会话信息保存到本地,之后可用 list_sessions、list_accounts、get_account_balances、get_account_transactions、spending_summary、create_payment 等工具进行后续操作。
- 第四步:在你的 MCP 客户端中配置并连接
- 使用上述服务器配置,将服务器名称、启动命令和环境变量填写到客户端的 MCP 配置中,确保客户端可以正确启动并与 MCP 服务器进行交互。
- 第一步:准备凭据