get_protocol_inflows
Retrieve inflow and outflow data for a specific protocol at a given timestamp. Use this tool to analyze liquidity movements in crypto protocols by specifying the protocol slug and timestamp.
Instructions
GET /api/inflows/{protocol}/{timestamp}
Lists the amount of inflows and outflows for a protocol at a given date.
Parameters:
protocol: protocol slug (e.g., 'compound-v3')
timestamp: unix timestamp (e.g., 1700006400)
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| protocol | Yes | ||
| timestamp | Yes |
Implementation Reference
- defillama_server.py:51-62 (handler)The handler function decorated with @mcp.tool(), implementing the tool logic by calling the DefiLlama API endpoint for protocol inflows and outflows. Includes input parameters, docstring description (serving as schema), and the core execution.@mcp.tool() async def get_protocol_inflows(protocol: str, timestamp: int) -> str: """GET /api/inflows/{protocol}/{timestamp} Lists the amount of inflows and outflows for a protocol at a given date. Parameters: protocol: protocol slug (e.g., 'compound-v3') timestamp: unix timestamp (e.g., 1700006400) """ result = await make_request('GET', f'/api/inflows/{protocol}/{timestamp}') return str(result)
- defillama_server.py:30-38 (helper)Shared helper function used by get_protocol_inflows (and other tools) to make HTTP requests to the DefiLlama 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)}"