# Verbatim conversion (JSON -> YAML) of https://graphadvocate.com/openapi.json fetched 2026-09-19 (HTTP 200, application/json). # Original preserved at openapi/_original/graphadvocate-com-openapi.json. No content added or removed. openapi: 3.1.0 info: title: Graph Advocate version: 1.0.0 description: Claude-powered routing agent for The Graph Protocol. Send a plain-English onchain data request and receive a ready-to-execute GraphQL query, the right subgraph ID, and an MCP/npm install hint. contact: name: Graph Advocate url: https://graphadvocate.com servers: - url: https://graphadvocate.com x-discovery: ownershipProofs: [] agent: name: Graph Advocate ens: graphadvocate.eth erc8004: 'Agent #734 on Arbitrum' wallet: '0x0FF5A6ecef783BBA35463ec2F8403B9B5e9e7C86' llms_txt: https://graphadvocate.com/llms.txt capabilities: https://graphadvocate.com/agents/capabilities.json x-llms-txt: https://graphadvocate.com/llms.txt x-agents-index: https://graphadvocate.com/agents/index.json externalDocs: description: LLM-readable docs (llmstxt.org convention) url: https://graphadvocate.com/llms.txt components: schemas: RoutingRequest: type: object required: - jsonrpc - id - method - params properties: jsonrpc: type: string const: '2.0' id: type: - string - number method: type: string const: message/send params: type: object required: - message properties: message: type: object required: - role - messageId - parts properties: role: type: string const: user messageId: type: string parts: type: array items: type: object properties: kind: type: string const: text text: type: string description: Plain-English onchain data request RoutingResponse: type: object properties: recommendation: type: string description: Service to use (e.g. graph-aave-mcp, subgraph-registry, token-api) reason: type: string confidence: type: string enum: - high - medium - low query_ready: type: object description: Tool name + args you can call directly properties: tool: type: string args: type: object curl_example: type: string install: type: string description: npm install / npx command if applicable alternatives: type: array paths: /route: post: operationId: routeQuery summary: Route an onchain data request description: POST a plain-English request via A2A JSON-RPC 2.0 (`message/send`) and receive a ready-to-execute query, the right subgraph ID, an MCP install hint, and a working curl example. Powered by Claude with auto-search across 15,500+ subgraphs. requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/RoutingRequest' responses: '200': description: Routing recommendation with ready-to-run query content: application/json: schema: $ref: '#/components/schemas/RoutingResponse' '402': description: Payment required content: application/json: schema: type: object x-payment-info: protocols: - x402: {} price: mode: fixed currency: USD amount: '0.01' /agent/score: post: operationId: agentScore summary: Composite 0-100 reputation score for any Base wallet description: 'Composite 0-100 reputation score for any Base wallet: ERC-8004 identity, USDC settlement history and on-chain feedback, blended into one figure with the component breakdown.' requestBody: required: true content: application/json: schema: type: object responses: '200': description: Result content: application/json: schema: type: object '402': description: Payment required content: application/json: schema: type: object x-payment-info: protocols: - x402: {} price: mode: fixed currency: USD amount: '0.02' /ask: post: operationId: askSettlements summary: Natural-language Q&A over the x402 Base settlements warehouse description: 'Natural-language Q&A over the x402 Base settlements warehouse: 132M EIP-3009 settlement rows on R2 plus pre-aggregated daily_stats, answered as JSON with the SQL trace.' requestBody: required: true content: application/json: schema: type: object responses: '200': description: Result content: application/json: schema: type: object '402': description: Payment required content: application/json: schema: type: object x-payment-info: protocols: - x402: {} price: mode: fixed currency: USD amount: '0.05' /hyperliquid/fills: post: operationId: hyperliquidFills summary: Recent Hyperliquid perp fill stream description: 'Recent Hyperliquid perp fill stream: the last N fills with direction, price, size, notional, fee and trader address, plus an aggregate buy/sell notional split and a whale-fill count for fills over $10k.' requestBody: required: true content: application/json: schema: type: object responses: '200': description: Result content: application/json: schema: type: object '402': description: Payment required content: application/json: schema: type: object x-payment-info: protocols: - x402: {} price: mode: fixed currency: USD amount: '0.02' /hyperliquid/pnl: post: operationId: hyperliquidPnl summary: Full Hyperliquid trader dossier description: 'Full Hyperliquid trader dossier: skill metrics plus open positions and recent fills.' requestBody: required: true content: application/json: schema: type: object responses: '200': description: Result content: application/json: schema: type: object '402': description: Payment required content: application/json: schema: type: object x-payment-info: protocols: - x402: {} price: mode: fixed currency: USD amount: '0.05' /hyperliquid/risk: post: operationId: hyperliquidRisk summary: Hyperliquid counterparty risk description: 'Hyperliquid counterparty risk: liquidation rate, funding burn, recent-outflow flag.' requestBody: required: true content: application/json: schema: type: object responses: '200': description: Result content: application/json: schema: type: object '402': description: Payment required content: application/json: schema: type: object x-payment-info: protocols: - x402: {} price: mode: fixed currency: USD amount: '0.02' /hyperliquid/score: post: operationId: hyperliquidScore summary: Composite skill_score 0-100 for a Hyperliquid perps trader description: 'Composite skill_score 0-100 for a Hyperliquid perps trader: classification, liquidation rate, funding burn, profit factor.' requestBody: required: true content: application/json: schema: type: object responses: '200': description: Result content: application/json: schema: type: object '402': description: Payment required content: application/json: schema: type: object x-payment-info: protocols: - x402: {} price: mode: fixed currency: USD amount: '0.02' /hyperliquid/screen: post: operationId: hyperliquidScreen summary: Top N traders of a Hyperliquid coin, each scored sharp/neutral/retail. description: Top N traders of a Hyperliquid coin, each scored sharp/neutral/retail. requestBody: required: true content: application/json: schema: type: object responses: '200': description: Result content: application/json: schema: type: object '402': description: Payment required content: application/json: schema: type: object x-payment-info: protocols: - x402: {} price: mode: fixed currency: USD amount: '0.05' /hyperliquid/vault: post: operationId: hyperliquidVault summary: Hyperliquid vault evaluator description: 'Hyperliquid vault evaluator: leader skill, depositor concentration, redemption pressure.' requestBody: required: true content: application/json: schema: type: object responses: '200': description: Result content: application/json: schema: type: object '402': description: Payment required content: application/json: schema: type: object x-payment-info: protocols: - x402: {} price: mode: fixed currency: USD amount: '0.10' /kalshi-polymarket/spread: post: operationId: kalshiPolymarketSpread summary: Where Kalshi and Polymarket disagree on a topic — matched by wording where possible, and by aligning the two venues' full outcome distributions where they frame the same event differently (threshold vs delta, e.g. Fed rates). Per-outcome difference in bps, bounded by quote width so noise is distinguishable from signal. JOIN that single-source APIs cannot return. description: Where Kalshi and Polymarket disagree on a topic — matched by wording where possible, and by aligning the two venues' full outcome distributions where they frame the same event differently (threshold vs delta, e.g. Fed rates). Per-outcome difference in bps, bounded by quote width so noise is distinguishable from signal. JOIN that single-source APIs cannot return. requestBody: required: true content: application/json: schema: type: object responses: '200': description: Result content: application/json: schema: type: object '402': description: Payment required content: application/json: schema: type: object x-payment-info: protocols: - x402: {} price: mode: fixed currency: USD amount: '0.05' /kalshi/consensus-trend: post: operationId: kalshiConsensusTrend summary: Kalshi consensus-probability trajectory description: 'Kalshi consensus-probability trajectory: slope, acceleration, volatility band derived from Kalshi-unique forecast_history.' requestBody: required: true content: application/json: schema: type: object responses: '200': description: Result content: application/json: schema: type: object '402': description: Payment required content: application/json: schema: type: object x-payment-info: protocols: - x402: {} price: mode: fixed currency: USD amount: '0.05' /kalshi/sports-live-edge: post: operationId: kalshiSportsLiveEdge summary: Live sports mispricing detector description: 'Live sports mispricing detector: play-by-play momentum vs market candlestick reaction; flags latency-arb windows.' requestBody: required: true content: application/json: schema: type: object responses: '200': description: Result content: application/json: schema: type: object '402': description: Payment required content: application/json: schema: type: object x-payment-info: protocols: - x402: {} price: mode: fixed currency: USD amount: '0.05' /onchain-x402/address: post: operationId: onchainX402Address summary: On-chain x402 settlement profile for an address description: 'On-chain x402 settlement profile for an address: lifetime totals as payer and recipient, volume, first and last seen, recent payments in both directions and facilitator metadata, read from the x402 Base subgraph on The Graph Network.' requestBody: required: true content: application/json: schema: type: object responses: '200': description: Result content: application/json: schema: type: object '402': description: Payment required content: application/json: schema: type: object x-payment-info: protocols: - x402: {} price: mode: fixed currency: USD amount: '0.01' /polymarket/pnl: post: operationId: polymarketPnl summary: Full Polymarket trader dossier description: 'Full Polymarket trader dossier: skill scores plus per-position aggregates with mark-to-market unrealized PnL.' requestBody: required: true content: application/json: schema: type: object responses: '200': description: Result content: application/json: schema: type: object '402': description: Payment required content: application/json: schema: type: object x-payment-info: protocols: - x402: {} price: mode: fixed currency: USD amount: '0.05' /polymarket/pnl-quick: post: operationId: polymarketPnlQuick summary: Fast derived skill metrics for a Polymarket wallet description: 'Fast derived skill metrics for a Polymarket wallet: skill score, classification, realized PnL, win rate.' requestBody: required: true content: application/json: schema: type: object responses: '200': description: Result content: application/json: schema: type: object '402': description: Payment required content: application/json: schema: type: object x-payment-info: protocols: - x402: {} price: mode: fixed currency: USD amount: '0.01' /polymarket/risk: post: operationId: polymarketRisk summary: Polymarket ghost-fill risk description: 'Polymarket ghost-fill risk: wallet-type detection plus risk score for counterparty assessment.' requestBody: required: true content: application/json: schema: type: object responses: '200': description: Result content: application/json: schema: type: object '402': description: Payment required content: application/json: schema: type: object x-payment-info: protocols: - x402: {} price: mode: fixed currency: USD amount: '0.02' /polymarket/screen: post: operationId: polymarketScreen summary: Top holders of a Polymarket market, each with skill score and ghost-fill risk. description: Top holders of a Polymarket market, each with skill score and ghost-fill risk. requestBody: required: true content: application/json: schema: type: object responses: '200': description: Result content: application/json: schema: type: object '402': description: Payment required content: application/json: schema: type: object x-payment-info: protocols: - x402: {} price: mode: fixed currency: USD amount: '0.02' /polymarket/leaders: post: operationId: polymarketLeaders summary: Top Polymarket traders leaderboard ranked by PnL or volume over a window — the discovery/copy-trade counterpart to the per-wallet skill endpoints. description: Top Polymarket traders leaderboard ranked by PnL or volume over a window — the discovery/copy-trade counterpart to the per-wallet skill endpoints. requestBody: required: true content: application/json: schema: type: object responses: '200': description: Result content: application/json: schema: type: object '402': description: Payment required content: application/json: schema: type: object x-payment-info: protocols: - x402: {} price: mode: fixed currency: USD amount: '0.02' /predmarket/spread: post: operationId: predmarketSpread summary: Polymarket vs Limitless cross-venue spread on a topic — JOIN that single-venue APIs cannot return; arbitrage direction included. description: Polymarket vs Limitless cross-venue spread on a topic — JOIN that single-venue APIs cannot return; arbitrage direction included. requestBody: required: true content: application/json: schema: type: object responses: '200': description: Result content: application/json: schema: type: object '402': description: Payment required content: application/json: schema: type: object x-payment-info: protocols: - x402: {} price: mode: fixed currency: USD amount: '0.05' /narrative/divergence: post: operationId: narrativeDivergence summary: Narrative-vs-flow divergence description: 'Narrative-vs-flow divergence: social momentum (Cambrian deep42) JOINed with on-chain flow acceleration from a Uniswap subgraph. Finds tokens loud on social but quiet on-chain, and the reverse — a JOIN neither a social feed nor a chain indexer can return alone.' requestBody: required: true content: application/json: schema: type: object responses: '200': description: Result content: application/json: schema: type: object '402': description: Payment required content: application/json: schema: type: object x-payment-info: protocols: - x402: {} price: mode: fixed currency: USD amount: '0.05' /uniswap/basis: post: operationId: uniswapBasis summary: Uniswap spot vs Hyperliquid perp basis for one asset — a cross-venue JOIN returning basis_pct and a perp_premium/perp_discount/aligned signal. description: Uniswap spot vs Hyperliquid perp basis for one asset — a cross-venue JOIN returning basis_pct and a perp_premium/perp_discount/aligned signal. requestBody: required: true content: application/json: schema: type: object responses: '200': description: Result content: application/json: schema: type: object '402': description: Payment required content: application/json: schema: type: object x-payment-info: protocols: - x402: {} price: mode: fixed currency: USD amount: '0.05' /uniswap/pretrade: post: operationId: uniswapPretrade summary: Uniswap pre-trade due-diligence for a token description: 'Uniswap pre-trade due-diligence for a token: real liquidity, deepest venue ranked by volume (not TVL), honeypot two-way-flow check, daily volume trend, and a tradeable/risk verdict.' requestBody: required: true content: application/json: schema: type: object responses: '200': description: Result content: application/json: schema: type: object '402': description: Payment required content: application/json: schema: type: object x-payment-info: protocols: - x402: {} price: mode: fixed currency: USD amount: '0.02' /uniswap/traders: post: operationId: uniswapTraders summary: Per-wallet Uniswap flow on a token's deepest venue description: 'Per-wallet Uniswap flow on a token''s deepest venue: accumulators vs distributors with trader EOAs, buys/sells and volume_usd.' requestBody: required: true content: application/json: schema: type: object responses: '200': description: Result content: application/json: schema: type: object '402': description: Payment required content: application/json: schema: type: object x-payment-info: protocols: - x402: {} price: mode: fixed currency: USD amount: '0.02'