bank-mcp
🏦 bank-mcp
Geben Sie Ihrem KI-Assistenten sicheren, schreibgeschützten Zugriff auf Ihre Bankkonten.
Die meisten Menschen verwalten ihre Finanzen, indem sie sich bei Bankportalen anmelden, CSV-Dateien herunterladen und Tabellenkalkulationen erstellen. bank-mcp beseitigt diese Reibungsverluste, indem es Ihrem KI-Assistenten ermöglicht, Ihre Bankkonten direkt abzufragen – Kontostände, Transaktionen, Ausgabenaufschlüsselungen – durch natürliche Konversation. Es verbindet sich über das Model Context Protocol mit echten Bank-APIs, sodass jeder MCP-kompatible Client (Claude Code, Claude Desktop und andere) Ihre Finanzen verstehen kann.
5 Anbieter, über 15.000 Institute — US-amerikanische und europäische Banken abgedeckt
Von Natur aus schreibgeschützt — kein Schreibzugriff, keine Überweisungen, keine Änderungen
Funktioniert mit jedem MCP-Client — Claude Code, Claude Desktop, Cursor und mehr
Erweiterbare Architektur — fügen Sie Ihren eigenen Anbieter in unter 100 Zeilen hinzu
Inhaltsverzeichnis
Unterstützte Anbieter
Anbieter | Region | Institute | Authentifizierungsmethode | Einrichtungsaufwand |
Europa | 2.000+ | RSA-Schlüssel + Sitzung | Mittel | |
USA | 7.000+ | mTLS-Zertifikat | Mittel | |
USA / CA / EU | 12.000+ | Client-ID + Secret | Einfach | |
Europa | 3.400+ | OAuth2-Token | Einfach | |
Mock | Demo | — | Keine | Sofort |
US-Banken
Unterstützt durch Plaid und Teller – deckt die Top 20 US-Institute und Tausende weitere ab:
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
Europäische Banken
Unterstützt durch Enable Banking und Tink – deckt große Banken in der EU und im Vereinigten Königreich ab:
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
Schnellstart
1. Führen Sie den Einrichtungsassistenten aus
npx @bank-mcp/server initDer interaktive Assistent führt Sie durch alles – Anbieterauswahl, Anmeldedaten, Bankautorisierung und Kontoverifizierung – alles mit einer ausgefeilten Terminal-Benutzeroberfläche:
┌ 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. Zu Ihrem MCP-Client hinzufügen
Am Ende der Einrichtung fragt der Assistent, welchen MCP-Client Sie verwenden, und zeigt die genaue Konfiguration an:
Claude Code — ein Befehl:
claude mcp add bank -- npx @bank-mcp/serverCursor — hinzufügen zu
.cursor/mcp.jsonWindsurf — hinzufügen zu
~/.codeium/windsurf/mcp_config.jsonGemini CLI — hinzufügen zu
~/.gemini/settings.jsonCodex CLI — hinzufügen zu
~/.codex/config.json
Verwenden Sie ein anderes Tool? Siehe Client-Einrichtung für alle unterstützten Clients, einschließlich Claude Desktop, VS Code und Zed.
3. Ausprobieren
Fragen Sie Ihren KI-Assistenten in natürlicher Sprache nach Ihren Finanzen:
"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"Demo-Modus
Sie haben noch keine Bankdaten? Starten Sie mit realistischen Fake-Daten:
npx @bank-mcp/server --mockDies startet mit einem Mock-Anbieter, der deterministische Beispielkonten und Transaktionen generiert – perfekt zum Testen Ihrer Einrichtung oder zum Aufbau auf bank-mcp, bevor Sie echte Konten verbinden.
Client-Einrichtung
bank-mcp funktioniert mit jedem MCP-kompatiblen Client. Wählen Sie Ihr Tool unten aus.
Claude Code
Hinzufügen zu .mcp.json in Ihrem Projektstammverzeichnis (oder ~/.claude/.mcp.json für alle Projekte):
{
"mcpServers": {
"bank": {
"command": "npx",
"args": ["@bank-mcp/server"]
}
}
}Oder über die CLI hinzufügen:
claude mcp add bank -- npx @bank-mcp/serverClaude Desktop
Hinzufügen zu Ihrer claude_desktop_config.json:
{
"mcpServers": {
"bank": {
"command": "npx",
"args": ["@bank-mcp/server"]
}
}
}Speicherort der Konfigurationsdatei:
macOS:
~/Library/Application Support/Claude/claude_desktop_config.jsonWindows:
%APPDATA%\Claude\claude_desktop_config.json
Cursor
Hinzufügen zu .cursor/mcp.json in Ihrem Projektstammverzeichnis (oder global unter ~/.cursor/mcp.json):
{
"mcpServers": {
"bank": {
"command": "npx",
"args": ["@bank-mcp/server"]
}
}
}VS Code (Copilot)
Hinzufügen zu .vscode/mcp.json in Ihrem Arbeitsbereich:
{
"servers": {
"bank": {
"type": "stdio",
"command": "npx",
"args": ["@bank-mcp/server"]
}
}
}Windsurf
Hinzufügen zu ~/.codeium/windsurf/mcp_config.json:
{
"mcpServers": {
"bank": {
"command": "npx",
"args": ["@bank-mcp/server"]
}
}
}OpenAI Codex CLI
Hinzufügen zu ~/.codex/config.toml (oder .codex/config.toml in Ihrem Projekt):
[mcp_servers.bank]
command = "npx"
args = ["@bank-mcp/server"]Oder über die CLI hinzufügen:
codex mcp add bank -- npx @bank-mcp/serverGemini CLI
Hinzufügen zu ~/.gemini/settings.json (oder .gemini/settings.json in Ihrem Projekt):
{
"mcpServers": {
"bank": {
"command": "npx",
"args": ["@bank-mcp/server"]
}
}
}Zed
Hinzufügen zu Ihrer Zed settings.json:
{
"context_servers": {
"bank": {
"command": {
"path": "npx",
"args": ["@bank-mcp/server"]
}
}
}
}Sehen Sie Ihr Tool nicht? bank-mcp verwendet den Standard-MCP-stdio-Transport. Jeder Client, der MCP-stdio-Server unterstützt, kann sich mit
npx @bank-mcp/serverals Befehl verbinden.
Verfügbare Tools
Tool | Beschreibung | Wichtige Parameter |
| Alle Bankkonten über Verbindungen hinweg auflisten |
|
| Transaktionen mit Filterung abrufen |
|
| Volltextsuche in Beschreibungen und Händlern |
|
| Aktuelle und verfügbare Kontostände |
|
| Ausgaben gruppiert nach Händler oder Kategorie |
|
Screenshots
Alle Beispiele unten verwenden Claude Code mit dem Mock-Anbieter (npx @bank-mcp/server --mock).
Konten auflisten — "List my bank accounts"

Kontostände prüfen — "What's my current balance?"

Transaktionsverlauf — "Show my transactions from the last 15 days"

Transaktionen suchen — "Find all Starbucks purchases in last 2 weeks"

Ausgaben nach Kategorie — "Show my spending by category this month"

Top-Händler — "Which merchants am I spending the most at?"

Abonnement-Tracking — "Show my recurring subscriptions"

Lebensmittelvergleich — "Compare Trader Joe's vs Whole Foods spending"

Vollständiges Finanzbild — "Give me my full February financial picture"

Architektur
Dateistruktur
~/.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 + retryAnbieter-Schnittstelle
Jeder Anbieter erweitert dieselbe abstrakte Klasse, was es einfach macht, neue Integrationen hinzuzufügen:
abstract class BankProvider {
abstract listAccounts(config): Promise<BankAccount[]>;
abstract listTransactions(config, accountId, filter?): Promise<Transaction[]>;
abstract getBalance(config, accountId): Promise<Balance[]>;
abstract getConfigSchema(): ConfigField[];
}Anleitungen zur Anbietereinrichtung
Enable Banking (PSD2)
Was Sie benötigen:
[ ] Ein Enable Banking-Konto mit einer registrierten App
[ ] Ihren privaten RSA-Schlüssel (
.pem-Datei, heruntergeladen bei der Erstellung der App)
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!Tipp: Der Assistent übernimmt den gesamten OAuth-Ablauf – Einrichtung der Redirect-URI, Bankauswahl und Sitzungserstellung. Sitzungen laufen nach 90 Tagen ab (PSD2-Verordnung); führen Sie
initerneut aus, um sie zu aktualisieren.
Teller (US-Banken)
Was Sie benötigen:
[ ] Ein Teller-Entwicklerkonto
[ ] Ihre Anwendungs-ID (aus dem Teller-Dashboard)
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!Tipp: Starten Sie mit Sandbox – keine Zertifikate erforderlich, sofortige Testdaten. Für Entwicklung/Produktion fragt der Assistent nach mTLS-Zertifikatspfaden. Der kostenlose Tarif unterstützt bis zu 100 Live-Verbindungen.
Plaid (USA/CA/EU)
Was Sie benötigen:
[ ] Ein Plaid-Entwicklerkonto (kostenlose Registrierung)
[ ] Ihre Client-ID und Ihr Secret (aus dem Plaid-Dashboard)
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 tokenTipp: Starten Sie mit Sandbox – der Assistent erstellt automatisch ein Test-Token, kein Browser erforderlich. Plaid bietet die reichhaltigste Transaktionskategorisierung – 104 Unterkategorien mit Konfidenzwerten – ideal für LLM-gesteuerte Ausgabenanalysen.
Tink (EU Open Banking)
Was Sie benötigen:
[ ] Ein Tink-Entwicklerkonto (kostenlos zum Testen)
[ ] Ihre Client-ID und Ihr Client-Secret (aus der Tink Console)
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 URLTipp: Tink deckt über 3.400 Banken in ganz Europa ab. Verwenden Sie für die Sandbox die Demo-Bank mit Test-Anmeldedaten (im Assistenten angezeigt). Transaktionen beinhalten PFM-Kategorien mit Händleranreicherung.
Caching
Alle Daten werden im Arbeitsspeicher zwischengespeichert (keine Festplattenpersistenz – der Cache stirbt mit dem Prozess):
Daten | TTL | Warum |
Kontenliste | 1 Stunde | Konten ändern sich selten; minimiert API-Aufrufe |
Transaktionen | 15 Minuten | Saldiert neue Transaktionen vs. Aktualität |
Kontostände | 5 Minuten | Am zeitkritischsten; Benutzer erwarten aktuelle Daten |
Der Cache ist pro Verbindung und pro Konto. Ein Neustart des Servers löscht alle Caches.
Mehrere Verbindungen
Konfigurieren Sie so viele Bankverbindungen, wie Sie benötigen – sogar über verschiedene Anbieter hinweg:
{
"connections": [
{ "id": "ing-main", "provider": "enable-banking", "..." : "..." },
{ "id": "chase-checking", "provider": "plaid", "..." : "..." },
{ "id": "revolut", "provider": "tink", "..." : "..." }
]
}Alle Tools akzeptieren einen optionalen connectionId-Parameter, um eine bestimmte Verbindung anzusprechen. Wenn dieser weggelassen wird, wird jede Verbindung abgefragt und die Ergebnisse werden zusammengeführt – sodass "Zeige alle meine Kontostände" automatisch bankübergreifend funktioniert.
Sicherheit
Designprinzipien
bank-mcp verarbeitet sensible Finanzdaten. Seine Sicherheitslage basiert auf der Minimierung der Angriffsfläche:
Von Natur aus schreibgeschützt — die
BankProvider-Schnittstelle macht nur Lesemethoden verfügbar (listAccounts,listTransactions,getBalance). Es gibt keine Schreibmethoden – keine Überweisungen, keine Kontenänderungen, keine Zahlungsinitiierung. Dies wird auf Typebene erzwungen, nicht durch Konvention.Kein Netzwerk-Listener — bank-mcp läuft als stdio-Prozess (stdin/stdout), nicht als HTTP-Server. Es gibt keinen offenen Port, keine Angriffsfläche aus dem Netzwerk.
Minimale Abhängigkeiten — nur 4 Laufzeitabhängigkeiten (
@modelcontextprotocol/sdk,@clack/prompts,jsonwebtoken,zod). Weniger Abhängigkeiten bedeuten weniger Risiken in der Lieferkette.Open Source
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