Skip to main content
Glama
Fabi-SPL

kontist-mcp

by Fabi-SPL

kontist-mcp

Ein OAuth2-Client und eine typisierte GraphQL-Schicht über das Geschäftskonto von Kontist, bereitgestellt über das Model Context Protocol, sodass Kontostände, Transaktionen und Steuerrücklagen von einem Tool-Client statt aus der Web-App gelesen und annotiert werden können.

Warum es das gibt

Kontist ist ein deutsches Geschäftskonto für Freiberufler und bietet zwei Dinge, die die meisten Banken nicht sinnvoll zur Verfügung stellen: automatische Unterkonten für Umsatzsteuer- und Einkommensteuerrücklagen sowie ein Annotationsfeld pro Transaktion für die Buchhaltung. Beides ist zur Steuererklärung wichtig und beides ist mühsam von Hand zu bearbeiten.

Der interessante Teil ist die Authentifizierungskette und nicht die Abfragen. Kontist sichert sein langlebiges Refresh-Token durch eine interaktive Zustimmung plus einen auf dem Telefon bestätigten MFA-Push ab. Das Token muss daher einmal über einen lokalen Callback-Server erfasst und anschließend als einzige zu speichernde Anmeldedaten behandelt werden. Alles danach ist Token-Austausch, Caching und Ablaufverwaltung.

Related MCP server: FinTS-Finanzen

Tools

Tool

Funktion

kontist_whoami

Kontoidentität und IBAN, der Auth-Smoke-Test

kontist_get_balance

Aktueller Kontostand

kontist_list_transactions

Letzte Transaktionen, gefiltert nach Datum, Betrag oder Kategorie

kontist_get_transaction

Eine Transaktion vollständig

kontist_get_tax_reserves

Salden der Unterkonten für Umsatzsteuer- und Einkommensteuerrücklagen

kontist_annotate_transaction

Die Buchhaltungsnotiz zurück an eine Transaktion schreiben

kontist_summarize

Zu- und Abflüsse, wichtigste Gegenparteien und Kategoriesummen über einen Zeitraum

Jede Tool-Eingabe wird vor dem Absenden einer Abfrage mit einem zod-Schema validiert, sodass ein fehlerhafter Datumsbereich lokal und nicht als GraphQL-Fehler abgelehnt wird.

So funktioniert es

tool client
  |  MCP over stdio
kontist-mcp (Node + TypeScript)
  |  GraphQL over fetch, OAuth2 bearer, token refreshed and cached
api.kontist.com/api/graphql

Die Authentifizierung erfolgt über OAuth2 mit einer einmaligen interaktiven Zustimmung, die ein langlebiges Refresh-Token erzeugt. Nur dieses Refresh-Token kommt in .env. Access-Tokens werden bei Bedarf abgerufen, in .tokens-cache.json zwischengespeichert und bei Ablauf erneuert, sodass der interaktive Ablauf genau einmal durchläuft.

Ausführen

npm install
cp .env.example .env        # client id, client secret
npm run setup               # one-time OAuth consent, writes the refresh token
npm run test:auth           # confirms the token works
npm run build

Registrieren Sie es dann bei Ihrem MCP-Client und verweisen Sie auf dist/index.js. Eine vollständige Anleitung einschließlich der Registrierung der Kontist-Entwickler-App finden Sie in SETUP.md.

Stack

Node 18+, TypeScript, @modelcontextprotocol/sdk, graphql-request, das offizielle kontist-SDK für den OAuth-Ablauf, zod für die Validierung von Tool-Eingaben. Kein ORM und kein Framework.

Für den einmaligen Zustimmungsschritt muss die Kontist-Mobile-App installiert und angemeldet sein, da das Refresh-Token erst nach Bestätigung eines MFA-Pushs auf dem Telefon ausgegeben wird.

Einschränkungen

  • Hauptsächlich lesend ausgelegt. Der einzige Schreibvorgang ist das Annotationsfeld. Überweisungen sind bewusst nicht freigeschaltet, obwohl die API sie unterstützt und der Scope transfers existiert, denn ein Agent, der Geld bewegen kann, ist keine gute Idee.

  • Noch nicht mit einem Live-Konto getestet. Der OAuth2-Ablauf, der GraphQL-Client und alle sieben Tools sind geschrieben und typgeprüft, aber das Konto selbst wird erst eröffnet, sobald die Gewerbeanmeldung durch ist. Erwarten Sie beim ersten echten Lauf Schema-Abweichungen bei den Transaktionsfeldern.

  • Keine Testsuite. Zwei Smoke-Skripte, test:auth und test:balance, und sonst nichts.

  • Einzelnes Konto. Keine Multi-Konto-Verwaltung, keine Paginierung über das hinaus, was Kontist standardmäßig zurückgibt.

Lizenz

Apache 2.0. Siehe LICENSE und NOTICE.

A
license - permissive license
-
quality - not tested
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • A
    license
    -
    quality
    F
    maintenance
    MCP server for accessing and managing Banktivity personal finance data, enabling account, transaction, and budget operations through natural language.
    3
    MIT
  • A
    license
    -
    quality
    B
    maintenance
    Read-only MCP server for FinTS/HBCI banking; enables account information retrieval such as balances and transactions via PIN-TAN.
    MIT
  • A
    license
    -
    quality
    B
    maintenance
    MCP server that turns bank transactions into a financial digest including cash-flow forecast, spending breakdown, fee detection, and receipt reconciliation, exposing deterministic engines as JSON-RPC tools.
    Apache 2.0

View all related MCP servers

Related MCP Connectors

  • Hosted MCP server for Mini Accountant: invoices, expenses, customers, analytics, tax estimates.

  • TaxSort — Tollbooth-monetized MCP server for personal tax transaction classification

  • Hosted MCP server for personal tools: budgets, savings goals, spaced repetition, tips, countdowns.

View all MCP Connectors

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/Fabi-SPL/kontist-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server