Get Protocol Tvl
get_protocol_tvlGet Total Value Locked for one or many DeFi protocols from DeFiLlama: current USD TVL, 7/30-day change, fees and revenue when reported, per-chain breakdown, and optional daily historical series. Batch multiple protocols via protocols=[...] — batch responses return one compact economic summary per protocol; single-protocol calls add chain and historical detail. Supports 3,000+ protocols; use DeFiLlama slugs ('aave-v3', 'uniswap-v3'); common aliases are auto-corrected.
Use when: Use for protocol-level economic questions — size, growth, fees, or revenue of a specific protocol. For 2+ protocols always batch in one call rather than calling per-protocol. Pass include_historical=true with days when a trend is needed; without it the response is a current TVL scalar. For ecosystem-level chain comparisons use get_chain_metrics instead.
Limitations: Third-party DeFiLlama analytics, not on-chain truth. Upstream revenue failures surface as revenue_error_type and null economic fields are data gaps — never fabricate values for them.
Alternatives: get_chain_metrics, get_yield_rates, get_dex_volume
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| days | No | Lookback window in days for the historical series (only used when include_historical=True). | |
| protocol | No | DeFiLlama protocol slug (e.g. 'aave-v3', 'uniswap-v3', 'curve-dex'). Use lowercase with hyphens as shown on DeFiLlama. Tip: 'aave' works for the combined Aave TVL; 'aave-v3' for V3 only. Optional when using batch mode via protocols=[...]. | |
| protocols | No | Optional batch mode: list of DeFiLlama protocol slugs. When provided, the tool returns one TVL result object per protocol. | |
| include_historical | No | If true, return a daily historical TVL series for the requested window. |