Skip to main content
Glama

Compare screening runs

compare_screening_runs
Read-only

Compare two completed screens by their screeningId and see what changed. Costs zero credits. Two runs of the same address show why the reputation score moved. Two different addresses show a side by side. Returns each run score, band, and confidence, a reason level diff, and the score change broken into its drivers. Small differences between runs of one address can be normal variation rather than a data change.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
runIdAYesFirst screeningId (rsr_...). Must be a completed screen you own.
runIdBYesSecond screeningId (rsr_...). Must be a completed screen you own.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
modeYestemporal_delta when both runs are the same address, else side_by_side
runAYes
runBYes
reasonDiffYesWhat changed between the two runs at the reason level
scoreDeltaYesrunA score minus runB score
compositionDiffYesWhich score drivers differ between the runs

TDQS

A4.6/5.0
Behavior5/5

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

Annotations already mark readOnlyHint=true, so safety is covered. The description adds meaningful behavioral details: 'Costs zero credits,' what the response contains (score, band, confidence, reason level diff, drivers), and a caution about normal variation. The warning shows deeper behavioral understanding and helps set expectations. It does not contradict annotations.

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 front-loaded with the core purpose in the first sentence, follows with the credit cost, then the two scenarios, the return summary, and a caveat. All sentences add information and there is no filler. It is a bit longer than absolute minimum but justified by the need to explain the variable comparison semantics.

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?

Given the output schema exists and parameters are well-documented, the description adds the missing decision-making context: what the comparison tells you, when to use it, and how to interpret results. It is sufficient for an agent to select and invoke the tool with confidence.

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% for both runIdA and runIdB, so parameter basics are already documented. The description enriches parameter meaning by explaining the relationship between the two runs: they can be for the same address or different addresses, and the output interpretation depends on that relationship. This is value beyond 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?

The description opens with a specific verb+resource: 'Compare two completed screens by their screeningId and see what changed.' It clearly distinguishes from siblings like get_screening_history or get_screening_narrative by focusing on comparison between two runs. The two use cases (same address vs different addresses) further clarify its unique niche.

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 provides context for when to use: comparing two runs of the same address to explain a reputation score move, or two different addresses for a side-by-side. It also warns that small differences may be normal variation, which helps an agent interpret results and decide whether to trust a data change. However, it doesn't explicitly name alternative tools for exclusion, relying on the sibling list for contrast.

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.

TDQS

A4.4/5.0
Disambiguation4/5

Each tool has a distinct role: screen_address is the only credit-costing action, while get_credit_balance, histories, narrative, compare, and monitoring are clearly read/reporting tools. The only minor ambiguity is between get_screening_history and get_address_screening_history, but the descriptions clearly separate all-address history from single-address history.

Naming Consistency4/5

The dominant pattern is get_<noun>_<detail>, and screen_address is a clear imperative action. compare_screening_runs breaks the get_* pattern but still uses a recognizable verb-first structure, so naming is mostly consistent and predictable.

Tool Count5/5

Seven tools is well-scoped for a wallet reputation screening service: one core action, a balance check, two history views, a narrative fetcher, a comparison tool, and monitoring events. Each tool has a clear purpose and none feel redundant or peripheral.

Completeness4/5

The surface covers the core workflow: screen an address, retrieve narrative, review history, check credit, compare runs, and monitor events. A notable minor gap is the lack of a direct fetch for a single screening run by screeningId, though the history and compare tools partially work around this.

Resources