Agent Token Check
One HTTP call tells your agent whether a token is safe to touch — on 45 chains including Ethereum, BNB Chain, Base, Arbitrum, Polygon, Optimism, Avalanche, Solana, Tron and Sui. Pay $0.01 per call with x402: no account, no API key.
SAFECAUTIONDANGER + a 0–100 score and plain-English reasons, each citing its data source. SAFE is only given with a live sell simulation or for trusted assets.
Endpoints
| Route | Price | What it does |
|---|---|---|
GET /check?token=…&chain=bsc | $0.01 (x402) | Full check. chain defaults to bsc; Solana/Tron/Sui addresses are auto-detected. |
GET /check/free?token=…&chain=… | Free, 3/day per IP | Same response, for trying it out. |
GET /check/demo?token=CAKE|WBNB|USDT|WETH|UNI|ARB|USDC_BASE|BONK|USDC_SOL | Free | Live check of a sample token. |
GET /chains | Free | Supported chains and data sources. |
GET /.well-known/x402, /openapi.json | Free | Machine-readable discovery. |
Supported chains
| chain | Network | Sell simulation | Sources |
|---|---|---|---|
bsc | BNB Smart Chain (56) | yes | GoPlus, honeypot.is, public RPC |
eth | Ethereum (1) | yes | GoPlus, honeypot.is, public RPC |
base | Base (8453) | yes | GoPlus, honeypot.is, public RPC |
arbitrum | Arbitrum One (42161) | no — max CAUTION unless trusted | GoPlus, public RPC |
polygon | Polygon PoS (137) | no — max CAUTION unless trusted | GoPlus, public RPC |
optimism | OP Mainnet (10) | no — max CAUTION unless trusted | GoPlus, public RPC |
avalanche | Avalanche C-Chain (43114) | no — max CAUTION unless trusted | GoPlus, public RPC |
solana | Solana | no — max CAUTION unless trusted | GoPlus, RugCheck, public RPC |
tron | Tron | no — max CAUTION unless trusted | GoPlus |
sui | Sui | no — max CAUTION unless trusted | GoPlus |
opbnb | opBNB (204) | no — max CAUTION unless trusted | GoPlus, public RPC |
linea | Linea (59144) | no — max CAUTION unless trusted | GoPlus, public RPC |
zksync | zkSync Era (324) | no — max CAUTION unless trusted | GoPlus, public RPC |
blast | Blast (81457) | no — max CAUTION unless trusted | GoPlus, public RPC |
scroll | Scroll (534352) | no — max CAUTION unless trusted | GoPlus, public RPC |
mantle | Mantle (5000) | no — max CAUTION unless trusted | GoPlus, public RPC |
unichain | Unichain (130) | no — max CAUTION unless trusted | GoPlus, public RPC |
sonic | Sonic (146) | no — max CAUTION unless trusted | GoPlus, public RPC |
berachain | Berachain (80094) | no — max CAUTION unless trusted | GoPlus, public RPC |
gnosis | Gnosis (100) | no — max CAUTION unless trusted | GoPlus, public RPC |
cronos | Cronos (25) | no — max CAUTION unless trusted | GoPlus, public RPC |
worldchain | World Chain (480) | no — max CAUTION unless trusted | GoPlus, public RPC |
soneium | Soneium (1868) | no — max CAUTION unless trusted | GoPlus, public RPC |
abstract | Abstract (2741) | no — max CAUTION unless trusted | GoPlus, public RPC |
monad | Monad (143) | no — max CAUTION unless trusted | GoPlus, public RPC |
xlayer | X Layer (196) | no — max CAUTION unless trusted | GoPlus, public RPC |
manta | Manta Pacific (169) | no — max CAUTION unless trusted | GoPlus, public RPC |
story | Story (1514) | no — max CAUTION unless trusted | GoPlus, public RPC |
hashkey | HashKey Chain (177) | no — max CAUTION unless trusted | GoPlus, public RPC |
morph | Morph (2818) | no — max CAUTION unless trusted | GoPlus, public RPC |
merlin | Merlin (4200) | no — max CAUTION unless trusted | GoPlus, public RPC |
bitlayer | Bitlayer (200901) | no — max CAUTION unless trusted | GoPlus, public RPC |
zircuit | Zircuit (48900) | no — max CAUTION unless trusted | GoPlus, public RPC |
plasma | Plasma (9745) | no — max CAUTION unless trusted | GoPlus, public RPC |
conflux | Conflux eSpace (1030) | no — max CAUTION unless trusted | GoPlus, public RPC |
kcc | KCC (321) | no — max CAUTION unless trusted | GoPlus, public RPC |
robinhood | Robinhood Chain (4663) | no — max CAUTION unless trusted | GoPlus, public RPC |
stable | Stable (988) | no — max CAUTION unless trusted | GoPlus, public RPC |
pharos | Pharos (1672) | no — max CAUTION unless trusted | GoPlus, public RPC |
gravity | Gravity Alpha (1625) | no — max CAUTION unless trusted | GoPlus |
mint | Mint (185) | no — max CAUTION unless trusted | GoPlus |
zklink | zkLink Nova (810180) | no — max CAUTION unless trusted | GoPlus |
zkfair | ZKFair (42766) | no — max CAUTION unless trusted | GoPlus, public RPC |
fon | FON (201022) | no — max CAUTION unless trusted | GoPlus, public RPC |
jovay | Jovay (5734951) | no — max CAUTION unless trusted | GoPlus, public RPC |
What is checked
| Check | Source |
|---|---|
| Honeypot — can you actually sell? Buy/sell tax | honeypot.is live simulation (Ethereum, BNB Chain, Base); GoPlus elsewhere |
| Owner powers: mint, pause, blacklist, change tax, hidden owner, reclaim ownership, balance changes | GoPlus; fallback public RPC owner() + bytecode scan |
| Solana: mint/freeze authority, Token-2022 transfer fee, permanent delegate, transfer hook, mutable metadata, rug flags | Solana RPC, RugCheck, GoPlus |
| Proxy / upgradeable | GoPlus + RPC EIP-1967 slot |
| LP locked or burned %, liquidity | GoPlus lp_holders, RugCheck markets, honeypot.is |
| Top-10 holder concentration (excl. LP/burn/locked) | GoPlus, RugCheck, honeypot.is |
| Source verified, token age | GoPlus, honeypot.is, RugCheck |
Results are cached for 5 minutes. Data: GoPlus Security, honeypot.is, RugCheck, public RPCs.
Example response
{
"token": "0x0E09FaBB73Bd3Ade0a17ECC321fD13a19e81cE82",
"chain": "bsc",
"chainId": 56,
"name": "PancakeSwap Token",
"symbol": "Cake",
"verdict": "SAFE",
"score": 90,
"sellTested": true,
"reasons": [
"Owner can still mint new tokens (source: GoPlus)",
"Listed on GoPlus trust list (source: GoPlus)"
],
"checks": "{ honeypot, taxes, owner, proxy, liquidity, top10Holders, verified, age } — each with its source"
}
Paying with x402
Call /check without payment and you get HTTP 402 with a base64 PAYMENT-REQUIRED header (x402 v2, scheme exact). Any x402 v2 client can pay and retry automatically. $0.01 in USDC on any of:
| Network | Asset | Amount (atomic) |
|---|---|---|
Base eip155:8453 | USDC 0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913 (EIP-3009) | 10000 |
BNB Smart Chain eip155:56 | USDC 0x8AC76a51cc950d9822D68b83fE1Ad97B32Cd580d (Permit2) | 10000000000000000 |
Polygon eip155:137 | USDC 0x3c499c542cEF5E3811e1192ce70d8cC03d5c3359 (EIP-3009) | 10000 |
Arbitrum One eip155:42161 | USDC 0xaf88d065e77c8cC2239327C5EDb3A432268e5831 (EIP-3009) | 10000 |
OP Mainnet eip155:10 | USDC 0x0b2C639c533813f4Aa9D7837CAf62653d097Ff85 (EIP-3009) | 10000 |
Avalanche C-Chain eip155:43114 | USDC 0xB97EF9Ef8734C71904D8002F8b6Bc66Dd9c48a6E (EIP-3009) | 10000 |
Pay to 0x9135e7Fe5b6ca7ace03c6A9d983629A8fa00A3f6. Facilitators: x402.dexter.cash, facilitator.payai.network (gas sponsored). BNB Chain USDC uses Permit2 (one-time approval).
curl -i "https://agent-token-check.pages.dev/check?token=0x0E09FaBB73Bd3Ade0a17ECC321fD13a19e81cE82&chain=bsc" curl "https://agent-token-check.pages.dev/check/demo?token=BONK" curl "https://agent-token-check.pages.dev/chains"
v0.2.0. Automated heuristic from third-party data, not financial advice. A token that passes today can change tomorrow.