Most blockchain data tooling was built for people. You define a schema, deploy a subgraph, run a pipeline, and query the tables it produces. That works when a person is in the loop to design the pipeline and read the result.

Agents work differently. An agent asks a question, gets an answer, and acts on it. When you hand an agent raw blocks, logs, and traces, you push the pipeline's work into the agent itself. It has to load a large amount of data into context and reason across all of it to reach a single number.

The cost shows up twice

Raw data costs an agent twice. It pays once to read the data into context, and again to reason over that context to produce a result. A question like "how did USDC transfer volume change over the past year" can pull millions of events into the model to return one figure. The answer is slow and expensive, and you cannot reliably reproduce it. Ask the same question twice and you can get two different numbers.

Ask for the answer instead

Testril takes a different approach. You ask a question in plain language over CLI or MCP, and you get the answer back. If we have computed it before, we serve it from cache. If we have not, we compute it on demand. The agent never holds the raw data in context.

This keeps the token cost per answer low, and a single question can span many chains instead of stopping at one. Because every value traces back to the blocks it came from, the agent can also confirm the answer is right before it acts on it.

Raw data is the input to a pipeline. An agent wants the output of one.