get_historical_chain_tvl
Retrieve historical Total Value Locked data for DeFi across all blockchain chains, excluding liquid staking and double-counted TVL, to analyze decentralized finance trends over time.
Instructions
GET /api/v2/historicalChainTvl
Get historical TVL (excludes liquid staking and double counted tvl) of DeFi on all chains.
Tool call template
This tool declares no required parameters. Add optional parameters from the input schema as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {},
"name": "get_historical_chain_tvl"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| result | Yes |
Implementation Reference
- defillama_server.py:94-101 (handler)The handler function for the 'get_historical_chain_tvl' MCP tool. It is registered via the @mcp.tool() decorator, which also infers the schema from the docstring (no parameters). The function calls the DefiLlama API endpoint /api/v2/historicalChainTvl and returns the JSON response as a string.
@mcp.tool() async def get_historical_chain_tvl() -> str: """GET /api/v2/historicalChainTvl Get historical TVL (excludes liquid staking and double counted tvl) of DeFi on all chains. """ result = await make_request('GET', '/api/v2/historicalChainTvl') return str(result) - defillama_server.py:30-38 (helper)Shared helper function used by all DefiLlama API tools, including get_historical_chain_tvl, to make HTTP requests to the API.
async def make_request(method: str, endpoint: str, params: Optional[Dict[str, Any]] = None) -> Any: """Make a request to the DefiLlama API.""" try: response = await client.request(method, endpoint, params=params) response.raise_for_status() return response.json() except Exception as e: return f"Error: {str(e)}" - defillama_server.py:96-99 (schema)Docstring providing the tool description, which FastMCP uses to generate the tool schema. No input parameters are defined.
"""GET /api/v2/historicalChainTvl Get historical TVL (excludes liquid staking and double counted tvl) of DeFi on all chains. """ - defillama_server.py:94-94 (registration)The @mcp.tool() decorator registers the function as an MCP tool with the name 'get_historical_chain_tvl'.
@mcp.tool()