{"agent":"graph-advocate","version":"1.1","endpoint":"https://graphadvocate.com/","protocol":"A2A (JSON-RPC 2.0)","agent_card":"https://graphadvocate.com/.well-known/agent-card.json","identity":{"ens":"graphadvocate.eth","erc8004_id":734,"erc8004_chain":"Arbitrum","wallet":"0x575267eED09c338FAE5716A486A7B58A5749A292"},"pricing":{"free_tier":"3 requests/day per sender (task_id)","paid":"$0.01 USDC on Base after free tier","payment_protocol":"x402 v2","payment_network":"eip155:8453 (Base)","usdc_contract":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913"},"endpoints":{"main":"POST /","chat":"POST /chat","agent_card":"GET /.well-known/agent-card.json","capabilities":"GET /agents/capabilities.json","mcp_catalog":"GET /mcp/catalog","llms_txt":"GET /llms.txt","feedback":"POST /feedback","openapi":"GET /openapi.json"},"capabilities":[{"service":"token-api","summary":"Hosted REST API for token data — balances, holders, transfers, swaps, NFTs across EVM, Solana, and TON.","best_for":["Wallet balances on Ethereum / Base / Arbitrum / Solana / TON","Top holders, biggest swaps, whale transfers","NFT collections and ownership","Current prices and 30-day balance history"],"not_for":["Custom GraphQL joins","Historical pool mechanics that need protocol-specific entities"],"interface":"REST","auth":"Free JWT — https://thegraph.market/auth/tokenapi-env","chains":["Ethereum","Base","Arbitrum","Optimism","Polygon","Avalanche","BSC","Solana","TON"],"install":null,"curl_example":"# Get USDC holders on Ethereum (replace TOKEN with your JWT)\ncurl 'https://token-api.thegraph.com/v1/evm/holders?contract=0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48&network=mainnet&limit=10' \\\n  -H 'Authorization: Bearer YOUR_JWT'\n\n# Polymarket — browse active markets\ncurl 'https://token-api.thegraph.com/v1/polymarket/markets?limit=10&sort=volume&order=desc' \\\n  -H 'Authorization: Bearer YOUR_JWT'\n\n# Polymarket — user portfolio P&L\ncurl 'https://token-api.thegraph.com/v1/polymarket/users/positions?user=0xADDRESS' \\\n  -H 'Authorization: Bearer YOUR_JWT'\n\n# Hyperliquid — top traders leaderboard (volume, PnL, fees, liquidations)\ncurl 'https://token-api.thegraph.com/v1/hyperliquid/users?limit=10&sort=total_volume&order=desc' \\\n  -H 'Authorization: Bearer YOUR_JWT'\n\n# Hyperliquid — discover markets (FREE, no auth needed)\ncurl 'https://token-api.thegraph.com/v1/hyperliquid/markets?limit=10'\n\n# Hyperliquid — BTC perp open interest history\ncurl 'https://token-api.thegraph.com/v1/hyperliquid/markets/oi?coin=BTC&limit=24' \\\n  -H 'Authorization: Bearer YOUR_JWT'","get_started":"Free JWT: https://thegraph.market/auth/tokenapi-env","example_prompts":["Top 20 USDC holders on Ethereum","Wallet balances on Base for 0xabc…","Solana NFT sales last 7 days"]},{"service":"subgraph-registry","summary":"Discover the right subgraph from 15,500+ indexed subgraphs and run GraphQL queries against it.","best_for":["Custom GraphQL with protocol-specific entities","Historical state (TVL over time, positions, events)","Joins not exposed by REST APIs"],"not_for":["One-shot 'current price/balance' lookups (use token-api)"],"interface":"GraphQL","auth":"Free Graph Network API key — https://thegraph.com/studio/","chains":["80+ chains (EVM, Solana, TON, Near, Starknet)"],"install":null,"curl_example":"# Query any subgraph — get a free API key first (thegraph.com/studio)\ncurl -X POST 'https://gateway.thegraph.com/api/subgraphs/id/SUBGRAPH_ID' \\\n  -H 'Authorization: Bearer YOUR_API_KEY' \\\n  -H 'Content-Type: application/json' \\\n  -d '{\"query\": \"{ _meta { block { number } } }\"}'","get_started":"Free API key: https://thegraph.com/studio/ — 100K queries/month, 2 min signup","example_prompts":["Uniswap V3 pool TVL and fee tiers","Lens Protocol followers over time","What subgraphs exist for NFT sales on Base?"]},{"service":"substreams","summary":"Parallel, sub-block streaming of raw blockchain events, traces, and logs via the StreamingFast firehose.","best_for":["Custom indexing pipelines","Raw event logs across large block ranges","Streaming traces / receipts at full chain throughput"],"not_for":["Quick one-shot reads (subgraph or token-api are cheaper)"],"interface":"gRPC / CLI","auth":"JWT from https://thegraph.market — used with `substreams auth`","chains":["Ethereum","Solana","Near","80+ firehose-enabled chains"],"install":"npx substreams-search-mcp","curl_example":"# 1. Search Substreams packages (no auth needed)\nnpx substreams-search-mcp\n\n# Or browse the registry directly\ncurl 'https://substreams.dev/packages?search=uniswap&sort=most_downloaded'\n\n# 2. To stream data, install the Substreams CLI:\n#    https://docs.substreams.dev/how-to-guides/installing-the-cli\n# 3. Auth: create an API key at https://thegraph.market, generate a JWT,\n#    then run:  substreams auth\n# 4. Run a package:  substreams run <spkg> module_name -e mainnet.eth.streamingfast.io:443","get_started":"Substreams uses a JWT (not a plain API key). Sign up at https://thegraph.market → create an API key → generate a JWT → use it with `substreams auth`. Docs: https://docs.substreams.dev","example_prompts":["Raw decoded event logs, blocks 19000000 to 20000000","Stream all ERC20 transfers on Base"]},{"service":"graph-aave-mcp","summary":"MCP server with 40+ tools over Aave V2 / V3 / V4, including cross-chain liquidation risk.","best_for":["Aave market state, positions, liquidations","Cross-chain Aave V4 hub/spoke topology","Yield and rate analytics"],"not_for":["Non-Aave lending protocols (use graph-lending-mcp)"],"interface":"MCP (Model Context Protocol)","auth":"Free Graph Network API key","chains":["Ethereum","Arbitrum","Optimism","Polygon","Avalanche","Base","Metis"],"install":"npx graph-aave-mcp","curl_example":"# Easiest: run the MCP server (works in Claude Code, Cursor, any MCP client)\nnpx graph-aave-mcp\n\n# Or query the Aave V3 subgraph directly (needs a free API key from thegraph.com/studio)\ncurl -X POST 'https://gateway.thegraph.com/api/subgraphs/id/Cd2gEDVeqnjBn1hSeqFMitw8Q1iiyV9FYUZkLNRcL87g' \\\n  -H 'Authorization: Bearer YOUR_API_KEY' \\\n  -H 'Content-Type: application/json' \\\n  -d '{\"query\": \"{ markets(first: 5, orderBy: totalValueLockedUSD, orderDirection: desc) { name totalValueLockedUSD borrowingEnabled } }\"}'","get_started":"Free API key: https://thegraph.com/studio/ — 100K queries/month, 2 min signup","example_prompts":["Top Aave V3 markets by TVL on Ethereum","Recent Aave liquidations above $50K"]},{"service":"graph-polymarket-mcp","summary":"MCP server with 31 tools over Polymarket prediction markets.","best_for":["Hottest markets","Trader PnL","Order book depth"],"not_for":["Predict.fun (use predictfun-mcp)","Limitless (use graph-limitless-mcp)"],"interface":"MCP","auth":"None for REST endpoints; Graph API key for subgraph queries","chains":["Polygon"],"install":"npx graph-polymarket-mcp","curl_example":"# Easiest: run the MCP server\nnpx graph-polymarket-mcp\n\n# Or hit the REST API directly (no key needed for basic endpoints)\ncurl 'https://gamma-api.polymarket.com/markets?limit=5&active=true&order=volume&ascending=false'","get_started":"Free API key for subgraph queries: https://thegraph.com/studio/","example_prompts":["Hottest Polymarket markets right now","Top traders on Polymarket by PnL"]},{"service":"polymarket-token-api","summary":"Graph Advocate's own paid endpoints for Polymarket trader intelligence — skill scoring, ghost-fill counterparty risk, size-the-room pre-trade screening, and per-position PnL with derived metrics. Wraps Pinax /v1/polymarket/* with compute the upstream doesn't provide. Pure JSON for autonomous agents.","best_for":["Score a Polymarket trader (sharp / retail / insufficient_data classification)","Pre-trade ghost-fill risk on a maker wallet (POLY_1271 deposit vs legacy EOA)","Top-holder screening of a market with skill + ghost-fill risk per holder","Per-position PnL with mark-to-market unrealized + derived skill metrics"],"not_for":["Raw market discovery / OHLCV (use token-api)","Live orderbook depth (use graph-polymarket-mcp or clob.polymarket.com directly)"],"interface":"REST (POST, JSON body)","auth":"x402 USDC micropayment on Base — first 402 returns payment requirements","chains":["Polygon (Polymarket markets) + Base (USDC payment rail)"],"install":null,"curl_example":"# Score a Polymarket trader (skill, sharpe-like, win rate, classification) - $0.01\ncurl -X POST 'https://graphadvocate.com/polymarket/pnl-quick' \\\n  -H 'Content-Type: application/json' \\\n  -d '{\"wallet\":\"0x38e598961dd0456a7fb2e758bd433d3e59fb8a4a\"}'\n\n# Full per-position PnL report - $0.05\ncurl -X POST 'https://graphadvocate.com/polymarket/pnl' \\\n  -H 'Content-Type: application/json' \\\n  -d '{\"wallet\":\"0x38e598...\"}'\n\n# Size the room: top N holders of a market with skill + ghost-fill risk - $0.02\ncurl -X POST 'https://graphadvocate.com/polymarket/screen' \\\n  -H 'Content-Type: application/json' \\\n  -d '{\"condition_id\":\"0x6331a779482df72d904c3c1e12b6409ff836bc06f8c97945cba9b25ada2c605c\",\"n\":10}'\n\n# Ghost-fill counterparty risk (wallet type via Polygon bytecode probe) - $0.02\ncurl -X POST 'https://graphadvocate.com/polymarket/risk' \\\n  -H 'Content-Type: application/json' \\\n  -d '{\"wallet\":\"0x38e598...\"}'","get_started":"Pay-per-call x402 on Base USDC — first 402 challenge returns the payment requirements. Use any x402 client (x402-fetch, x402Client, etc.). Endpoints serve pure JSON for autonomous agents.","example_prompts":["Score Polymarket wallet 0x...","Is this Polymarket trader sharp money or retail?","Will this Polymarket maker's fill actually settle?","Screen top 10 holders of Polymarket market 0x... for skill + ghost-fill risk"]},{"service":"hyperliquid-token-api","summary":"Graph Advocate's own paid endpoints for Hyperliquid perps trader intelligence — skill scoring (liquidation/funding-aware), per-coin PnL, top-traders screen, vault evaluator, liquidation/funding risk. Wraps Pinax /v1/hyperliquid/* with compute the upstream doesn't provide. Pure JSON for autonomous agents.","best_for":["Score a Hyperliquid trader (sharp / retail / insufficient_data classification)","Per-coin PnL breakdown with funding + fees + liquidation fills","Top traders of BTC / ETH / SOL / etc. ranked by skill","Vault evaluator (leader skill + redemption pressure + commission rate)","Liquidation + funding burn risk profile"],"not_for":["Raw market discovery / OHLCV (use token-api /v1/hyperliquid/markets)","Spot/HyperEVM token data (use token-api EVM endpoints)"],"interface":"REST (POST, JSON body)","auth":"x402 USDC micropayment on Base — first 402 returns payment requirements","chains":["Hyperliquid (HyperCore perps) + Base (USDC payment rail)"],"install":null,"curl_example":"# Score a Hyperliquid perps trader (skill, liquidation rate, funding burn) - $0.02\ncurl -X POST 'https://graphadvocate.com/hyperliquid/score' \\\n  -H 'Content-Type: application/json' \\\n  -d '{\"user\":\"0xac5a07c4...\"}'\n\n# Full per-coin PnL breakdown - $0.05\ncurl -X POST 'https://graphadvocate.com/hyperliquid/pnl' \\\n  -H 'Content-Type: application/json' \\\n  -d '{\"user\":\"0xac5a07c4...\"}'\n\n# Top traders of a coin (BTC/ETH/SOL/etc.) ranked by skill - $0.05\ncurl -X POST 'https://graphadvocate.com/hyperliquid/screen' \\\n  -H 'Content-Type: application/json' \\\n  -d '{\"coin\":\"BTC\",\"n\":10}'\n\n# Vault evaluator: leader skill + redemption pressure + commission - $0.10\ncurl -X POST 'https://graphadvocate.com/hyperliquid/vault' \\\n  -H 'Content-Type: application/json' \\\n  -d '{\"vault\":\"0x...\"}'\n\n# Liquidation + funding risk profile - $0.02\ncurl -X POST 'https://graphadvocate.com/hyperliquid/risk' \\\n  -H 'Content-Type: application/json' \\\n  -d '{\"user\":\"0xac5a07c4...\"}'","get_started":"Pay-per-call x402 on Base USDC — first 402 challenge returns the payment requirements. Pure-JSON endpoints designed for autonomous agents. Wraps Pinax /v1/hyperliquid/* (prod since v3.17.0) with derived skill, vault, and risk metrics.","example_prompts":["Score Hyperliquid trader 0xac5a07c4...","Is this Hyperliquid perps trader sharp or retail?","Top 10 Hyperliquid BTC traders ranked by skill","Evaluate Hyperliquid vault 0x...","Liquidation + funding risk for Hyperliquid trader 0x..."]},{"service":"graph-lending-mcp","summary":"Cross-protocol lending data via Messari standardized subgraphs (Aave, Compound, MakerDAO, etc.).","best_for":["Comparing TVL across lending protocols","Standardized borrow/supply rates"],"not_for":["Aave-specific deep features (use graph-aave-mcp)"],"interface":"MCP","auth":"Free Graph Network API key","chains":["Ethereum","Polygon","Arbitrum","Avalanche","BSC","Optimism","Base","Scroll","Fantom","Gnosis","+ 5 more"],"install":"npx graph-lending-mcp","curl_example":"# Easiest: run the MCP server\nnpx graph-lending-mcp\n\n# Or query the Messari lending subgraph directly\ncurl -X POST 'https://gateway.thegraph.com/api/subgraphs/id/H4YsG6asELTYxYWCBgraphs' \\\n  -H 'Authorization: Bearer YOUR_API_KEY' \\\n  -H 'Content-Type: application/json' \\\n  -d '{\"query\": \"{ markets(first: 5, orderBy: totalValueLockedUSD, orderDirection: desc) { name protocol { name } totalValueLockedUSD } }\"}'","get_started":"Free API key: https://thegraph.com/studio/","example_prompts":["Compare Aave vs Compound TVL on Ethereum","Top lending markets by utilization"]},{"service":"graph-limitless-mcp","summary":"MCP server for Limitless prediction markets on Base.","best_for":["Limitless market state and trades on Base"],"not_for":[],"interface":"MCP","auth":"Graph API key (env: GRAPH_API_KEY)","chains":["Base"],"install":"npx graph-limitless-mcp","curl_example":"# Easiest: run the MCP server (requires GRAPH_API_KEY env var)\nGRAPH_API_KEY=your_key npx graph-limitless-mcp\n\n# Free API key: https://thegraph.com/studio/","get_started":"Free API key: https://thegraph.com/studio/","example_prompts":["Active Limitless markets on Base"]},{"service":"predictfun-mcp","summary":"MCP server for Predict.fun on BNB Chain.","best_for":["Predict.fun markets and trader activity on BNB Chain"],"not_for":[],"interface":"MCP","auth":"None (public REST API)","chains":["BNB Chain"],"install":"npx predictfun-mcp","curl_example":"# Run the MCP server\nnpx predictfun-mcp\n\n# Or query Predict.fun REST API directly\ncurl 'https://predict.fun/api/markets?limit=5'","get_started":"No API key required for Predict.fun REST API.","example_prompts":["Top Predict.fun markets by volume"]},{"service":"8004scan","summary":"Discover and search ERC-8004 registered AI agents — identity, reputation, capabilities.","best_for":["Finding agents by capability","Reputation/feedback lookup","Agent registry browsing"],"not_for":[],"interface":"REST","auth":"None for public reads; register your own agent at 8004scan.io","chains":["Base","Base Sepolia","Arbitrum"],"install":null,"curl_example":"# Search agents on 8004scan\ncurl 'https://8004scan.io/api/v1/public/agents/search?q=mcp&limit=10'\n\n# Browse all agents\ncurl 'https://8004scan.io/api/v1/public/agents?limit=10&sort=score&order=desc'","get_started":"Register your agent at https://8004scan.io","example_prompts":["Find agents with MCP endpoints","Agents with x402 support on Base"]},{"service":"mcp8004","summary":"Auth middleware (npm package) for adding ERC-8004 identity verification to any MCP server.","best_for":["Securing MCP server endpoints with on-chain agent identity","Min-score gating"],"not_for":[],"interface":"Library (TypeScript/JavaScript)","auth":"npm install mcp8004","chains":["Base","Base Sepolia"],"install":"npm install mcp8004","curl_example":"# Install auth middleware for your MCP server\nnpm install mcp8004\n\n# Usage in your server:\n# import { authMiddleware } from 'mcp8004';\n# app.use(authMiddleware({ minScore: 0 }));","get_started":"GitHub: https://github.com/jordanlyall/mcp8004","example_prompts":["How do I require ERC-8004 auth on my MCP server?"]}],"how_to_use":"Send a natural-language data question to POST / via A2A JSON-RPC. Graph Advocate routes the question to the best service in this list and returns a recommendation plus a ready-to-run curl/GraphQL/MCP example. For batch / programmatic use, see /agents/capabilities.json (this file) and the agent card."}