Skip to main content
Glama
ohneben

Buchhaltungsbutler MCP

Postings: get postings

postings_list
Read-onlyIdempotent

Fetch read-only postings for a customer account filtered by date range or posting account, with limit and offset support and a 1,000-row cap per request.

Instructions

🟢 READ-ONLY: Fetches data. Makes no changes to the accounting records.

get postings

Get postings for a specified customer account. The response includes the number of returned rows and an array of postings data. NOTE: Each request is limited to 1000 postings!

Use to read the booking journal, filtered by date range or posting account.

Supports limit and offset. Ask for a bounded date range rather than paging through a whole financial year.

Endpoint: POST /postings/get

Input Schema

NameRequiredDescriptionDefault
limitNoSet a limit of returned postings. NOTE: the maximum limit is 1000!
orderNoPossible values are "default", "date ASC", "date DESC", "date_last_action ASC", "date_last_action DESC", "id_by_customer ASC", "id_by_customer DESC". The default order is ascending by date as first and date_last_action as second criterion. Please not that the validation of the specified value is case sensitive!
offsetNoSet an offset for the returned postings.
accountNoA comma separated list of accounts. Use the following options: all, all financial accounts, free booking and any of your available accounts as numeric value. The default is "all"
date_toYesThe postings issuing date in format 'YYYY-MM-DD' (e.g. '2017-04-26'). All postings with issuing date including and before given value will be returned. If specified, the field will be validated. An empty string is not considered a valid date.
date_fromYesThe postings issuing date in format 'YYYY-MM-DD' (e.g. '2017-04-26'). All postings with issuing date including and after given value will be returned. If specified, the field will be validated. An empty string is not considered a valid date.
cost_locationNoSet a specific cost location code. If specified, only postings to this cost location are returned
posting_statusNoSet the status of the posting. You have the following options: all, fixed, unfixed The default is "all"
postingaccountNoA comma separated list of postingaccounts. Use the following options: all, all postingaccounts, all debtors, all creditors and any of your available postingaccounts as numeric value. The default is "all"
date_last_action_toNoA date in format 'YYYY-MM-DD'. All postings that were created or modified in status (confirmed, fixed) on or before this date will be returned. If specified, the field will be validated. An empty string is not considered a valid date.
date_last_action_fromNoA date in format 'YYYY-MM-DD'. All postings that were created or modified in status (confirmed, fixed) on or after this date will be returned. If specified, the field will be validated. An empty string is not considered a valid date.

Output Schema

NameRequiredDescriptionDefault
dataNoAn array of postings data
rowsNoNumber of returned rows
messageNoblank
successYesSuccess boolean

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed26 schema fields changedv1.1.5
    • changedOutput schema / properties / data / items / properties / amount / type
      Previous value: -"string"New value: +[
      +  "string",
      +  "null"
      +]
    • changedOutput schema / properties / data / items / properties / booking_number / type
      Previous value: -[
      -  "string",
      -  "integer"
      -]New value: +[
      +  "string",
      +  "integer",
      +  "null"
      +]
    • changedOutput schema / properties / data / items / properties / circumstances_ll / type
      Previous value: -"string"New value: +[
      +  "string",
      +  "null"
      +]
    • changedOutput schema / properties / data / items / properties / comment / type
      Previous value: -"string"New value: +[
      +  "string",
      +  "null"
      +]
    • changedOutput schema / properties / data / items / properties / cost_location / type
      Previous value: -"string"New value: +[
      +  "string",
      +  "null"
      +]
    • changedOutput schema / properties / data / items / properties / cost_location_two / type
      Previous value: -"string"New value: +[
      +  "string",
      +  "null"
      +]
    • changedOutput schema / properties / data / items / properties / credit_postingaccount_number / type
      Previous value: -"string"New value: +[
      +  "string",
      +  "null"
      +]
    • changedOutput schema / properties / data / items / properties / credit_type / type
      Previous value: -"string"New value: +[
      +  "string",
      +  "null"
      +]
    • changedOutput schema / properties / data / items / properties / currency / type
      Previous value: -"string"New value: +[
      +  "string",
      +  "null"
      +]
    • changedOutput schema / properties / data / items / properties / date / type
      Previous value: -"string"New value: +[
      +  "string",
      +  "null"
      +]
    • changedOutput schema / properties / data / items / properties / date_vat_effective / type
      Previous value: -"string"New value: +[
      +  "string",
      +  "null"
      +]
    • changedOutput schema / properties / data / items / properties / debit_postingaccount_number / type
      Previous value: -"string"New value: +[
      +  "string",
      +  "null"
      +]
    • changedOutput schema / properties / data / items / properties / fixed / type
      Previous value: -"string"New value: +[
      +  "string",
      +  "null"
      +]
    • changedOutput schema / properties / data / items / properties / id_by_customer / type
      Previous value: -"string"New value: +[
      +  "string",
      +  "null"
      +]
    • changedOutput schema / properties / data / items / properties / postingtext / type
      Previous value: -"string"New value: +[
      +  "string",
      +  "null"
      +]
    • changedOutput schema / properties / data / items / properties / receipts_assigned_amounts / type
      Previous value: -"string"New value: +[
      +  "string",
      +  "null"
      +]
    • changedOutput schema / properties / data / items / properties / receipts_assigned_counterparties / type
      Previous value: -"string"New value: +[
      +  "string",
      +  "null"
      +]
    • changedOutput schema / properties / data / items / properties / receipts_assigned_dates / type
      Previous value: -"string"New value: +[
      +  "string",
      +  "null"
      +]
    • changedOutput schema / properties / data / items / properties / receipts_assigned_ids_by_customer / type
      Previous value: -"string"New value: +[
      +  "string",
      +  "null"
      +]
    • changedOutput schema / properties / data / items / properties / receipts_assigned_invoice_numbers / type
      Previous value: -"string"New value: +[
      +  "string",
      +  "null"
      +]
    • changedOutput schema / properties / data / items / properties / receipts_assigned_links / type
      Previous value: -"string"New value: +[
      +  "string",
      +  "null"
      +]
    • changedOutput schema / properties / data / items / properties / receipts_assigned_types / type
      Previous value: -"string"New value: +[
      +  "string",
      +  "null"
      +]
    • changedOutput schema / properties / data / items / properties / receipts_assigned_vat_rates / type
      Previous value: -"string"New value: +[
      +  "string",
      +  "null"
      +]
    • changedOutput schema / properties / data / items / properties / tax_key / type
      Previous value: -"string"New value: +[
      +  "string",
      +  "null"
      +]
    • changedOutput schema / properties / data / items / properties / transaction_purpose / type
      Previous value: -"string"New value: +[
      +  "string",
      +  "null"
      +]
    • changedOutput schema / properties / data / items / properties / vat / type
      Previous value: -"string"New value: +[
      +  "string",
      +  "null"
      +]
  2. Changed5 schema fields changedv1.1.3
    • changedOutput schema / properties / data / items / properties / booking_number / type
      Previous value: -"string"New value: +[
      +  "string",
      +  "integer"
      +]
    • changedOutput schema / properties / data / items / properties / date_delivery / type
      Previous value: -"string"New value: +[
      +  "string",
      +  "null"
      +]
    • changedOutput schema / properties / data / items / properties / receipt_id_by_customer / type
      Previous value: -"string"New value: +[
      +  "string",
      +  "null"
      +]
    • changedOutput schema / properties / data / items / properties / transaction_amount / type
      Previous value: -"string"New value: +[
      +  "string",
      +  "null"
      +]
    • changedOutput schema / properties / data / items / properties / transaction_id_by_customer / type
      Previous value: -"string"New value: +[
      +  "string",
      +  "null"
      +]
  3. Addedv1.1.2

TDQS

A3.9/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint and destructiveHint, so the emoji READ-ONLY banner is largely redundant. The description does add real behavior beyond them: the hard 1000-postings-per-request cap and the row-count-plus-array response shape, plus a warning against wide unbounded paging. No permission or rate-limit detail, so not a 5.

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

Conciseness4/5

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

Short and front-loaded: the safety banner, the one-line purpose, the response shape and the limit warning all appear before the usage note. It loses a little to redundancy, repeating the title as "**get postings**" and restating the read-only hint already carried by annotations.

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

Completeness4/5

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

An output schema exists, so return values need not be spelled out, yet the description still notes the row count and postings array. For an 11-parameter filtered read with a 1000-row cap, the essential operational facts (cap, bounding advice, response envelope) are present; only cross-tool routing is missing.

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

Parameters3/5

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

Schema description coverage is 100%, so the schema already documents all 11 parameters, including limit, offset, order and date formats. The description only reiterates limit/offset and date-range filtering without adding syntax or semantic detail beyond the schema; baseline 3 applies.

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

Purpose4/5

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

States a specific verb and resource: "Get postings for a specified customer account", and identifies the underlying domain (booking journal). An agent can tell this is a read tool over postings rather than transactions or receipts, though it never names the sibling (e.g. transactions_list) it should be preferred over.

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

Usage Guidelines4/5

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

"Use to read the booking journal, filtered by date range or posting account" plus "Ask for a bounded date range rather than paging through a whole financial year" gives concrete usage advice and even a strategy warning. It stops short of explicit when-not conditions or named alternatives among the many sibling list/get tools.

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