Skip to main content
Glama

Explain one transaction's routing and origin

explain_transaction

Classify a single transaction against the attribution engine: which frontend or router originated the trade and by which evidence, the pools it touched, any fee recipients, and whether it was sandwiched.

Confidence is per-vector and is reported per result -- a calldata suffix is strong evidence a specific frontend tagged the swap, while a fee recipient is indirect evidence and is never rated high. Pass that qualification through instead of stating the frontend flatly.

estimated_volume_usd (only with price=true) is a best-effort spot price on the dominant leg. It is an approximation for orientation and must never be quoted as a settlement figure. Fee amounts are exact raw token integers with no decimals or pricing applied. deep=true costs more upstream credits; leave it off unless a shallow classification came back unattributed.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
deepNo
chainNoethereum
priceNo
tx_hashYes

TDQS

A4.1/5.0
Behavior5/5

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

With no annotations provided, the description carries the full transparency burden and does so well. It discloses per-vector confidence and its interpretation, warns that a fee recipient is indirect and never rated high, states that `estimated_volume_usd` is only an approximation and must not be quoted as settlement, and reveals that `deep=true` costs extra upstream credits. These are non-obvious behavioral details beyond the schema.

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

Conciseness5/5

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

The description is front-loaded with the core purpose, then follows with dense but decision-relevant caveats about confidence, pricing, fee formatting, and `deep` cost. Every sentence earns its place; there is no filler or repetition.

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?

For a tool with no annotations, no output schema, and 0% schema parameter descriptions, this is a strong level of context. It explains the key result dimensions, evidence reliability, the approximate nature of estimated volume, exactness of fee integers, and the `deep` trade-off. It is not fully complete because it omits supported `chain` values and does not position this tool against the sibling attribution tools, but it covers everything essential for typical invocation.

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 description coverage is 0%, so the description must compensate. It adds real meaning to `deep` (credit cost and when to use), `price` (enables `estimated_volume_usd`), and transaction identification. However, the `chain` parameter is not explained at all, including what values are supported, even though the schema only provides a default of `ethereum`.

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?

The description clearly specifies the verb ('Classify'), the resource ('a single transaction'), and the detailed outputs: originating frontend or router, evidence, pools touched, fee recipients, and sandwich status. It is easy to tell what the tool does, but it does not explicitly contrast itself with the similarly named sibling tools `attribution` and `contract_attribution`, so it stops short of full differentiation.

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

Usage Guidelines3/5

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

The description provides useful conditional guidance for the `deep` parameter ('leave it off unless a shallow classification came back unattributed') and qualifies when `price=true` matters. However, it never explicitly says when to choose this tool over the sibling attribution tools, leaving when-not-to-use and alternative selection mostly implicit.

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.2/5.0
Disambiguation5/5

Each tool targets a distinct concern: aggregate attribution, per-address attribution, execution quality, transaction classification, gas prices, revert rates, and API key management. Even the closest pair (execution_benchmarks vs revert_rates) is clearly separated by the descriptions, which explicitly warn against conflating them.

Naming Consistency3/5

All names use snake_case, but the pattern is mixed: some tools are noun phrases (attribution, contract_attribution, execution_benchmarks, gas_prices, revert_rates) while others are imperative verbs (explain_transaction, request_api_key). This is readable and mostly conventional, but not a uniform verb_noun pattern.

Tool Count5/5

Seven tools is well-scoped for a specialized DEX attribution analytics server. Each tool covers a meaningful capability without redundancy or bloat.

Completeness4/5

The core workflow is well covered: aggregate volume attribution, single-contract lookup, execution quality, transaction explanation, revert risk, and gas context. Minor gaps exist around chain discovery and historical time-range selection, but agents can accomplish the main analysis tasks without dead ends.

Resources