Skip to main content
Pegana is Brazilian stablecoin infrastructure on Solana: peg state, depeg simulation, loop exposure, webhook keys — 43 operations across 39 paths, in production, used by real money. It is also a good API. Run through our agent-readiness scorecard it grades A (100/100) — first-call-correct 100, hygiene 100, agent-friendliness 100, security 100 (re-measured against the live spec on 2026-08-06; it scored 99 in July and improved). That matters for everything below. A specification tells you what a call looks like. It cannot tell you whether it will work — and that is structural, not a defect anyone can fix by writing better docs. What follows is not a list of things Pegana got wrong. It is a list of things no specification can carry, at any version, at any quality — which is exactly why a good API is the honest place to show them. Concretely: GET /v1/assets/{symbol}/state with symbol = "string" is precisely what the spec permits. Live, it is a 404. The spec is right and the call still fails.
Every number on this page is measured from a real run against the live API. The scorecard, the compression figure, and the cross-API join were all produced by the commands in quickstart — nothing is estimated.

The question is the interface

Before. An agent that wants a stablecoin’s peg state has to know Pegana exists, work out which of 43 operations answers that question, find that the path is /v1/assets/{mint}/state, and handle authentication. Each of those is a separate chance to guess wrong, and every wrong guess costs a round trip and a slice of the context window. After. The question is the interface. Asked in plain Portuguese —
it resolved to GET /v1/assets/USDC/state and came back:
First call, live, no API key — the operation is public, and Gecko knows which ones are because auth is resolved per operation at call time rather than assumed for the whole surface. The agent never sees a credential either way.

The join lives between two APIs

Before. “Is the stablecoin in this headline still pegged, and what is it trading at?” is one question that spans three surfaces — a news feed, Pegana, and a price source. The fact that joins them is a token mint. No specification can declare a relationship to a specification it has never heard of, so the join has to live somewhere else. After. The mint join across Pegana ↔ Birdeye ↔ Jupiter is declared once, confirmed against real responses, and then the composed chain plans correctly — offline, keyless, $0, before a single live call is made. That is the difference between a list of tools and a graph: the agent doesn’t rediscover the connection on every task, and it doesn’t invent one that isn’t there.

The context bill

Before. Pointing an agent at a 43-operation API means the raw surface competes with the actual task for the context window. The agent spends budget reading about the API instead of using it. After. 79.3% compression on this spec — 113,072 B of raw OpenAPI down to 23,382 B of agent surface. Measured 2026-08-06, not estimated. The number is the least interesting part. Shrinking a spec is easy if you’re willing to drop things; the constraint that makes it worth anything is that first-call-correctness is held while you do it. Compression that starts producing wrong calls has not saved you tokens, it has moved the cost somewhere harder to see.

What actually changed

Not the model. Not the agent. Not Pegana’s API — which grades A. What the call was built from.

Try the live surface

Or connect the hosted one