About yield-strategies
yield-strategies is a reference skill for querying DeFi yield pools with defillama:get_yield_pools. It helps users compare yields, borrowing costs, pool capacity, and historical volatility while interpreting APY values correctly.
Key features
- 01Filter by token, chain, protocol, or category
- 02Sort pools by APY and TVL
- 03Query historical APY and TVL
- 04Review volatility and borrowing costs
- 05Assess pool capacity using TVL
Use cases
- 01Find stablecoin lending yields
- 02Compare ETH-family pools above a TVL threshold
- 03Check borrowing costs on a chain
- 04Review yield history and volatility
MCP support
The skill documents the defillama:get_yield_pools tool and its parameters for MCP-based queries.
Install
Copy the command and run it in a terminal.
npx skills add https:/ / github.com/ defillama/ defillama-skills --skill yield-strategiesAfter installing, type/yield-strategiesin Claude Code to confirm it loaded.
Details
From the project READMEDeFi Yield Strategies
APY Convention
APY values are already percentages: apy = 2.32 means 2.32%.
Do NOT multiply by 100. This is the most common mistake when working with yield data.
Tool: defillama:get_yield_pools
Filtering Guide
| Want | Parameter | Example |
|---|---|---|
| Pools with specific token | token | "coingecko:ethereum" |
| Pools on specific chain | chain | "ethereum" |
| Pools from specific protocol | protocol | "aave" |
| Pools from protocol category | category | "Lending", "DEXes" |
| Only stablecoin pools | stablecoin_only | true |
| Minimum APY threshold | min_apy | 5 (= 5%) |
| Minimum TVL | min_tvl | 1000000 (= $1M) |
| Include borrow-side data | include_borrow | true |
Key Distinction
- "ETH pools" = token filter:
token: "coingecko:ethereum" - "Pools on Ethereum" = chain filter:
chain: "ethereum"
Token Family Matching
The token param expects canonical token keys (e.g., coingecko:ethereum) and uses dim.pool_set() for family resolution. coingecko:ethereum finds pools containing ETH, wETH, stETH, cbETH, and all other variants in the ETH family -- not just native ETH.
Sort Options
sort_by accepts strings like: "apy desc", "tvl desc", "apy_base desc", "apy_reward desc"
Returned Columns
Each result includes: symbol, protocol (sub-protocol slug), parent_protocol, category, chain, apy, apy_base, apy_reward, apy_base_borrow, apy_reward_borrow, tvl, total_supply, total_borrow
Historical Data & Volatility
- Use
periodparam (7d,30d,90d,180d,365d) for daily APY/TVL time-series history - Use
include_volatility: trueto add APY volatility stats (apy_avg_30d,apy_median_30d,apy_std_30d,cv_30d) — current queries only - Use
start_date/end_datefor custom date ranges (overridesperiod)
Borrowing Costs
For lending protocols, borrowing rate data is available:
apy_base_borrow: Base borrowing cost (what you pay)apy_reward_borrow: Reward offset on borrowing (incentives you earn)- Net borrow cost =
apy_base_borrow - apy_reward_borrow
Use include_borrow: true to ensure borrow columns are populated.
Capacity Assessment
When allocating capital, check pool TVL. Allocating more than 10% of a pool's TVL may cause significant rate impact or slippage. Larger pools absorb capital more easily.
Examples
Example 1:
User: "Best stablecoin lending yields"
Tool call: defillama:get_yield_pools(stablecoin_only: true, category: "Lending", sort_by: "apy desc")
Example 2:
User: "Top ETH yield pools with over $1M TVL"
Tool call: defillama:get_yield_pools(token: "coingecko:ethereum", min_tvl: 1000000, sort_by: "apy desc")
Example 3:
User: "Cheapest borrowing rates for stablecoins on Arbitrum"
Tool call: defillama:get_yield_pools(stablecoin_only: true, chain: "arbitrum", category: "Lending", include_borrow: true, sort_by: "apy_base_borrow asc")
Example 4:
User: "Where can I earn yield on USDC?"
Tool call: defillama:get_yield_pools(token: "coingecko:usd-coin", sort_by: "apy desc", min_tvl: 100000)
Example 5:
User: "Aave yields on Ethereum"
Tool call: defillama:get_yield_pools(protocol: "aave", chain: "ethereum", sort_by: "apy desc")