Agent quickstart

For agents

Check a token before your agent swaps into it. One HTTP call to the live endpoint: no key, no account, free in beta.

Agent summary

what: Launch risk for a Solana token, read live from mainnet: top holders, wallets linked by direct transfers, mint and freeze authority, a verdict.

call: GET https://www.assayonsol.io/api/launch-risk?mint=<mint> · JSON · no key · free in beta

docs: https://www.assayonsol.io/docs.html · skill https://www.assayonsol.io/agents/SKILL.md · index https://www.assayonsol.io/llms.txt

Call it today

Use the HTTP API today (curl / fetch); the MCP server and skill package ship when the API leaves beta.

  • curl

    Live

    curl -s "https://www.assayonsol.io/api/launch-risk?mint=<mint>"

    No key, no headers. Every field of the answer is in the API reference.

  • fetch

    Live

    await (await fetch(`https://www.assayonsol.io/api/launch-risk?mint=${mint}`)).json()

    Node 18+, Deno, Bun or a browser: CORS is open.

  • Any agent

    SKILL.md

    https://www.assayonsol.io/agents/SKILL.md

    Point your agent at the skill file: when to call, what comes back, the rules. Read SKILL.md.

  • MCP server

    Planned

    Not published yet. The MCP card lists the planned tools and the HTTP endpoint to use until then.

What comes back

JSON, in a few seconds, read from mainnet when you call. The fields an agent acts on:

Fields an agent acts on
FieldUse it to
verdictDecide: high is a stop, medium is a question for the user, low goes ahead. null means no verdict: read note or summary.
summary, flagsTell the user why, in plain words.
linked_share, linked_wallets, linked_sourceSee how much of the top holders’ tokens sits with one group linked by direct transfers, and who sent them.
freeze_authority, mint_authorityWarn before buying a token the issuer can freeze or inflate.
coverageKnow what was read. When complete is false, the linked share is a lower bound.

Planned prices per call

Beta: calls are free; the x402 flow is the planned paid tier and is not enforced.

Use case

Check a token before your agent swaps into it. Treat verdict: "high" as a stop unless the user overrides it.

  • assay.launch_risk · live over HTTP GET /api/launch-risk?mint= 0.05 USDCper call, planned · free in beta
  • assay.list · planned POST /api/assays 0.30 USDCper wallet, planned
  • assay.appeal_status · planned GET /api/appeals/{id} Freeplanned

Planned: pay with x402

Beta: calls are free; the x402 flow is the planned paid tier and is not enforced. When it is, one request gets one price and one receipt:

  1. Ask

    Call the endpoint with no key. A paid call will answer 402 Payment Required with the terms in the PAYMENT-REQUIRED header.

  2. Pay

    Sign a USDC transfer on Solana for exactly amount to payTo: base units with 6 decimals, so 50000 is 0.05 USDC. The exact scheme means the price can’t change between the quote and the payment.

  3. Resend

    Send the same request again with the signed transfer, base64-encoded, in X-PAYMENT.

  4. Get the answer and the receipt

    A facilitator settles the transfer. The answer comes back with X-PAYMENT-RESPONSE carrying the transaction signature: your receipt.

Rules for the agent

The same rules ship in SKILL.md.

  • Stop on high.Treat verdict: "high" as a hard stop for buys unless the user explicitly overrides.
  • Read the flags.An active freeze authority means the issuer can freeze the user’s tokens after the buy. Say so before you swap.
  • Cite, don’t accuse.Linked wallets show transfers, not owners. Never present them as proof against a person; link explorer instead.
  • Mind the coverage.When coverage.complete is false, the linked share is a lower bound.
  • Cache for 5 minutes.The API caches each mint for 5 minutes; checked_at says when mainnet was read. On 429, wait for Retry-After.

Machine-readable files

Static files at the root of the site. Point your agent at any of them.