Jahresabschluss.io
ENAnmeldenRegistrieren →

Eigene Anbindung

LLM mit der Buchhaltung verbinden

Jedes große Sprachmodell mit Function-Calling kann Ihre echten Bücher bedienen — es muss die REST-API nur als Werkzeug beschrieben bekommen. Für Clients, die das Model Context Protocol sprechen, ist MCP der einfachste Weg: einmal andocken, und das Modell sieht fertige, benannte Werkzeuge. Diese Seite erklärt beides — das Konzept hinter Function-Calling und die praktische Einrichtung — und hält dabei die Grenze klar: Es geht um Buchhaltungsdaten und Buchungen, um das Prüfen und Vorbereiten von Steuermeldungen und um ausgestellte Abschlüsse zum Lesen — nicht um das Erstellen des Abschlusses.

Stand: 2026-07-03

Wie ein LLM die Buchhaltung bedient

Das Modell schreibt keine Datenbank-Abfragen — es ruft klar umrissene Funktionen auf, die Sie ihm als Werkzeuge geben.

Function-Calling bedeutet: Sie beschreiben dem Modell eine Handvoll Funktionen — etwa „Saldenliste holen“ oder „Ausgangsrechnung buchen“ — und was sie erwarten. Das Modell entscheidet, welche es aufruft, und Ihr Code führt den zugehörigen REST-Aufruf aus. Das Modell selbst berührt weder den Schlüssel noch die Datenbank direkt.

Genau diese Trennung macht die Anbindung sicher: Das LLM plant, Ihr Programm setzt um, und jeder Aufruf trifft die feste Endpunkt-Liste. Es gibt kein SQL und keine freie Abfrage, die das Modell missbrauchen könnte.

MCP: der einfachste Weg für MCP-fähige Clients

Wenn Ihr Client MCP spricht, sparen Sie sich die eigene Werkzeug-Definition.

Der MCP-Server ist ein dünner Adapter über derselben REST-API und stellt fertige, benannte Werkzeuge bereit — vom Abruf der Saldenliste über das Buchen eines Belegs bis zur Festschreibung. Gleicher Schlüssel, gleiche Scopes, gleiche GoBD-Regeln. Der Client zeigt dem Modell die Werkzeuge, ohne dass Sie sie selbst beschreiben müssen.

Der Remote-Zugang ist gehostet und sofort einsatzbereit — Sie hinterlegen nur Adresse und Schlüssel. Clients, die nur lokale Server starten, verbinden Sie über die Brücke mcp-remote.

MCP-Server anmelden

Zwei Zeilen genügen, um die Buchhaltung als Werkzeugquelle bei einem MCP-fähigen Client zu registrieren.

# MCP-Server (remote, gehostet — nichts zu installieren)
claude mcp add --transport http --scope user buchhaltung \
  "$MCP_URL" --header "Authorization: Bearer jab_live_…"

Ohne MCP: Werkzeuge selbst definieren

Modelle ohne MCP bekommen die Endpunkte als Funktionen beschrieben — Ihr Code führt sie aus.

  • Definieren Sie je Endpunkt eine Funktion, z. B. get_saldenliste(fiscal_year_id) → GET /saldenliste und post_outgoing_invoice(kunde, netto, steuersatz) → POST /outgoing-invoices.
  • Geben Sie nur die Funktionen frei, die der Anwendungsfall braucht — ein reines Auswerte-Szenario kommt ohne Schreib-Funktionen aus, passend zum read-Scope des Schlüssels.
  • Halten Sie den Schlüssel in Ihrem Code, nie im Prompt oder im Modellkontext. Das Modell nennt nur die Funktion und ihre Argumente; den Authorization-Header setzt Ihr Programm.
  • Validieren Sie die Argumente an der Systemgrenze, bevor Sie buchen — das Modell schlägt vor, Ihr Code entscheidet, ob und wie gebucht wird.

Vertrauen: Regeln, die das Modell nicht umgehen kann

Egal wie clever der Prompt ist — der Buchungskern bleibt der Torwächter.

Jede Schreib-Anfrage läuft durch denselben Kern wie die Eingabe im Programm: append-only, Festschreibung, Storno statt Löschen, Soll gleich Haben. Ein LLM kann diese Regeln nicht überreden. Ein read-Schlüssel kann ohnehin nichts verändern.

Die Schnittstelle bleibt klar begrenzt. Das Modell erstellt darüber keinen Jahresabschluss, keine E-Bilanz und keine Steuererklärung — es bereitet die Zahlen vor, die Sie anschließend im Programm in den Abschluss überführen, und kann Steuermeldungen amtlich prüfen und vorbereiten; übermittelt wird über den Freigabe-Link in der App.

Häufige Fragen

Welche LLMs kann ich anbinden?

Jedes mit Function-Calling. Sie beschreiben die REST-Endpunkte als Funktionen, das Modell ruft sie auf, Ihr Code führt den Aufruf aus. Für MCP-fähige Clients geht es über MCP sogar ohne eigene Werkzeug-Definition.

Sieht das Modell meinen Schlüssel?

Nein, wenn Sie es richtig bauen. Der Schlüssel bleibt in Ihrem Code oder im MCP-Client; das Modell nennt nur Funktionsname und Argumente. Den Authorization-Header setzt Ihr Programm, nicht das Modell.

Ist MCP oder Function-Calling besser?

MCP, wenn Ihr Client es unterstützt — es liefert fertige, benannte Werkzeuge über denselben Schlüssel und dieselben Scopes. Ohne MCP definieren Sie die Funktionen selbst; das Ergebnis ist dasselbe Regelwerk auf denselben Endpunkten.

Kann das Modell etwas Unwiderrufliches buchen?

Nein. Buchungen sind append-only und festgeschrieben; korrigiert wird nur per Storno. Mit read-Scope kann das Modell gar nicht buchen, und Sie validieren Argumente an der Systemgrenze, bevor eine Schreib-Funktion ausgeführt wird.

Kann das LLM meine Steuererklärung machen?

Nein. Die Schnittstelle liefert Buchhaltungsdaten und bucht Belege. Sie erstellt keinen Jahresabschluss, keine E-Bilanz und keine Steuererklärung — dieser Schritt geschieht bewusst im Programm mit seinen Prüfungen.

Vom selben Anbieter: Jahresabschluss nach HGB – der komplette Leitfaden auf jahresabschluss.io.