银行API服务器

Monobank MCP服务器,为Claude和其他MCP客户端提供账户、交易、汇率和webhook配置的工具。

  • by todesstoss
  • TypeScript
  • 本地部署
  • 更新于
在 GitHub 查看 todesstoss/monobank-mcp

使用说明

单一银行mcp

MCP服务器 单一银行 --将您的帐户、交易、汇率和webhook配置作为Claude和其他MCP客户端的工具公开。

响应是为LLM消费而预先处理的:金额以基本货币单位(不是美分)表示,时间戳是ISO 8601,货币代码是ISO 4217字符串,权限被解码为人类可读的名称。频繁访问的数据在服务器端缓存1小时,因此重复读取永远不会达到Monobank的速率限制。

快速入门--克劳德桌面

添加到您的 claude_desktop_config.json:

{
  "mcpServers": {
    "monobank": {
      "command": "npx",
      "args": ["-y", "@dirgen/monobank-mcp"],
      "env": {
        "MONOBANK_API_TOKEN": "your_token_here"
      }
    }
  }
}

快速入门--克劳德代码

claude mcp add monobank -- npx -y @dirgen/monobank-mcp

然后将您的令牌添加到 .claude/settings.json:

{
  "mcpServers": {
    "monobank": {
      "env": { "MONOBANK_API_TOKEN": "your_token_here" }
    }
  }
}

获取令牌

打开 api.monobank.ua 并使用Monobank应用程序扫描二维码,生成您的个人API代币。令牌永远不会离开您的机器——它作为环境变量直接传递给服务器进程。

可用工具

公共--不需要令牌

工具 说明
monobank-bank-currency 所有Monobank汇率。退货 baseCurrency / quoteCurrency (ISO 4217), date (ISO 8601),以及 rateSell / rateBuy (交易对)或 rateCross (交叉费率)。
monobank-bank-currency-rate 单一货币对的汇率。输入: baseCurrency, quoteCurrency (默认为 UAH).比获取完整列表更快。

个人要求 MONOBANK_API_TOKEN

工具 说明
monobank-personal-client-info 完整客户端配置文件:身份、解码令牌权限、所有帐户和jar,包括FOP/业务帐户(managedClients).账户 id 字段是您传递给语句工具的内容。
monobank-personal-accounts 压缩帐户和jar列表(id、类型、currencyCode、余额、maskedPan)。在提取对账单之前,使用此功能快速发现账户。
monobank-personal-statement 帐户的交易历史记录。输入: accountId (来自客户信息,或 "0" 对于默认UAH帐户), fromDate, toDate (ISO 8601,带时区)。最大范围:每个请求31天。
monobank-get-webhook 返回当前为此令牌配置的webhook URL。空字符串表示未设置webhook。
monobank-set-webhook ⚠️ 破坏性的。 设置webhook URL。立即覆盖现有URL,无需确认——用检查当前值 monobank-get-webhook 第一。
monobank-unset-webhook ⚠️ 破坏性的。 通过将URL设置为空字符串来删除webhook

缓存

服务器缓存响应以保持在Monobank的速率限制内,并避免重复的API调用:

数据 缓存TTL
客户信息(/personal/client-info) 1小时
货币汇率(/bank/currency) 1小时
声明与固定 toDate 1小时
声明无 toDate 未缓存(开放范围→ 陈旧数据风险)

Webhook突变会自动使客户端信息缓存无效,因此下一次读取会反映更新的URL。

速率限制

Monobank个人端点允许 每60秒1次请求。如果达到限制,服务器将返回一条明确的错误消息,告诉您等待60秒。1小时的缓存意味着大多数重复读取都是在本地进行的,而根本不影响API。

开发人员设置

需要Node.js≥24.17.0和pnpm。

git clone https://github.com/todesstoss/monobank-mcp
cd monobank-mcp
pnpm install

创建一个 .env 文件:

MONOBANK_API_TOKEN=your_token_here
pnpm start       # run the MCP server
pnpm inspect     # open MCP Inspector in the browser for interactive testing
pnpm typecheck   # type-check without emitting
pnpm lint        # lint src/

故障排除

无效令牌/401 --在以下位置重新生成您的令牌 api.monobank.ua。如果未使用,令牌将过期。

费率限制/429 --等待60秒。服务器会在发生这种情况时告诉你。一小时内的重复读取将从缓存中提供,不会触发此操作。

报表范围>31天 --将请求拆分为多个呼叫,每个呼叫覆盖≤31天。该工具会告诉你范围是否太宽。

未找到货币对 --使用 monobank-bank-currency 查看所有可用的配对。只有乌克兰格里夫纳货币对和欧元/美元可用。

不 managedClients 在客户信息中 --仅当您在Monobank注册为FOP(独资经营者)时,才会显示此字段。所有令牌都是相同的个人令牌-- managedClients 如果您没有FOP帐户,则只是缺席。

许可证

麻省理工学院