Skip to main content
Glama

netcafe-tables

match transactions

match_transactions

Match bank statement lines to ledger/invoice entries when there is NO shared key — by amount, date window, reference numbers found inside free-text descriptions, and fuzzy counterparty names ("北京XX科技" vs "XX科技(北京)"). Handles split payments (one invoice paid in instalments, 1:N) and combined payments (one transfer covering several invoices, N:1). Its rule is: never guess — a pair is only auto-match

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
url_aNo
url_bNo
text_aNo
text_bNo
sheet_aNo
sheet_bNo
fee_toleranceNo
max_group_sizeNo
date_window_daysNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed9 schema fields changed
    • addedInput schema / properties / date_window_days
      Added value: +{}
    • addedInput schema / properties / fee_tolerance
      Added value: +{}
    • addedInput schema / properties / max_group_size
      Added value: +{}
    • addedInput schema / properties / sheet_a
      Added value: +{}
    • addedInput schema / properties / sheet_b
      Added value: +{}
    • addedInput schema / properties / text_a
      Added value: +{}
    • addedInput schema / properties / text_b
      Added value: +{}
    • addedInput schema / properties / url_a
      Added value: +{}
    • addedInput schema / properties / url_b
      Added value: +{}
  2. Added

TDQS

A3.8/5.0
Behavior3/5

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

With no annotations, the description carries the burden. It discloses a key behavioral rule ('never guess') and mentions handling split/combined payments, but omits side effects (e.g., whether it modifies inputs), output format, or behavior on unmatched pairs. It gives some transparency but lacks completeness for a complex matching operation.

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?

The description is packed with useful information in a single, dense paragraph. It front-loads the primary purpose and then details matching criteria, edge cases, and a rule. While it's not verbose, the density could be improved with clearer structure (e.g., bullets), but it remains concise without wasteful sentences.

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

Completeness3/5

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

Given 9 parameters, no annotations, and no output schema, the description should cover more. It explains the matching logic and edge cases, but leaves out critical context: what url_a/url_b represent, input formats, expected outputs, and any prerequisites. It's adequate for understanding the core function but incomplete for full operational use.

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 coverage is 0%, so the description must explain parameters. It references amount, date window ('date_window_days'), text fields for reference numbers and fuzzy names, and mentions 'max_group_size' possibly for split/combined handling. However, it doesn't systematically map all 9 parameters (e.g., fee_tolerance, url_a) or clarify what each does, leaving gaps.

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?

The description clearly states the tool matches bank statement lines to ledger/invoice entries when there is no shared key, listing specific criteria (amount, date window, reference numbers, fuzzy names) and handling split/combined payments. It distinguishes from siblings by focusing on shared-key absence, making its purpose specific and actionable.

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?

It explicitly states the tool is for situations 'when there is NO shared key', giving a clear trigger condition. It also mentions handling split and combined payments, which clarifies applicability. However, it doesn't name alternatives or explicitly state when not to use it, but the context is sufficient for a high score.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.