Graph AAVE MCP
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| GRAPH_API_KEY | Yes | API key for The Graph network |
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
| prompts | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| list_aave_chains | Use this when the user asks which AAVE chains are supported, wants to pick a network, or needs to discover available AAVE deployments. Returns all supported chains with their subgraph IDs, protocol version (V2/V3), chain name, 30-day query volume, and key entities. Chains: Ethereum, Base, Arbitrum, Polygon, Optimism, Avalanche, Fantom (V3 + V2 legacy), plus AAVE Governance V3. Always call this first if chain is ambiguous. |
| get_aave_reserves | Use this when the user asks about AAVE lending markets, available assets, supply APY, borrow APY, TVL, utilization rate, collateral factors, or liquidation thresholds on a specific chain. Returns all active reserves sorted by total liquidity (TVL). RATE CONVERSION: liquidityRate and variableBorrowRate are in RAY units (1e27). Supply APY % = liquidityRate / 1e27 * 100. Borrow APY % = variableBorrowRate / 1e27 * 100. Amounts are in native token units — divide by 10^decimals for human-readable. Ideal for: 'What assets can I lend on Arbitrum?', 'What is USDC supply rate on Base?', 'Show me all AAVE V3 markets on Polygon'. |
| get_aave_reserve | Use this when the user asks about a specific AAVE asset in detail — e.g. 'Tell me everything about USDC on Ethereum AAVE', 'What are the WETH borrow parameters?', 'What is the liquidation threshold for WBTC collateral?'. Returns full reserve config: current rates, TVL, LTV, liquidation parameters, lifetime stats (total borrows/repayments/liquidations), and token addresses. RATE CONVERSION: divide liquidityRate / variableBorrowRate by 1e27 * 100 for APY %. |
| get_aave_user_position | Use this when the user asks about a wallet's AAVE position — 'What is my health factor?', 'What have I supplied to AAVE?', 'How much have I borrowed?', 'Am I at risk of liquidation?', 'Show me my collateral and debt on Arbitrum'. Returns all supplied assets (with aToken balances), all borrowed assets (variable + stable debt), collateral flags, and e-mode category. Health Factor ≈ sum(collateral_i * price_i * liqThreshold_i) / sum(debt_i * price_i). HF < 1.0 = liquidatable. Amounts in native token units — divide by 10^decimals. |
| simulate_health_factor | Use this when the user wants to simulate how a price change affects their AAVE health factor — 'What happens to my health factor if ETH drops 20%?', 'How much can WBTC fall before I get liquidated?', 'Simulate a 30% drop in my collateral asset'. Fetches the user's full position, computes current health factor, then recalculates it after applying the specified price change to the target asset. Health Factor < 1.0 means the position is liquidatable. |
| get_recent_borrows | Use this when the user asks about recent borrowing activity on AAVE — 'Who has been borrowing USDC on Ethereum?', 'Show me recent WETH borrows on Arbitrum', 'What has address 0x... borrowed recently?', 'Show borrow volume by asset'. Returns borrow events with: borrower address, asset, raw amount, borrow rate, rate mode (variable=2/stable=1), and timestamp. Divide amount by 10^decimals for human-readable value. |
| get_recent_supplies | Use this when the user asks about recent deposit/supply activity on AAVE — 'Who has been supplying ETH on Base?', 'Show me recent USDC deposits on Polygon', 'What has address 0x... deposited recently?'. V3 chains use the 'supply' entity; V2 chains use 'deposit' — handled automatically. Returns: supplier address, asset symbol, raw amount, and timestamp. Divide amount by 10^decimals for human-readable value. |
| get_aave_liquidations | Use this when the user asks about AAVE liquidation events — 'Show me recent liquidations on Ethereum', 'Has address 0x... been liquidated?', 'Who are the top liquidators on Arbitrum?', 'What collateral is being seized most?'. Returns: liquidator address, liquidated user, collateral asset seized, debt asset repaid, amounts, and timestamp. Liquidations occur when a user's health factor drops below 1.0. |
| get_aave_repays | Use this when the user asks about AAVE debt repayment activity — 'Show me recent repayments on Ethereum', 'Has address 0x... repaid any debt?', 'What assets are being repaid most on Arbitrum?', 'Show USDC repay history'. Returns repay events with: repayer address, asset, raw amount, and timestamp. Divide amount by 10^decimals for human-readable value. |
| get_aave_flash_loans | Use this when the user asks about AAVE flash loans — 'Show me recent flash loans on Ethereum', 'What assets are flash-loaned most?', 'How much in flash loan fees has AAVE earned?'. Returns: initiator address, asset borrowed, amount, fee paid (totalFee), and timestamp. Flash loans must be borrowed and repaid within a single transaction. |
| get_reserve_rate_history | Use this when the user asks about historical AAVE rates or TVL trends — 'How has USDC supply rate changed over time?', 'Show me ETH borrow rate history on Polygon', 'What was the utilization rate last week?'. Returns timestamped snapshots of: liquidityRate, variableBorrowRate, stableBorrowRate, utilizationRate, availableLiquidity, totalLiquidity, totalCurrentVariableDebt. Rates are in RAY units (divide by 1e27 * 100 for APY %). Get the reserve ID from get_aave_reserves (the 'id' field = underlyingAsset + poolAddress). |
| find_best_rates | Use this when the user asks 'Where should I supply USDC for the best yield?', 'Which chain has the lowest WETH borrow rate?', 'Compare AAVE rates across chains for USDC', 'Best AAVE lending rates for DAI'. Queries all AAVE lending deployments in parallel for the given asset, then ranks by APY. Excludes Fantom (incompatible Messari schema) and skips anomalous pools. Returns a ranked table with chain, supply APY, variable borrow APY, utilization, and approx available liquidity. Includes a _recommendation field with the best option. |
| get_governance_proposals | Use this when the user asks about AAVE governance — 'Show me recent AAVE governance proposals', 'What proposals are currently active?', 'What is the status of AAVE proposal #X?', 'Show me governance voting activity'. Queries the AAVE Governance V3 subgraph on Ethereum. Returns: proposal ID, creator, access level (1=short executor/2=long executor), current state, voting duration (seconds), for/against votes, title, and payload info. Proposal states: Created=0, Active=1, Queued=2, Executed=3, Failed=4, Cancelled=5, Expired=6. |
| get_proposal_votes | Use this when the user asks about the vote totals on a specific AAVE governance proposal — 'How did proposal #X vote?', 'Show me the for/against breakdown for proposal #185', 'Did proposal #X pass?'. Returns aggregate vote totals: total forVotes and againstVotes for the proposal. Note: individual per-voter records are not indexed in this subgraph. |
| query_aave_subgraph | Use this when a pre-built tool doesn't cover the user's need — execute a raw GraphQL query against any AAVE chain's subgraph. Use get_aave_schema first to explore available entities and fields. Lending schema entities: reserves, userReserves, borrows, supplies (V3) / deposits (V2), repays, liquidationCalls, flashLoans, pool, protocol, reserveParamsHistoryItems. Governance schema entities: proposals, proposalVotes_collection, payloads, votingPortals, votingConfigs, proposalMetadata_collection. |
| get_aave_schema | Use this to introspect the full GraphQL schema for any AAVE chain's subgraph. Returns all queryable root fields and their types. Useful before writing a custom query_aave_subgraph call, or to understand what data is available on a specific chain/version. |
| get_at_risk_positions | Find Aave positions at risk of liquidation across 5 chains. Returns positions with health factor, risk score (0–100), risk level (critical/danger/warning), collateral, and debt amounts. Use when asked: 'Which positions are close to liquidation on Arbitrum?', 'Show me the riskiest Aave positions on Base', 'How many critical positions are there?' |
| get_user_risk_profile | Get a user's full liquidation risk profile on a specific chain — all their positions with health factors, risk scores, collateral, and debt. Use when asked: 'Is wallet 0x... at risk of liquidation?', 'What's the health factor for this address on Base?', 'Show me this user's risk across all their Aave positions'. |
| get_protocol_risk_stats | Get aggregate risk statistics for Aave on a chain — total positions, and how many are in danger, warning, or critical state. Use when asked: 'How healthy is Aave on Ethereum right now?', 'How many positions are at risk on Arbitrum?', 'Give me a risk overview of the protocol'. |
| get_risk_alerts | Get recent risk level transitions — when positions moved between safe/warning/danger/critical states. Shows previous and new risk level, health factor at transition, and timestamp. Use when asked: 'Which positions recently became at risk?', 'Show me health factor drops on Polygon', 'Has wallet 0x... had any risk alerts?'. |
| get_risk_liquidations | Get liquidation events from the risk subgraph — includes collateral asset, debt asset, amounts, liquidator, and transaction hash. Complements get_aave_liquidations with risk-specific context. Use when asked: 'Show recent liquidations on Base', 'Was this wallet liquidated?', 'What collateral was seized?'. |
| get_health_factor_history | Get a user's health factor history over time — shows how their risk has changed block by block. Useful for trend analysis and understanding if a position is deteriorating. Use when asked: 'How has this wallet's health factor changed?', 'Is this position getting riskier over time?', 'Show me the health factor trend for 0x...'. |
| get_cross_chain_risk_summary | Get a cross-chain risk overview across all 5 chains (Ethereum, Arbitrum, Base, Polygon, Optimism) in a single call. Returns protocol-level risk stats for each chain: total positions, danger/warning/critical counts. Use when asked: 'Which chain has the most at-risk positions?', 'Give me a risk dashboard across all chains', 'Compare Aave risk levels across networks'. |
| list_risk_chains | List all available liquidation risk subgraph chains with their names, networks, subgraph IDs, and 30-day query volumes. Use when asked: 'Which chains have liquidation risk data?', 'What risk subgraphs are available?'. |
| get_v4_hubs | Get Aave V4 liquidity hubs (Core, Plus, Prime) with TVL, utilization, and supply/borrow caps. No API key needed. |
| get_v4_spokes | Get Aave V4 spokes (Main, Bluechip, Kelp, Lido, Ethena, EtherFi, etc.). Spokes are chain-specific deployment points enabling cross-chain lending. No API key needed. |
| get_v4_reserves | Get Aave V4 reserves with supply/borrow APYs, risk params (collateral factor, caps), and status. Use get_aave_reserves for V2/V3. No API key needed. |
| get_v4_chains | List all chains supported by Aave V4 (mainnet and testnet). No API key needed. |
| get_v4_exchange_rate | Get exchange rate for any token via Aave V4's Chainlink oracle integration. Supports ERC-20 tokens, native tokens (ETH), and fiat currencies. No API key needed. |
| get_v4_asset | Get Aave V4 asset details: total supplied/borrowed across all hubs, average supply/borrow APY, and current price. No API key needed. |
| get_v4_asset_price_history | Get historical price data for an Aave V4 asset. Powered by Chainlink oracles. No API key needed. |
| get_v4_protocol_history | Get Aave V4 protocol-wide historical data: total deposits and borrows over time in USD. No API key needed. |
| get_v4_user_positions | Get a user's Aave V4 positions across all spokes — health factor, collateral, debt, borrowing power, net APY. Cross-chain by default. No API key needed. |
| get_v4_user_summary | Get aggregated Aave V4 portfolio summary for a user: total positions, net balance, collateral, debt, net APY, lowest health factor. No API key needed. |
| get_v4_user_supplies | Get a user's Aave V4 supply positions with principal, interest, and collateral status. No API key needed. |
| get_v4_user_borrows | Get a user's Aave V4 borrow positions with principal, debt, interest. No API key needed. |
| get_v4_user_balances | Get a user's cross-chain token balances in Aave V4 with highest supply APY and lowest borrow APY per token. No API key needed. |
| get_v4_user_activities | Get a user's Aave V4 transaction history: supplies, borrows, withdrawals, repayments, liquidations, swaps. No API key needed. |
| get_v4_claimable_rewards | Get a user's claimable Merkl and points rewards on Aave V4. No API key needed. |
| get_v4_swap_quote | Get a read-only swap price quote from Aave V4 (powered by CoW Protocol with MEV protection). Returns pricing, fees, and slippage. No API key needed. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
| analyze_aave_user | Full analysis of a wallet's AAVE position: supplied assets, borrowed assets, estimated health factor, liquidation risk, and recent activity |
| aave_chain_overview | Comprehensive overview of an AAVE deployment: top markets by TVL, current supply/borrow rates, protocol activity, and recent liquidations |
| compare_aave_rates | Compare supply APY and borrow APY for a specific asset across all supported AAVE chains |
| aave_liquidation_analysis | Monitor and analyze recent liquidations on an AAVE chain: patterns, top liquidators, at-risk assets |
| aave_governance_overview | Overview of AAVE governance: recent proposals, voting results, and active/pending decisions |
| cross_chain_risk_monitor | Monitor Aave liquidation risk across all 5 chains — identify the riskiest positions, recent risk alerts, and protocol health per network |
| aave_full_stack_analysis | Full-stack Aave analysis combining V2/V3 subgraph data with V4 API data — compare rates, positions, and liquidity across all versions |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/PaulieB14/graph-aave-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server