Skip to main content
Glama
aiexp1

Tanod MCP server

chainpeek: DeFi TVL (total value locked) of a protocol or chain with 1-day and 7-day change (cached DefiLlama data)

get_protocol_tvl
Read-onlyIdempotent

Get total value locked (TVL) for a DeFi protocol or blockchain, including 1-day and 7-day changes, from cached DefiLlama data.

Instructions

chainpeek: Get protocol or chain TVL with 1d and 7d change. For fees and revenue use get_protocol_fees; for DEX volume use get_dex_volume. Returns the TVL of a protocol or chain with 1d and 7d change, the protocol's chains or the chain's largest protocols, or the largest chains and protocols, from Tanod's cache of DefiLlama data. Input: optional protocol, optional chain and limit; give one, both or neither. Cached DefiLlama data (refreshed every few hours), never live; as_of shows its age; an unknown name is a 422 with suggestions and a missing or over-2-day-old cache a 503 (neither charged). Informational only. Typically under 1 s (a local cache read). Price: USD 0.004. Free: 10 chain reads per IP per UTC day. Docs: https://tanod.dev/learn/defi-data-api.html

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
chainNoChain name, e.g. Ethereum, Base, Solana, BSC, Arbitrum (common aliases such as bnb and eth work). With protocol: that protocol's TVL on the chain. Alone: the chain and its largest protocols.
limitNoRows in a ranking or a breakdown, 1-50 (default 10).
protocolNoProtocol name or slug, e.g. aave, uniswap-v3, lido (a parent such as aave sums its versions). Omit for a chain or the overview. An unknown name is a 422 with suggestions.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
noteNo
as_ofNo
chainNo
errorNoOnly on an error result: an object {code, message}, or the reason string of an x402 PaymentRequired object.
scopeNo
staleNo
reasonNo
sourceNo
protocolNo
top_chainsNo
other_matchesNo
top_protocolsNo
cache_age_hoursNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.3.0

TDQS

A4.8/5.0
Behavior5/5

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

Annotations cover safety (readOnly, idempotent, non-destructive), but the description adds substantial context: cached DefiLlama data refreshed every few hours and never live, `as_of` for cache age, 422 with suggestions on unknown names, 503 on missing/over-2-day-old cache with no charge, sub-second local reads, USD 0.004 price, and a 10-read/day free tier. This is unusually 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 purpose and sibling routing are excellent, but the middle sentence ("Returns the TVL of a protocol or chain with 1d and 7d change, the protocol's chains or the chain's largest protocols...") restates the opening and is denser than needed. Overall efficient, with mild redundancy.

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?

An output schema exists, so return values need no explanation. The description still covers freshness, error codes, latency, pricing, and rate limits — everything an agent needs to call it correctly given the tool's complexity.

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%, so per-parameter meaning is already documented. The description still adds cross-parameter semantics ("give one, both or neither") and the composed behavior of protocol+chain, which is value beyond the schema — though it stops short of detailing all combination outputs.

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?

Starts with a specific verb and resource ("Get protocol or chain TVL with 1d and 7d change") and immediately contrasts itself with two named siblings, get_protocol_fees and get_dex_volume. An agent can distinguish this from every other DeFi-data tool without opening a 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?

Explicitly routes the agent: "For fees and revenue use get_protocol_fees; for DEX volume use get_dex_volume." It also states the input combinations ("give one, both or neither") and what each produces, leaving nothing to inference.

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