search_cost_center_transactions
Search individual transactions. Returns period, cost_center, account, amount, description, transaction_date (day-exact booking date), contra_account, sub_account, contra_sub_account (sub-account of the account/contra account, null if none), plus id (use this as transaction_id for propose-transaction-correction) and source ("upload" or "manual"). Each row also reports correction_status ("none" | "pending" | "corrected") and correction_role (null | "reversal" | "rebooking") so you can see whether a booking already has an open or approved correction, or is itself the reversal/re-booking line of one — check this before calling propose-transaction-correction to avoid duplicate proposals. With truncated=true not all matches were loaded — FIRST call the tool again with a higher limit_count (default 200, maximum 1000); only if limit_count=1000 still returns truncated=true, narrow down via periods/cost_centers/accounts/text_query/date_from/date_to. Never claim 'no further data'. Use available_range. text_query searches the term literally as a case-insensitive substring in description OR reference; % and _ are NOT wildcards but are searched as characters ("25%" only finds "25%", not "2500"). With group_by the tool returns bookings grouped by period and/or cost center instead of the flat row list. Take counts only from total_count (returned bookings), group_count (groups) or transaction_count per group — never count yourself and never state limit_count as a count. This tool returns individual bookings; for sums (per month, cost center or account) call compute_aggregates instead of adding up the rows yourself. If the user names a cost center (e.g. "Betriebsrat"), call get_cost_center_list FIRST to resolve its number; never guess the number.
Tool call template
This tool declares no required parameters. Add optional parameters from the input schema as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {},
"name": "search_cost_center_transactions"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| date_to | No | Day-exact upper bound on transaction_date, inclusive (YYYY-MM-DD). Omit for no upper bound. | |
| periods | No | ||
| accounts | No | ||
| group_by | No | Optional. Groups the matching bookings by these fields instead of returning a flat row list — the response then carries `groups` (each with transaction_count and transactions_truncated) instead of `rows`. Omit it when you want the individual bookings. | |
| date_from | No | Day-exact lower bound on transaction_date, inclusive (YYYY-MM-DD). Omit for no lower bound. | |
| text_query | No | Literal case-insensitive substring, matched against description OR reference. %, _ and \ are searched as characters, not as wildcards. | |
| limit_count | No | Max rows (default: 200, max: 1000) | |
| cost_centers | No |