mcpField
B
bank-mcp

bank-mcp

ローカル
github.com/pritch56金融データ16 日前に更新

bank-mcp について

bank-mcpは、TrueLayer Open Banking経由で英国の銀行口座やカードのデータを読み取る非公式MCPサーバーです。MCPクライアントから自分の口座情報を確認でき、読み取り専用の権限のみを要求するため送金はできません。

主な機能

  1. 01連携銀行と同意期限の一覧表示
  2. 02口座とカードの取得
  3. 03口座残高の読み取り
  4. 04日付やページを指定した取引検索
  5. 05保留中の取引一覧

活用シーン

  1. 01クライアントで銀行やカードの残高を確認
  2. 02日付で口座取引を絞り込み
  3. 03保留中の取引と同意期限を確認

MCP 対応

このMCPサーバーは、接続先、口座、残高、取引、保留中の取引を扱う5つの読み取り専用ツールを提供します。stdioでMCPクライアントに接続でき、READMEに記載のとおりCloudflare Accessで保護されたリモートWorkerとしても実行できます。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"pritch56-bank": {
"command": "uvx",
"args": [
"bank-mcp"
],
"env": {
"TRUELAYER_CLIENT_ID": "<TRUELAYER_CLIENT_ID>",
"TRUELAYER_CLIENT_SECRET": "<TRUELAYER_CLIENT_SECRET>",
"TRUELAYER_ENV": "<TRUELAYER_ENV>"
}
}
}
}
起動コマンドuvx bank-mcp
設定が必要な環境変数
TRUELAYER_CLIENT_IDTrueLayer Console client id
TRUELAYER_CLIENT_SECRETシークレットTrueLayer Console client secret
TRUELAYER_ENVlive (default) or sandbox

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
pypibank-mcp0.1.2

ツール

5

掲載時のツール一覧 · 2 週間前に更新

このツールにパラメーターはありません。

詳細

bank-mcp

TrueLayer の Open Banking を介して、自分の英国の銀行口座とカードのデータを読み取る、非公式の読み取り専用 MCP サーバーです。口座、カード、残高、取引を読み取れます。送金はできません。要求するのは読み取り専用スコープのみです。

TrueLayer またはいずれかの銀行とは提携していません。実際の口座をリンクする前に、SECURITY.md をご確認ください。

セットアップ

Python 3.11+ と uv(または pip)が必要です。

git clone https://github.com/pritch56/bank-mcp.git
cd bank-mcp
uv sync
uv run bank-mcp-link --help

または、pip install . で任意の環境にパッケージをインストールできます。これにより、bank-mcp(サーバー)と bank-mcp-link(銀行口座のリンク)コマンドが利用できるようになります。

TrueLayer の認証情報を取得する

  1. TrueLayer Console で無料アカウントを作成します。
  2. アプリケーションを作成し、client ID と client secret を控えます。まず sandbox を使い、その後 live に切り替えます。
  3. アプリケーションの設定に、次の リダイレクト URI を追加します:http://localhost:3000/callback (変更する場合は、--port と同じポートを使用してください)。
  4. Data API が次のスコープで有効になっていることを確認します:info accounts cards balance transactions offline_access。
  5. bank-mcp-link を実行するシェルで、認証情報を環境変数に設定します:
export TRUELAYER_CLIENT_ID=your-client-id
export TRUELAYER_CLIENT_SECRET=your-client-secret
export TRUELAYER_ENV=sandbox   # or "live" (the default)

これらの値をコミットしないでください。.env ファイルは git の追跡対象外です。

銀行口座をリンクする

bank-mcp-link を実行すると、ブラウザーで銀行のサインインページが開き、選んだニックネームでトークンが保存されます。複数の銀行をリンクできます。

# Sandbox (no real bank needed)
uv run bank-mcp-link --provider mock --name test --sandbox

# A real bank: use its TrueLayer provider id, for example ob-nationwide
uv run bank-mcp-link --provider ob-nationwide --name nationwide

uv run bank-mcp-link --list               # linked banks and consent expiry
uv run bank-mcp-link --remove nationwide  # forget a bank

ブラウザーが開かない場合は、ターミナルに表示された URL をコピーしてください。リンク処理では、リダイレクトを 5 分間待ちます。

英国の Open Banking の同意期間は 90 日間です。期限が切れると、ツールは Reconnect required for '<bank>' を返します。その銀行について bank-mcp-link を再度実行してください。

トークンは ~/.bank-mcp/tokens.json に保存され、読み取れるのは自分だけです。

MCP クライアントを設定する

/path/to/bank-mcp をチェックアウト先のパスに置き換えてください。サーバーは環境変数から同じ TRUELAYER_* 認証情報を読み取り、各銀行のリンク時に記録されたプロバイダー ID と環境を使用します。

Claude Desktop

claude_desktop_config.json(Settings > Developer > Edit Config)に追加してから、Claude Desktop を再起動します:

{
  "mcpServers": {
    "bank": {
      "command": "uv",
      "args": ["run", "--directory", "/path/to/bank-mcp", "bank-mcp"],
      "env": {
        "TRUELAYER_CLIENT_ID": "your-client-id",
        "TRUELAYER_CLIENT_SECRET": "your-client-secret",
        "TRUELAYER_ENV": "live"
      }
    }
  }
}
Claude Code
claude mcp add bank \
  --env TRUELAYER_CLIENT_ID=your-client-id \
  --env TRUELAYER_CLIENT_SECRET=your-client-secret \
  --env TRUELAYER_ENV=live \
  -- uv run --directory /path/to/bank-mcp bank-mcp

Cloudflare Workers でホストする

stdio ではなくリモートでサーバーを実行するには、worker/README.md を参照してください。Cloudflare Access で保護された、Workers KV にトークンを保存する TypeScript Worker です。

ツール

bank-mcp(stdio)は、5 つの読み取り専用ツールを公開します。list_connections を除く各ツールでは、bank ニックネームを任意で指定できます。省略すると、リンク済みのすべての銀行に問い合わせます。

ツール返される情報
list_connectionsリンク済みの銀行と同意期限
list_accounts口座とカード
get_balance残高(任意で 1 つの account_id を指定)
list_transactionssince/before の日付、limit/offset によるページ分割、include_pending
list_pending保留中の取引

すべての銀行に問い合わせる場合、正常に処理できた銀行の結果は引き続き返され、失敗した銀行は errors に一覧表示されます。

設定

変数意味
TRUELAYER_CLIENT_ID / TRUELAYER_CLIENT_SECRETTrueLayer Console の認証情報(必須)
TRUELAYER_ENVlive(デフォルト)または sandbox
TRUELAYER_PROVIDER_IDプロバイダー ID。銀行ごとに bank-mcp-link が自動設定します
BANK_TOKEN_FILEトークンファイルのパス(デフォルトは ~/.bank-mcp/tokens.json)
BANK_MAX_RANGE_DAYS1 回の取引照会で指定できる日付範囲の最大日数
BANK_TRUELAYER_REFRESH_TOKEN任意のリフレッシュトークンの初期値

開発

CONTRIBUTING.md を参照してください。リリース履歴は CHANGELOG.md にあります。

ライセンス

MIT

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。