Jahresabschluss.io
ENAnmeldenRegistrieren →

Kiro (AWS)

Buchhaltung mit Kiro: MCP-Server in Kiro und Kiro CLI einrichten

In Kiro binden Sie Ihre Buchhaltung bei jahresabschluss.io an, indem Sie in ~/.kiro/settings/mcp.json (für alle Projekte) oder .kiro/settings/mcp.json (nur für dieses Projekt) einen Server mit url und headers eintragen und den Schlüssel über ${JAB_API_KEY} aus einer Umgebungsvariable holen. Dieselben Dateien liest die Kiro CLI, die Nachfolgerin der Amazon Q Developer CLI. Kiro fragt vor jedem Werkzeugaufruf, solange das Werkzeug nicht in der Liste autoApprove steht – dort gehören höchstens lesende Werkzeuge hin, nie Buchungen.

Stand: 2026-10-19

Kiro, Kiro CLI und die frühere Amazon Q Developer CLI

Kiro ist die agentische Entwicklungsumgebung von AWS. Für die Anbindung an die Buchhaltung zählen drei Punkte, Stand Oktober 2026:

Eine Konfiguration für Kiro und Kiro CLI

Die Kiro-Dokumentation nennt für die Entwicklungsumgebung und die Kommandozeile dieselben Dateien: .kiro/settings/mcp.json im Arbeitsbereich und ~/.kiro/settings/mcp.json für den Benutzer. Gibt es beide, führt Kiro sie zusammen; der Eintrag im Arbeitsbereich hat Vorrang.

Aus Amazon Q Developer CLI wurde Kiro CLI

Laut AWS ist die Kiro CLI die nächste Fassung der Q CLI; sie erschien am 17.11.2025, mit automatischer Aktualisierung wurde die Q CLI ab dem 24.11.2025 ersetzt. Bei der Installation übernimmt die Kiro CLI eine vorhandene ~/.aws/amazonq/mcp.json nach ~/.kiro/settings/mcp.json.

Nur verschlüsselte Adressen

Für entfernte Server erwartet Kiro eine HTTPS-Adresse (HTTP nur für localhost). Unser Server läuft unter https://api.jahresabschluss.io/functions/v1/bookkeeping-mcp. In Kiro im Browser werden entfernte MCP-Server laut Hersteller derzeit nicht unterstützt.

Schritt 1: den Schlüssel für eine Gesellschaft anlegen

  • Öffnen Sie in der App Buchhaltung → Einstellungen → „KI-Agent & API“. Schlüssel anlegen dürfen Administratoren und der Ersteller des Arbeitsbereichs, bestätigt mit dem zweiten Faktor. Nutzen Sie nur das Steuer-Modul, liegt die Karte „KI-Agent & API“ unter Steuern → Einstellungen.
  • Wählen Sie für den Anfang nur Lesen. Unser Server listet dann ausschließlich lesende Werkzeuge – Kiro bekommt schreibende gar nicht erst angeboten, egal was in autoApprove steht.
  • Laufzeit 30 Tage, 90 Tage oder ein Jahr; ein Schlüssel läuft immer ab. Er beginnt mit jab_live_ und wird nur einmal angezeigt, bei uns liegt nur ein Hash.
  • Legen Sie ihn als Umgebungsvariable ab, etwa mit export JAB_API_KEY="jab_live_…" in Ihrer Shell-Konfiguration. Ein Schlüssel öffnet genau eine Gesellschaft; für eine zweite Gesellschaft brauchen Sie einen zweiten Schlüssel, eine zweite Variable und einen zweiten Server-Eintrag.

Schritt 2: der Eintrag in mcp.json

Die Kiro-Dokumentation beschreibt entfernte Server mit url und headers und Umgebungsvariablen in der Form ${VARIABLE}. Für die Buchhaltung sieht der Eintrag so aus:

{
  "mcpServers": {
    "buchhaltung": {
      "url": "https://api.jahresabschluss.io/functions/v1/bookkeeping-mcp",
      "headers": {
        "Authorization": "Bearer ${JAB_API_KEY}"
      },
      "disabled": false,
      "autoApprove": [
        "get_entity",
        "list_fiscal_years",
        "get_saldenliste",
        "list_open_items",
        "get_annual_report_status"
      ]
    }
  }
}

In der Entwicklungsumgebung setzt Kiro aus Sicherheitsgründen nur Umgebungsvariablen ein, die Sie ausdrücklich freigegeben haben. Tragen Sie JAB_API_KEY in den Einstellungen unter „Mcp Approved Env Vars“ ein; sonst erreicht unser Server keine gültige Kopfzeile und antwortet mit 401.

Für die Kiro CLI setzen Sie die Variable in der Shell, bevor Sie die CLI starten. Eine .env-Datei im Projekt lädt die CLI laut Dokumentation nicht von selbst. Weil in der Datei nur ${JAB_API_KEY} steht und kein Schlüssel, können Sie eine Arbeitsbereichs-Datei mit dem Projekt teilen – jede Person setzt dann ihre eigene Variable mit ihrem eigenen Schlüssel.

Schritt 3: autoApprove bewusst klein halten

autoApprove ist eine Liste von Werkzeugnamen, die Kiro ohne Rückfrage aufruft. Alles andere legt Kiro Ihnen mit „Approve“ oder „Deny“ vor.

  • Geeignet für autoApprove sind reine Abfragen wie get_entity, list_fiscal_years, get_saldenliste, list_open_items, list_journal_entries, list_tax_deadlines oder get_annual_report_status.
  • Nie in autoApprove: create_journal_entry, storno_journal_entry, book_bank_transaction, match_bank_transaction, confirm_receipt, create_outgoing_invoice, send_outgoing_invoice, finalize_bookkeeping_period. Und nie "*" – damit liefe jedes Werkzeug ohne Rückfrage.
  • Die Kiro-Dokumentation ist bei der Schreibweise nicht einheitlich: Die Konfigurationsseite spricht von Werkzeugnamen, ein Beispiel auf der Nutzungsseite verwendet Namen mit Präfix. Prüfen Sie nach dem Speichern mit einer Frage nach der Saldenliste, ob Kiro noch nachfragt.
  • Mit disabledTools blenden Sie Werkzeuge zusätzlich aus, mit "disabled": true den ganzen Server. Die harte Grenze bleibt aber das Recht des Schlüssels: Was er nicht erlaubt, zeigt unser Server gar nicht an und führt er nicht aus.
  • In einem nicht vertrauenswürdigen Arbeitsbereich lädt Kiro die MCP-Konfiguration des Arbeitsbereichs nicht und fragt vor jedem MCP-Aufruf, auch wenn autoApprove etwas anderes sagt.

Die Kiro CLI: Eintrag von Hand

Die Befehlsreferenz der Kiro CLI beschreibt kiro-cli mcp add derzeit nur für lokal gestartete Server (mit --command). Einen Schalter für eine Adresse oder eine Kopfzeile nennt sie nicht. Tragen Sie unseren Server deshalb direkt in ~/.kiro/settings/mcp.json ein; die CLI liest dieselbe Datei wie die Entwicklungsumgebung. Alternativ übernimmt kiro-cli mcp import eine vorbereitete Datei.

Wer bisher mit der Amazon Q Developer CLI gearbeitet hat und dort schon einen Eintrag für die Buchhaltung hatte, findet ihn nach der Umstellung in der neuen Datei wieder. Prüfen Sie danach trotzdem, ob die Kopfzeile auf eine Umgebungsvariable zeigt und nicht auf einen alten, abgelaufenen Schlüssel.

Aufträge in Kiro: den Jahresabschluss vorbereiten

Ein typischer Auftrag in mehreren Schritten ist die Vorbereitung des Jahresabschlusses, den Sie danach in der App erstellen und ausstellen. Beispiele mit den Werkzeugen, die der Agent dafür aufruft:

„Ist das Geschäftsjahr 2025 bereit für den Abschluss?“

get_annual_report_status zeigt, bis wann festgeschrieben ist, ob die Saldenliste schon übergeben wurde und welche Abschlüsse, Offenlegungsdateien und E-Bilanz es gibt; get_saldenliste prüft, ob Soll und Haben ausgeglichen sind; list_bank_transactions mit dem Status unbooked zeigt, was noch nicht gebucht ist.

„Übergib die Saldenliste 2025 an den Jahresabschluss.“

Erst mit Schreibrecht: publish_trial_balance übergibt die Saldenliste mit einem Idempotenzschlüssel und liefert Zuordnungszahlen und Hinweise. Weil das Werkzeug nicht in autoApprove steht, bestätigen Sie den Aufruf in Kiro.

„Fasse den ausgestellten Abschluss 2024 zusammen.“

list_annual_reports und get_annual_report liefern Bilanz, GuV, Anhang und, falls vorhanden, Lagebericht als Text – genau den ausgestellten Stand. Die PDF-Datei nennt download_annual_report nur zum Abruf; sie geht nicht durch das Modell.

„Liegt die Offenlegungsdatei schon vor?“

list_disclosure_files zeigt die Offenlegungsdateien mit Prüfsumme. An das Unternehmensregister übermittelt die Software nicht direkt; sie erzeugt die Einreichungsdatei.

Grenzen: was in der App bleibt

  • Erstellen, Prüfen und Ausstellen des Jahresabschlusses (HGB, Einzelabschluss) geschieht in der App, dort mit KI-Hilfe. Der Agent bereitet vor, liest Ergebnisse und übergibt die Saldenliste.
  • Steuern: Der Agent prüft amtlich ohne Versand (check_tax_filing), bereitet vor (prepare_tax_filing) und fordert einen Freigabe-Link an (request_tax_filing_approval). Übermittelt wird in der App mit Ihrer PIN – die PIN gehört nie in den Chat.
  • Kiro erreicht über die Anbindung keine Bankanbindung, keine Einstellungen der Gesellschaft, keine Bankverbindungen Ihrer Geschäftspartner und keine freien Datenbankabfragen.
  • Jede Buchung durchläuft den Buchungskern der App: Soll gleich Haben, Storno statt Löschen, keine Buchung in festgeschriebene Zeiträume. Das entspricht dem Veränderungsverbot des § 146 Abs. 4 AO und des § 239 Abs. 3 HGB – der ursprüngliche Inhalt einer Buchung muss feststellbar bleiben.
  • Die Ergebnisse des Agenten sind Vorschläge. Die Verantwortung für Buchführung und Abschluss bleibt bei Ihnen, allein oder gemeinsam mit Ihrer Steuerberatung, die in derselben Software arbeiten kann.

Häufige Fragen

Wo trage ich den MCP-Server in Kiro ein?

In ~/.kiro/settings/mcp.json für alle Projekte oder in .kiro/settings/mcp.json im Arbeitsbereich, jeweils unter mcpServers mit url und headers. Gibt es beide Dateien, hat der Arbeitsbereich Vorrang. Die Kiro CLI liest dieselben Dateien.

Funktioniert die Anleitung auch mit der Amazon Q Developer CLI?

Die Amazon Q Developer CLI ist laut AWS in der Kiro CLI aufgegangen. Die Kiro CLI übernimmt bei der Installation eine vorhandene MCP-Konfiguration aus ~/.aws/amazonq/mcp.json nach ~/.kiro/settings/mcp.json; danach gilt diese Anleitung.

Warum meldet der Server 401, obwohl der Schlüssel stimmt?

Meist ist ${JAB_API_KEY} nicht ersetzt worden. In der Entwicklungsumgebung muss die Variable unter „Mcp Approved Env Vars“ freigegeben sein, in der Kiro CLI muss sie in der Shell gesetzt sein, bevor die CLI startet. Prüfen Sie außerdem, ob der Schlüssel abgelaufen oder widerrufen ist.

Welche Werkzeuge darf ich in autoApprove eintragen?

Nur lesende, etwa get_saldenliste, list_open_items oder list_fiscal_years. Buchen, Stornieren, Rechnungen ausstellen und versenden sowie Festschreiben gehören nie dazu, und "*" sollten Sie für die Buchhaltung nie setzen.

Kann Kiro meine Umsatzsteuer-Voranmeldung abgeben?

Nein. Mit Schreibrecht prüft der Agent die Voranmeldung amtlich ohne Versand, bereitet die Übermittlung vor und fordert einen Freigabe-Link an. Übermittelt wird in der App, mit Ihrer PIN.

Kann ich die Einrichtung ohne echte Buchungen ausprobieren?

Ja, mit der Sandbox, derzeit für Gesellschaften ohne Jahresabschluss-Daten: Sie richten in den Einstellungen einen Zwilling Ihrer Gesellschaft ein und legen dort einen eigenen Schlüssel an. get_entity meldet dann sandbox: true, und aus dem Zwilling geht nichts hinaus – keine ELSTER-Sendung, keine E-Mail, keine Bank.

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