# MCP-Server für KI-Clients

Ein MCP-Server gibt einem kompatiblen KI-Client Zugriff auf ausgewählte Bankdaten. MCP steht für Model Context Protocol: Der Client erhält darüber Werkzeuge, mit denen er Daten aus Kontoflux.io abrufen kann.

## Server einrichten

1. Öffne **Automationen → Integrationen** und füge einen **MCP-Server** hinzu.
2. Gib der Integration einen passenden Namen, etwa „KI-Auswertung Geschäftskonto“.
3. Öffne **MCP-Einstellungen** und wähle unter **Verfügbare Tools** die gewünschten Werkzeuge.
4. Speichere die Auswahl.
5. Öffne **Bankkonten** und wähle unter **Erlaubte Bankkonten** die Konten für diese Integration. Speichere auch diese Einstellung.
6. Wähle einen der unten beschriebenen Zugangswege und prüfe, ob die Integration **Aktiv** ist.
7. Kopiere unter **Übersicht → MCP URL** die vollständige Adresse in deinen MCP-Client.

Die URL enthält Workspace und Integration. Verwende die kopierte Adresse dieser Integration, auch wenn du im selben Workspace weitere MCP-Server eingerichtet hast.

## Verfügbare Werkzeuge

| Tool | Aufgabe |
| --- | --- |
| `get_accounts` | Kontodaten und Kontostände lesen |
| `get_transactions` | Transaktionen lesen |

Der Client sieht nur Werkzeuge, die in der Integration freigegeben sind und zu seinen Berechtigungen passen. **Alle Tools** gibt auch künftig ergänzte Tools frei. Wenn du die Auswahl fest begrenzen möchtest, wähle die einzelnen Werkzeuge.

Für eine erste Prüfung kannst du den Client bitten, die verfügbaren Konten aufzulisten. Kontrolliere, ob nur die vorgesehenen Konten erscheinen.

## Zugang über OAuth

Für Clients mit OAuth-Unterstützung:

1. Öffne **OAuth2-Einstellungen** und prüfe **OAuth-Autorisierungsserver aktivieren**.
2. Lege unter **Erlaubte Scopes** fest, welche Berechtigungen die Integration vergeben darf. Für MCP-Zugriff wird `mcp:tools` benötigt; Konten und Transaktionen brauchen zusätzlich ihre jeweilige Leseberechtigung.
3. Wenn sich dein Client selbst registriert, aktiviere **Dynamic Client Registration erlauben**. Andernfalls [erstelle eine OAuth-App](https://docs.kontoflux.io/integrationen/oauth-apps/#oauth-app-manuell-erstellen) unter **Registrierte Apps**.
4. Klicke auf **OAuth-Einstellungen speichern**.
5. Starte die Verbindung im Client und [bestätige den Zugriff](https://docs.kontoflux.io/integrationen/apps-verbinden-und-widerrufen/) in Kontoflux.io.

Eine dynamische Registrierung legt nur die App an. Bankdaten erhält sie erst nach der Anmeldung und Zustimmung eines Kontoflux.io-Nutzers mit Zugriff auf den Workspace.

## Zugang über einen statischen Schlüssel

Wenn dein Client einen Bearer-Schlüssel statt OAuth verwendet:

1. Öffne **API-Schlüssel** in der MCP-Integration.
2. Klicke auf **Neuer MCP-Schlüssel**.
3. Kopiere den vollständigen Schlüssel und prüfe seinen Aktivierungsstatus.
4. Hinterlege ihn im Client für die kopierte MCP URL als Bearer-Schlüssel.

Diese Schlüssel beginnen mit `mcp-` und gehören zu einer bestimmten Integration. Ein normaler `sk-`-Schlüssel aus dem API-Tab passt nicht zur MCP-URL.

Den Kontoumfang dieser Schlüssel legst du im Bereich **Bankkonten** der Integration fest. Die Schlüsselansicht bietet Kopieren, Aktivieren, Neugenerieren und Löschen.

## Bankkonten begrenzen

**Alle Bankkonten** umfasst vorhandene und später hinzugefügte Konten. Eine Auswahl einzelner Konten begrenzt den Zugriff der gesamten Integration, einschließlich ihrer OAuth-Verbindungen und MCP-Schlüssel.

Mit **Endnutzer wählen Bankkonten beim Verbinden** erhält der OAuth-Zustimmungsdialog eine zusätzliche Kontenauswahl. Nutzer können dann innerhalb deiner Freigabe einzelne Konten auswählen.

Änderungen an der Kontenauswahl gelten auch für bestehende Zugänge. Bereits in einen Client übernommene Daten werden dadurch dort nicht gelöscht.

## Verbindung beenden

Über **Registrierte Apps → Widerrufen** entziehst du einer OAuth-App den Zugriff. Einen statischen Schlüssel deaktivierst oder löschst du im Bereich **API-Schlüssel**. Der Aktivierungsschalter der Integration sperrt die gesamte MCP-Instanz.

Wenn der Client keine Tools sieht, prüfe Werkzeugauswahl und OAuth-Scopes. Bei einer nicht erreichbaren URL prüfe außerdem den Aktivierungsstatus und ob die URL zur richtigen Integration gehört.
