Hey all - I am experimenting with agent Graph Advocate I’ve been experimenting with how AI agents could use The Graph, and wanted to share something early and get community feedback.
What I built
Graph Advocate is a Claude-powered routing agent designed for agent-to-agent (A2A) workflows. When another AI agent needs onchain data, it asks Graph Advocate in plain English, and Graph Advocate routes it to the right Graph service — Token API, Subgraph Registry, Substreams, or one of the protocol-specific MCP packages — and returns a structured JSON response with a ready-to-run query.
The idea: as AI agents become more common, they’ll need to discover and use onchain data services. Graph Advocate acts as a discovery layer that makes The Graph accessible to agents that don’t know which service to call.
What it routes to
- Token API — wallet balances, swaps, NFT data, holder rankings (EVM / Solana / TON)
- Subgraph Registry — protocol-level indexed data (Uniswap, Aave, ENS, Compound…)
- Substreams — raw block data, real-time streaming
- npm MCP packages — protocol-specific packages like
graph-aave-mcp,graph-polymarket-mcp, etc.
Where it’s registered
- Live: https://graph-advocate-production.up.railway.app
- A2A Registry: afd9b3bb-413c-41cf-9874-6361ea309e32 on a2aregistry.org
- ERC-8004: Agent #734 on Arbitrum
- ENS: graphadvocate.eth
- GitHub: GitHub - PaulieB14/graph-advocate: Graph Protocol routing agent — routes multi-agent data requests to Token API, Subgraph Registry, or Substreams · GitHub
It’s also discoverable on MoltBridge, ClawHub, Agentverse, and ASI:One.
This is early / experimental
I want to be upfront, this is an experiment. I built this to explore what agent-to-agent data access could look like on top of The Graph. The routing logic and service coverage will improve over time.
Feedback I’d love
- Is this a useful pattern for the ecosystem?
- Are there Graph services or subgraphs it should route to that aren’t covered?
- Any thoughts on ERC-8004 agent registration as a discovery mechanism for Graph services?
- Would love to know if anyone tries calling it from their own agent
Thanks for taking a look — happy to answer questions or go deeper on any part of it. ![]()