Skip to main content
Glama

Quote a trade on Canton DEXes

quote
Read-onlyIdempotent

Best execution for selling amount of token sell (or amount_usd worth) for token buy, on every venue that can make the trade on its own markets in one or two swaps: an AMM pool (Cantex, Tradecraft, OneSwap, Pool Party), an order book (Temple, Rocky), or two of them in a row on the same venue (Temple: CC to USDCx, then USDCx to CBTC; Pool Party: CC to USDC.B, then USDC.B to CBTC). The same comparison as the site's best execution, at any size. Pool fees, book fees and price impact are included; after_network_fee also takes off the venue's per-trade network fee on each swap (the fee table, with which fees are measured, documented or assumed, is in network_fees). A pool whose reserves have stood still while its price left the market is no market here (not_trading). A venue whose route takes an order book that shows more of a token than exists (a side larger than its registry's total supply) carries book_shows_more_than_exists: its price, not a size it can fill.

Input Schema

NameRequiredDescriptionDefault
buyYesSymbol of the token bought, e.g. USDCx
sellYesSymbol of the token sold, e.g. CC
amountNoHow much of the sold token, in its own units. Give this or amount_usd, not both
amount_usdNoSize of the sale in US dollars at our price of the sold token. Give this or amount, not both

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed4 schema fields changed
    • addedInput schema / properties / amount / description
      Added value: +"How much of the sold token, in its own units. Give this or amount_usd, not both"
    • addedInput schema / properties / amount_usd / description
      Added value: +"Size of the sale in US dollars at our price of the sold token. Give this or amount, not both"
    • addedInput schema / properties / buy / description
      Added value: +"Symbol of the token bought, e.g. USDCx"
    • addedInput schema / properties / sell / description
      Added value: +"Symbol of the token sold, e.g. CC"
  2. First observed

TDQS

A3.5/5.0
Behavior4/5

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

Annotations already declare a safe, idempotent read, and the description adds real behavioral detail beyond them: which venues and route shapes are covered, that pool/book fees and price impact are baked in, that stale-reserve pools are excluded as `not_trading`, and that books showing more than total supply are flagged via `book_shows_more_than_exists`. What it omits is how those flags surface in the response and any latency or size-limit behavior.

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

Conciseness3/5

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

The core purpose is front-loaded in the first clause, and nearly every phrase carries information, but the definition is a single sprawling sentence with stacked parentheticals and exchange jargon that is hard to scan. It is dense rather than padded, yet the structure works against quick comprehension.

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?

For a read-only quoting tool with no output schema, the description should explain what comes back; instead it only alludes to a few response fields (`after_network_fee`, `not_trading`, `book_shows_more_than_exists`) without describing the result structure or how the best route is selected. It is also incomplete in that `after_network_fee` is discussed as an input but is absent from the schema.

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 description coverage is 100%, so the schema already documents sell, buy, amount and amount_usd, making 3 the baseline. The description adds only a little (restating the amount-or-amount_usd choice and 'at any size') and introduces a mismatch by referencing `after_network_fee` as if it were an input, when no such parameter exists in the schema.

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 opening clause names a concrete verb and resource: best-execution quoting of a sell/buy token pair across named Canton venues (Cantex, Temple, Rocky, etc.), with one- or two-swap route limits. An agent can tell this is a pricing/quote tool rather than a lookup or alert tool. It does not, however, distinguish itself from siblings like check_trade or exit_cost, which also sound trade-related.

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?

Usage is implied ('Best execution for selling...', 'The same comparison as the site's best execution, at any size'), so an agent can infer this is the pre-trade quoting call. But there is no explicit when-to-use/when-not guidance and no routing to alternatives such as check_trade or exit_cost, leaving the agent to guess which pricing tool to pick.

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.