Skip to main content
Glama
aiexp1

Tanod MCP server

utilpeek: stablecoin peg check (USDC, USDT, DAI, USDe, PYUSD) from on-chain Uniswap pools, in basis points

check_stablecoin_peg
Read-onlyIdempotent

Check whether USDC, USDT, DAI, USDe, or PYUSD holds its dollar peg using on-chain Uniswap V3 prices, with deviation and on/off-peg status.

Instructions

utilpeek: Check stablecoin peg: is USDC, USDT, DAI, USDe or PYUSD holding its dollar peg. For supply by chain use get_stablecoin_supply. Returns whether USDC, USDT, DAI, USDe or PYUSD holds its dollar peg, from Ethereum Uniswap V3 pools: price_usd, deviation_bps, on_peg / watch / off_peg status (50 and 200 bps), the pools and their depth, and the read time. Indicative on-chain prices, not an oracle; non-USDC coins are priced in USDC and USDC by cross-check; pools read at most every 30 s; a failed coin is in errors; all coins failing is a 502 and an unknown coin a 422 (neither charged). Typically 1 to 4 s (one chain read), under 100 ms when cached. Price: USD 0.001. Free: 10 utilpeek calls per IP per UTC day. Docs: https://tanod.dev/learn/stablecoin-peg-check-api.html

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
coinsNoStablecoins to check, any of USDC, USDT, DAI, USDe and PYUSD (case does not matter). Omit for all five; an unknown coin is a 422 that lists the supported ones.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
age_sNo
blockNo
chainNo
coinsNo
errorNoOnly on an error result: an object {code, message}, or the reason string of an x402 PaymentRequired object.
cachedNo
errorsNo
methodNo
licenceNo
read_atNo
warningsNo
timestampNo
disclaimerNo
indicativeNo
quote_assetNo
thresholds_bpsNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.3.0

TDQS

A4.6/5.0
Behavior5/5

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

Annotations already declare readOnly/idempotent/non-destructive, yet the description adds substantial context beyond them: indicative-not-oracle caveat, the USDC cross-check pricing method, the 30s pool read cadence, error handling (failed coin in `errors`, 502/422 outcomes), no-charge behavior for failures, latency, price, and free-tier rate limits. This is a genuinely rich behavioral disclosure.

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?

Front-loaded with the core purpose and well organized, but the asset list is repeated across the title and both first sentences, and pricing/latency/limits are packed densely. Slightly redundant but every sentence carries operational value.

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?

Complete for a zero-required-param read tool: purpose, alternative, error/status mapping, cost, and rate limits are all present, and an output schema exists to cover return values. Nothing an agent needs to invoke it correctly is missing.

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% and the schema already documents coins, case-insensitivity, omit-for-all default, and the 422 unknown-coin behavior. The description largely restates this, so the baseline 3 is appropriate — it adds no syntax or semantics 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?

States a specific verb+resource ('Check stablecoin peg') and enumerates the exact assets covered (USDC, USDT, DAI, USDe, PYUSD) and the source (Ethereum Uniswap V3 pools). It explicitly names and routes away from the sibling get_stablecoin_supply, so an agent can distinguish the two without opening either schema.

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

Usage Guidelines5/5

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

Provides an explicit alternative with its selecting condition: 'For supply by chain use get_stablecoin_supply,' which contrasts against this peg-check scope. The purpose sentence itself makes the when-to-use obvious (checking peg status). This matches the high-bar pattern of naming the sibling to use instead.

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

Deploy Server

Other Tools