Changelog

Dated changes to the avee client API, the Astra oracle and the MCP server. Additive entries need no action.

Dates are when a change reached the environment named. Within /api/v1, the Astra routes and the MCP tools only additive changes ship: new operations, new optional parameters, new response fields, and new values in open sets. Tolerate unknown fields and enum values. Paths below are today's; before 2026-09-27 the client API was served at /api/v3.

SDKs, agent skills and an agent quickstart

  • Official SDKs for Node (@avee_tech/sdk), Go (github.com/aveetechapp/avee-go) and Python (avee), each with the Astra client. See SDKs.
  • Agent skills: npx skills add aveetechapp/avee-skills. See Agent skills and the agent quickstart.
  • Pay per call with x402 past the keyless budget: USDC on Base, Arbitrum or Solana, on every priced operation and over MCP.
  • A Use cases tab: AI agents, pay per call, MCP, DEX, perps, and how avee compares.

Discovery, holders, perps and oracle prices

  • Pairs gain windows (5m, 1h, 6h and 24h figures with the buy/sell split), launchpad, safety, last_trade_at and price_native. Tokens gain windows, holder_stats and profile.
  • New operations: GET /trending, GET /pairs/new, GET /launchpads/tokens, a token's holders and traders, POST /pairs/batch (up to 50 pairs), GET /perps, GET /perps/{market}/history, GET /perps/liquidations, a wallet's funding, GET /deployers/{address}/tokens, and GET /prices and GET /prices/at from the Astra oracle.
  • MCP gains get_trending, get_new_pairs, get_movers, get_launchpad_tokens, get_perp_markets, get_token_holders, get_wallet_funding and get_oracle_prices.
  • Not yet: 15- and 30-minute windows, curve progress, per-token taxes and owner renunciation, and trader cohorts.
Oracle

Astra, a Hermes-compatible oracle (preview)

  • Astra serves a composite exchange index over Pyth Hermes' routes and JSON, free and keyless: latest and historical prices, SSE and WebSocket streams, and the Hermes v1 routes.
  • Pyth feed IDs resolve wherever a feed measures the same quantity. Tokenized stocks get two feeds: the share price and the Robinhood token price.
  • Native routes: GET /v1/feeds, GET /v1/status and GET /v1/candles. FX, metals and commodities are served as reference prices. See Methodology.
Breaking

/api/v1, and no key required

  • New path, no aliases. The client API moved from /api/v3 to /api/v1. Operations, parameters and response shapes are unchanged. The screener API moved from /api/v2 to /api/screener/v1, and the legacy /api/v1 API was retired to free its path.
  • No key on any operation. Keyless callers share one budget per client address, weighted by each operation's x-avee-cost-cu; an IPv6 address counts by its /64. See Authentication and limits.
  • The MCP server keys its keyless budget the same way.

The venue leaderboard

  • GET /leaderboard?scope=protocols ranks DEXes and launchpads on one board. Each pair counts in exactly one row: its launchpad if it has one, otherwise the DEX that owns its factory. Growth and rank movement are withheld across this change of method.
  • Entries gain category (dex, launchpad, perps, aggregator) and infra; metrics gain hosted_volume_24h, shown but never ranked.

The token market list

  • GET /tokens is now the token market list: one row per token per chain, with the figures of every pair it trades in rolled up, ranked by market cap by default. New filters and sorts mirror the pair screener. Blocked tokens never appear.
  • GET /chains/{chain}/tokens/{address}/pairs returns the markets a token trades in on one chain.

Wallets, and one address rule

  • Eleven wallet operations: rank traders on a chain, one trader's profile, positions, trades, PNL series, best trades and rounds, a wallet across chains, the trader population per chain, the chain and protocol boards, and behaviour labels for up to 200 wallets at once.
  • An EVM address no longer needs 0x, in any case; responses return the lower-case 0x form.
  • The reference's playground can call the API from these docs.

The parity pass

  • GET /pairs reports excluded_chains, applied_sort and applied_timeframe.
  • Chains carry metrics_stale and more chain-level figures.
  • Risk signals gain group and severity, so an unknown kind can still be ranked.
  • Farms gain lifecycle_state and data_quality_flags; GET /chains/{chain}/farms/{address} reads one farm.
  • GET /chains/{chain}/tokens/{address}/proof returns the Merkle proof of a verdict at the last published epoch.

Verdicts and the token brief

  • GET /chains/{chain}/tokens/{address}/verdict returns the EIP-712 signed verdict for a token: ok, watch, blocked or unknown. ok means nothing is recorded against it, not a clearance.
  • GET /chains/{chain}/tokens/{address}/brief answers in one call what took six, with ETag support for polling.
  • Pair rows carry verdict.status. Pair and token statuses gain unresolved.

Farms

  • GET /farms serves indexed yield farms with TVL, the reward token, APR and the farm contract's verification status, across up to eight chains.

First release

  • Pairs, trades, candles, tokens, search, chains and the self-describing GET /openapi.yml and GET /llms.txt.
  • One chain parameter (slug or numeric id), one page envelope, RFC 9457 errors with a request_id.