Skip to main content
Glama

reconcile_ledger

Matches invoices to payments and lists exceptions—underpaid, overpaid, duplicate, currency mismatch, overdue unpaid, unmatched, ambiguous—for ledger reconciliation.

Instructions

Match invoices to payments and list every exception.

Exception kinds: underpaid, overpaid, duplicate_payment, currency_mismatch, overdue_unpaid, unmatched_payment, ambiguous_payment.

Args: as_of: ISO date used to decide which unpaid invoices are overdue. amount_tolerance: max difference (same currency) still treated as equal. date_window_days: how far after issue date a reference-less payment can land. include_matches: also return every matched invoice (large output).

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
as_ofNo2026-10-01
include_matchesNo
amount_toleranceNo
date_window_daysNo

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A3.8/5.0
Behavior4/5

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

With no annotations, the description carries the full burden and does well: it enumerates the seven exception kinds, explains what as_of decides, and warns that include_matches produces a 'large output'. It is silent on whether the operation is purely read-only, on required permissions, and on failure modes, which keeps it short of 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?

Purpose is front-loaded, followed by the exception taxonomy and then the args, so the most selection-relevant information comes first. The 'Args:' block is a fragment list rather than prose but every line is informative and non-redundant.

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 re-explained, and the description covers purpose, exception vocabulary, and all four parameters. Against zero annotation coverage the only real gap is the safety/mutation profile, which is not stated.

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

Parameters5/5

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

Schema description coverage is 0%, so the description must compensate, and it does: all four parameters get real semantics (as_of as the overdue cutoff, amount_tolerance as same-currency equality bound, date_window_days as the landing window for reference-less payments, include_matches as output expansion). This meaning could not be recovered from the bare parameter titles.

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 concrete verb+resource pair: 'Match invoices to payments and list every exception', naming the resource (invoices/payments) and the output (exceptions). It is distinguishable from siblings like vendor_balances (balances) and explain_exception (explains one), but it never names or contrasts a sibling explicitly.

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

Usage Guidelines2/5

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

There is no guidance on when to invoke this versus run_sql, vendor_balances, or explain_exception, and no stated prerequisites or exclusions. Usage must be inferred entirely from the purpose sentence.

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