Skip to main content
Glama

Best DeFi yields by chain and token (DefiLlama) ($0.001)

defi_yields
Read-onlyIdempotent

PAID ($0.001 USDC via x402). Where a token earns the most, from DefiLlama's yield index: pools filtered by chain (default Base; "all" for every chain), token symbol (USDC, ETH, cbBTC…), stablecoin-only and a minimum TVL (default $1M), sorted by APY or TVL — each with total, base (fees/interest) and reward APY, the 30-day mean, 7-day change, IL risk, exposure and a DefiLlama link. Statistical outliers are excluded unless includeOutliers is true. Data, not financial advice. Without payment this returns the 402 challenge; the fiatdock-mcp npm package pays automatically. Any answer the tool cannot produce is >= 400 and is NOT charged.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
sortNoOrder: apy (highest first, default) or tvl
chainNoChain as DefiLlama names it (Base, Ethereum, Arbitrum, Optimism, Polygon, Solana, …), default Base; "all" for every chain
limitNoHow many pools, 1-50, default 10
symbolNoOnly pools holding this token symbol (e.g. USDC, ETH, cbBTC)
paymentNoBase64 of a single x402 v2 PaymentPayload (EIP-3009 transferWithAuthorization on Base USDC). OMIT it on the first call: the 402 you get back carries `howToPay.payloadTemplate` — the exact envelope to fill in — plus the price and the EIP-712 domain. Send it on the second call to complete the purchase; it is forwarded as the PAYMENT-SIGNATURE header, never as body data. Nothing is charged for the 402 itself, and a call that fails after payment settles nothing.
minTvlUsdNoMinimum pool TVL in USD (default 1,000,000)
stablecoinOnlyNoOnly pools DefiLlama classifies as stablecoin pools (default false)
includeOutliersNoInclude pools DefiLlama flags as statistical outliers (default false)

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
asOfYesISO time the yield index was read
noteYesHow the APY figures are built, and their limits
countYesPools returned
poolsYesThe pools, ordered by the requested sort
queryYesThe filters applied (defaults filled in)
sourceYesWhere the data came from
matchedYesPools that matched before the limit

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4.6/5.0
Behavior5/5

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

Annotations only declare read-only/idempotent/open-world, but the description discloses behavior annotations cannot: the $0.001 x402 charge, the two-call 402 challenge flow, that failures are not charged, and that statistical outliers are dropped unless includeOutliers is true. That is rich, non-redundant operational context.

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 paid/402 caveat is front-loaded and every clause carries information, but the second sentence crams filters, output fields, and outlier behavior into a single dense run-on. It is appropriately sized for an 8-param paid tool yet could be parsed more easily.

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 an output schema exists, return values need not be enumerated, yet the description covers the fields, defaults, outlier handling, payment/error semantics (>=400 not charged), and the auto-paying client. An agent has everything needed to call and pay correctly.

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 already 100%, so the schema carries the parameter burden. The description still adds value beyond it by restating defaults (Base, $1M TVL) and by explaining the payment/retry lifecycle and the outlier-exclusion default, which are semantics the enum and type fields alone would not convey.

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 resource (DeFi yield pools) and the exact question it answers ("Where a token earns the most"), names DefiLlama as the source, and its scope is clearly distinct from siblings like token_price or stablecoin_intel. An agent can select it without reading the schema.

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?

The description gives concrete selection context — filter by chain, symbol, stablecoin-only, min TVL, sort by APY/TVL — and notes the default chain and TVL floor, which tells the agent what it gets without arguments. It stops short of naming a sibling alternative or an explicit when-not-to-use condition, so it falls short of a 5.

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.