Skip to main content
Glama
dennismenken

BuchhaltungsButler MCP-Server

by dennismenken

Kreditorenkonto anlegen

bb_creditors_create

Creates a supplier account in BuchhaltungsButler before booking an incoming invoice. Assigns the next free account number automatically if none is provided and returns it.

Instructions

Legt ein Kreditorenkonto, also ein Lieferantenkonto, in BuchhaltungsButler an. Gedacht für einen neuen Lieferanten, bevor eine Eingangsrechnung kreditorisch erfasst wird. Ohne postingaccount_number vergibt BuchhaltungsButler die nächste freie Nummer und nennt sie in der Antwort. Mehrere Konten in einem Aufruf legt bb_creditors_create_batch an; Kunden sind Debitoren und gehören zu bb_debtors_create. Schreibt in die echten Buchhaltungsdaten von BuchhaltungsButler. Die API bietet keinen Endpunkt, das rückgängig zu machen.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
bicNoBIC der Bankverbindung, zum Beispiel BYLADEM1001.
zipNoPostleitzahl, zum Beispiel "28195".
cityNoOrt, zum Beispiel Bremen.
ibanNoIBAN der Bankverbindung, zum Beispiel DE02120300000000202051.
nameYesName des Lieferantenkontos, zum Beispiel Musterlieferant GmbH.
emailNoE-Mail-Adresse, zum Beispiel rechnung@beispiel.de.
streetNoStraße und Hausnummer, zum Beispiel Hauptstraße 12.
countryNoLand, zum Beispiel Deutschland oder DE.
due_in_daysNoZahlungsfrist in Tagen, zum Beispiel 14. Schreibbar, aber von keinem lesenden Endpunkt der API zurückgeliefert; der gesetzte Wert ist danach nur in der Weboberfläche von BuchhaltungsButler zu sehen.
sales_tax_idNoUmsatzsteuer-Identifikationsnummer, zum Beispiel DE123456789.
contact_person_nameNoName der Ansprechperson, zum Beispiel Maria Schmidt.
postingaccount_numberNoKontonummer des neuen Kreditorenkontos als Zeichenkette. Ohne Angabe vergibt BuchhaltungsButler die nächste freie Nummer. Belegte Nummern zeigt bb_creditors_search.
additional_address_lineNoZusätzliche Adresszeile, zum Beispiel Gebäude B.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
dataNo
createdNo
messageNo
successYes
endpointNo
reversalNo
_contract_warningsNo
fields_not_returnedNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4.9/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations cover write/non-idempotent/non-destructive, and the description adds critical extras not in annotations: automatic numbering when postingaccount_number is omitted (and that it is returned), that it writes to real data, and that the API offers no undo endpoint. This materially raises the stakes-awareness beyond structured fields.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Dense but every sentence earns its place: purpose, use case, numbering behavior, sibling routing, write target, and irreversibility. Front-loaded with the core action and no filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With 13 params, an output schema, and full annotations, the description covers the remaining gaps: auto-numbering, return of the number, sibling alternatives, and irreversibility. Nothing an agent needs to invoke correctly is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3; the description adds value for postingaccount_number by explaining auto-assignment and pointing to bb_creditors_search for checking occupied numbers. The due_in_days caveat about write-only visibility is also covered, though it appears mainly in the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Specific verb+resource in German: creates a creditor (supplier) account in BuchhaltungsButler. It explicitly distinguishes itself from siblings by naming bb_creditors_create_batch for bulk and bb_debtors_create for customers, making selection unambiguous.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

States the intended use case (new supplier before an incoming invoice is recorded) and names alternatives with their selecting conditions: batch for multiple accounts, bb_debtors_create for customers. Clear when/when-not guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.