bank-mcp
🏦 bank-mcp
Предоставьте своему ИИ-ассистенту безопасный доступ в режиме «только чтение» к вашим банковским счетам.
Большинство людей управляют своими финансами, заходя на банковские порталы, скачивая CSV-файлы и создавая электронные таблицы. bank-mcp устраняет эти сложности, позволяя вашему ИИ-ассистенту напрямую запрашивать данные о ваших банковских счетах — балансы, транзакции, детализацию расходов — с помощью естественного общения. Он подключается к реальным банковским API через Model Context Protocol, поэтому любой MCP-совместимый клиент (Claude Code, Claude Desktop и другие) может понимать ваши финансы.
5 провайдеров, 15 000+ учреждений — охват банков США и Европы
Только чтение по дизайну — нет доступа на запись, нет переводов, нет изменений
Работает с любым MCP-клиентом — Claude Code, Claude Desktop, Cursor и другими
Плагинная архитектура — добавьте своего провайдера менее чем за 100 строк кода
Содержание
Поддерживаемые провайдеры
Провайдер | Регион | Учреждения | Метод аутентификации | Сложность настройки |
Европа | 2 000+ | RSA-ключ + сессия | Средняя | |
США | 7 000+ | mTLS-сертификат | Средняя | |
США / Канада / ЕС | 12 000+ | Client ID + secret | Легкая | |
Европа | 3 400+ | OAuth2-токен | Легкая | |
Mock | Демо | — | Нет | Мгновенно |
Банки США
Поддерживаются через Plaid и Teller — охватывают 20 крупнейших банков США и тысячи других:
JPMorgan Chase · Bank of America · Wells Fargo · Citibank · Capital One · U.S. Bank · PNC · Truist · Goldman Sachs · TD Bank · Citizens · Fifth Third · M&T Bank · Huntington · KeyBank · Ally · Regions · BMO · American Express · USAA
Европейские банки
Поддерживаются через Enable Banking и Tink — охватывают основные банки ЕС и Великобритании:
HSBC · BNP Paribas · Deutsche Bank · ING · Crédit Agricole · Santander · Société Générale · UniCredit · Intesa Sanpaolo · Barclays · Lloyds · BBVA · CaixaBank · Commerzbank · Rabobank · ABN AMRO · Swedbank · Handelsbanken · Nordea · PKO Bank Polski
Быстрый старт
1. Запустите мастер настройки
npx @bank-mcp/server initИнтерактивный мастер проведет вас через все этапы — выбор провайдера, учетные данные, авторизация в банке и проверка счета — и все это с удобным терминальным интерфейсом:
┌ bank-mcp — Connect your bank account
│
◇ Choose your banking provider
│ Plaid / Teller / Tink / Enable Banking
│
◇ Environment
│ Sandbox / Development / Production
│
◇ Found 3 account(s) ─────────────────────────╮
│ ****1591 (Bank of America Platinum Card) │
│ ****3588 (Bank of America My Checking) │
│ ****2450 (Bank of America Essential Savings)│
├───────────────────────────────────────────────╯
│
└ Setup complete!2. Добавьте в свой MCP-клиент
В конце настройки мастер спросит, какой MCP-клиент вы используете, и покажет точную конфигурацию:
Claude Code — одна команда:
claude mcp add bank -- npx @bank-mcp/serverCursor — добавьте в
.cursor/mcp.jsonWindsurf — добавьте в
~/.codeium/windsurf/mcp_config.jsonGemini CLI — добавьте в
~/.gemini/settings.jsonCodex CLI — добавьте в
~/.codex/config.json
Используете другой инструмент? См. Настройка клиента для всех поддерживаемых клиентов, включая Claude Desktop, VS Code и Zed.
3. Попробуйте
Спросите своего ИИ-ассистента о ваших финансах на естественном языке:
"What's my checking account balance?"
"Show my spending by category this month"
"Find all Amazon purchases over $50"
"Compare my spending this month vs last month"Демо-режим
У вас еще нет банковских учетных данных? Начните с реалистичных фиктивных данных:
npx @bank-mcp/server --mockЭто запустит сервер с фиктивным провайдером, который генерирует детерминированные примеры счетов и транзакций — идеально подходит для тестирования настройки или разработки на базе bank-mcp перед подключением реальных счетов.
Настройка клиента
bank-mcp работает с любым MCP-совместимым клиентом. Выберите свой инструмент ниже.
Claude Code
Добавьте в .mcp.json в корне вашего проекта (или ~/.claude/.mcp.json для всех проектов):
{
"mcpServers": {
"bank": {
"command": "npx",
"args": ["@bank-mcp/server"]
}
}
}Или добавьте через CLI:
claude mcp add bank -- npx @bank-mcp/serverClaude Desktop
Добавьте в ваш claude_desktop_config.json:
{
"mcpServers": {
"bank": {
"command": "npx",
"args": ["@bank-mcp/server"]
}
}
}Расположение файла конфигурации:
macOS:
~/Library/Application Support/Claude/claude_desktop_config.jsonWindows:
%APPDATA%\Claude\claude_desktop_config.json
Cursor
Добавьте в .cursor/mcp.json в корне вашего проекта (или ~/.cursor/mcp.json глобально):
{
"mcpServers": {
"bank": {
"command": "npx",
"args": ["@bank-mcp/server"]
}
}
}VS Code (Copilot)
Добавьте в .vscode/mcp.json в вашем рабочем пространстве:
{
"servers": {
"bank": {
"type": "stdio",
"command": "npx",
"args": ["@bank-mcp/server"]
}
}
}Windsurf
Добавьте в ~/.codeium/windsurf/mcp_config.json:
{
"mcpServers": {
"bank": {
"command": "npx",
"args": ["@bank-mcp/server"]
}
}
}OpenAI Codex CLI
Добавьте в ~/.codex/config.toml (или .codex/config.toml в вашем проекте):
[mcp_servers.bank]
command = "npx"
args = ["@bank-mcp/server"]Или добавьте через CLI:
codex mcp add bank -- npx @bank-mcp/serverGemini CLI
Добавьте в ~/.gemini/settings.json (или .gemini/settings.json в вашем проекте):
{
"mcpServers": {
"bank": {
"command": "npx",
"args": ["@bank-mcp/server"]
}
}
}Zed
Добавьте в ваш Zed settings.json:
{
"context_servers": {
"bank": {
"command": {
"path": "npx",
"args": ["@bank-mcp/server"]
}
}
}
}Не видите свой инструмент? bank-mcp использует стандартный транспорт MCP stdio. Любой клиент, поддерживающий MCP stdio-серверы, может подключиться, используя
npx @bank-mcp/serverв качестве команды.
Доступные инструменты
Инструмент | Описание | Ключевые параметры |
| Список всех банковских счетов по подключениям |
|
| Получение транзакций с фильтрацией |
|
| Полнотекстовый поиск по описаниям и продавцам |
|
| Текущие и доступные балансы |
|
| Расходы, сгруппированные по продавцу или категории |
|
Скриншоты
Все примеры ниже используют Claude Code с фиктивным провайдером (npx @bank-mcp/server --mock).
Список счетов — «Покажи мои банковские счета»

Проверка баланса — «Какой у меня текущий баланс?»

История транзакций — «Покажи мои транзакции за последние 15 дней»

Поиск транзакций — «Найди все покупки в Starbucks за последние 2 недели»

Расходы по категориям — «Покажи мои расходы по категориям в этом месяце»

Топ продавцов — «На каких продавцов я трачу больше всего?»

Отслеживание подписок — «Покажи мои регулярные подписки»

Сравнение продуктов — «Сравни расходы в Trader Joe's и Whole Foods»

Полная финансовая картина — «Дай мне полную финансовую картину за февраль»

Архитектура
Структура файлов
~/.bank-mcp/
config.json # Connections & credentials (permissions: 600)
keys/ # RSA keys and certificates
src/
providers/
base.ts # Abstract BankProvider class
registry.ts # Provider registration
enable-banking/ # PSD2 via Enable Banking API
teller/ # US banks via mTLS
plaid/ # US/CA/EU via Plaid API
tink/ # EU Open Banking via Tink API
mock/ # Deterministic fake data
tools/ # MCP tool implementations
utils/
cache.ts # In-memory TTL cache
http.ts # Fetch with timeout + retryИнтерфейс провайдера
Каждый провайдер расширяет один и тот же абстрактный класс, что упрощает добавление новых интеграций:
abstract class BankProvider {
abstract listAccounts(config): Promise<BankAccount[]>;
abstract listTransactions(config, accountId, filter?): Promise<Transaction[]>;
abstract getBalance(config, accountId): Promise<Balance[]>;
abstract getConfigSchema(): ConfigField[];
}Руководства по настройке провайдеров
Enable Banking (PSD2)
Что вам нужно:
[ ] Учетная запись Enable Banking с зарегистрированным приложением
[ ] Ваш закрытый RSA-ключ (файл
.pem, загруженный при создании приложения)
npx @bank-mcp/server init
# Select: Enable Banking → enter App ID + key path
# Pick your country → select your bank
# Log in at your bank → paste the redirect URL
# → Session created, accounts verified!Совет: Мастер берет на себя весь процесс OAuth — настройку URI перенаправления, выбор банка и создание сессии. Сессии истекают через 90 дней (регулирование PSD2); перезапустите
initдля обновления.
Teller (Банки США)
Что вам нужно:
[ ] Учетная запись разработчика Teller
[ ] Ваш идентификатор приложения (из панели управления Teller)
npx @bank-mcp/server init
# Select: Teller → enter Application ID
# Pick environment (sandbox for testing)
# → Teller Connect opens in your browser
# → Link your bank, token captured automatically!Совет: Начните с песочницы (sandbox) — сертификаты не нужны, мгновенные тестовые данные. Для разработки/продакшена мастер запросит пути к mTLS-сертификатам. Бесплатный уровень поддерживает до 100 активных подключений.
Plaid (США/Канада/ЕС)
Что вам нужно:
[ ] Учетная запись разработчика Plaid (бесплатная регистрация)
[ ] Ваш Client ID и Secret (из панели управления Plaid)
npx @bank-mcp/server init
# Select: Plaid → enter client ID + secret
# Pick environment (sandbox for testing)
# → Sandbox: token created automatically!
# → Dev/Prod: paste an existing access tokenСовет: Начните с песочницы (sandbox) — мастер автоматически создает тестовый токен, браузер не нужен. Plaid предоставляет самую богатую категоризацию транзакций — 104 подкатегории с оценками достоверности — идеально подходит для анализа расходов с помощью LLM.
Tink (Открытый банкинг ЕС)
Что вам нужно:
[ ] Учетная запись разработчика Tink (бесплатно для тестирования)
[ ] Ваш Client ID и Client Secret (из консоли Tink)
npx @bank-mcp/server init
# Select: Tink → enter Client ID + Secret
# Pick your market (country)
# → Tink Link opens in your browser
# → Connect your bank, paste redirect URLСовет: Tink охватывает более 3400 банков по всей Европе. Для песочницы используйте Demo Bank с тестовыми учетными данными (показаны в мастере). Транзакции включают категории PFM с обогащением данных о продавцах.
Кэширование
Все данные кэшируются в оперативной памяти (без сохранения на диск — кэш удаляется вместе с процессом):
Данные | TTL | Почему |
Список счетов | 1 час | Счета редко меняются; минимизирует вызовы API |
Транзакции | 15 минут | Баланс между новыми транзакциями и свежестью данных |
Балансы | 5 минут | Самые чувствительные ко времени; пользователи ожидают актуальные данные |
Кэш привязан к подключению и счету. Перезапуск сервера очищает все кэши.
Несколько подключений
Настройте столько банковских подключений, сколько вам нужно — даже от разных провайдеров:
{
"connections": [
{ "id": "ing-main", "provider": "enable-banking", "..." : "..." },
{ "id": "chase-checking", "provider": "plaid", "..." : "..." },
{ "id": "revolut", "provider": "tink", "..." : "..." }
]
}Все инструменты принимают необязательный параметр connectionId для выбора конкретного подключения. Если он опущен, опрашиваются все подключения, а результаты объединяются — поэтому «покажи все мои балансы» автоматически работает для всех банков.
Безопасность
Принципы проектирования
bank-mcp обрабатывает чувствительные финансовые учетные данные. Его подход к безопасности основан на минимизации поверхности атаки:
Только чтение по дизайну — интерфейс
BankProviderпредоставляет только методы чтения (listAccounts,listTransactions,getBalance). Нет методов записи — нет переводов, нет изменений счетов, нет инициирования платежей. Это обеспечивается на уровне типов, а не по соглашению.Нет сетевого слушателя — bank-mcp работает как процесс stdio (stdin/stdout), а не как HTTP-сервер.
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/elcukro/bank-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server