graph-lido-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| GRAPH_API_KEY | Yes | API key from The Graph's Subgraph Studio |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
| prompts | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| get_lido_statsA | Get current Lido protocol statistics: total pooled ETH, total shares, unique holders, fee structure, and withdrawal queue status |
| get_staking_aprB | Get Lido staking APR history from oracle reports. Returns APR (after fees), APR before fees, total rewards, MEV fees, and fee breakdown per report period |
| get_recent_submissionsA | Get recent stETH staking submissions (deposits). Shows who staked, how much ETH, shares received, and the effect on total pooled ether |
| get_recent_transfersA | Get recent stETH token transfers. Track large stETH movements between addresses |
| get_node_operatorsA | Get Lido node operators: names, staking limits, active status, stopped validators. These are the professional validator operators running Ethereum validators for Lido stakers |
| get_oracle_reportsB | Get Lido oracle completed reports: beacon chain balance, validator count per epoch. Oracle reports trigger reward distribution and stETH rebase |
| get_withdrawal_requestsA | Get recent stETH withdrawal requests. Shows who is requesting to unstake, how much stETH, and the shares being burned |
| get_withdrawal_claimsA | Get recent claimed (completed) withdrawals. Shows who received ETH back after the withdrawal queue processed their request |
| get_withdrawals_finalizedA | Get withdrawal finalization batches. Shows when the protocol finalized withdrawal request ranges, locking ETH and burning shares |
| get_governance_votesB | Get Lido DAO governance votes (Aragon voting). Shows proposal metadata, execution status, and individual votes |
| get_vote_detailsA | Get detailed voting records for a specific Lido DAO governance vote. Shows all individual voter addresses, their vote direction, and stake weight |
| get_easytrack_motionsA | Get Lido EasyTrack motions. EasyTrack is a lightweight governance mechanism for routine operations (budget allocations, reward programs) that do not require full DAO votes |
| get_shares_burnsA | Get stETH shares burn events. Shares are burned during withdrawal processing, reducing total supply |
| get_holder_sharesB | Look up the current stETH share balance for a specific address. Shares represent proportional ownership of the staking pool |
| get_top_holdersA | Get the largest stETH holders ranked by share balance. Shows addresses, share count, and estimated stETH value. Useful for tracking whale concentration and institutional holders |
| get_staking_net_flowA | Calculate net staking flow: compare recent deposits (submissions) vs withdrawal requests to determine if Lido is growing or shrinking. Returns totals for each side and the net direction |
| get_address_activityA | Get all Lido activity for a specific address: stETH balance, recent deposits, transfers (in/out), and withdrawal requests. Single view of an address's complete Lido interaction history |
| get_steth_ratio_historyA | Get the historical stETH/ETH exchange ratio derived from oracle reward reports. Shows how stETH appreciates over time relative to ETH as staking rewards accrue. The ratio should always be >= 1 and slowly increasing |
| get_lido_schemaA | Introspect the Lido subgraph GraphQL schema. Returns all available entity types and their fields. Useful for building custom queries |
| query_lido_subgraphA | Run any raw GraphQL query against the Lido subgraph. Escape hatch for advanced queries not covered by other tools. Use get_lido_schema first to discover available entities and fields |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
| staking_overview | Comprehensive overview of Lido staking: total ETH staked, current APR, recent deposits, holder count |
| withdrawal_monitor | Monitor Lido withdrawal queue: pending requests, recent claims, finalization batches |
| governance_digest | Lido governance digest: recent DAO votes, EasyTrack motions, and their outcomes |
| node_operator_analysis | Analysis of Lido node operators: active operators, stopped validators, staking distribution |
| whale_tracker | Track large stETH movements: big deposits, large transfers, and whale withdrawals |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 20 tools
Each tool targets a specific Lido protocol aspect (address activity, governance, withdrawals, etc.) with clearly distinct purposes. No overlapping functionality; even related tools like withdrawal requests and claims are well-separated.
All tools follow a consistent verb_noun pattern with underscores (e.g., get_address_activity, get_governance_votes). The outlier query_lido_subgraph also follows verb_noun, maintaining the pattern.
20 tools appropriately cover the multifaceted Lido protocol (staking, withdrawals, governance, node operations, etc.) without being overwhelming. Each tool earns its place.
The tool set comprehensively covers Lido's read-only surface: deposits, withdrawals, governance, monitoring stats, transfers, and edge cases via raw subgraph queries. No obvious gaps for the intended domain.