Tokens/find_token
Ticker to token address
$0.01per call after 25 free a dayFinds the real address for a ticker or name, ranks matches by verification and liquidity, and warns when copycats share the ticker.
Run whenever a user names a token ("buy BONK"). Tickers aren't unique; copycats reuse them. Never take an address from memory.
Saves money. Copycats reuse popular tickers: a search for BONK finds several unverified fakes. This gives the verified token address so the agent doesn't buy a fake.
Call it
| Transport | How |
|---|---|
| HTTP | POST /api/tools/find_token with a JSON body of the inputs below. |
| MCP | tools/call with name find_token on /mcp. |
Inputs
| Name | What it's looking for | Where to get it |
|---|---|---|
namestring, required | Ticker, name or address: "BONK", "Jupiter", "USDC". | Exactly as the user wrote it. |
Returned fields
Every field the tool returns, what it is, and exactly how it's worked out.
| Field | What it is | How it's worked out |
|---|---|---|
namestring | What was searched. | Your input, trimmed. |
bestobject | null | The token we recommend, or null when it isn't safe to pick one for you. | The verified token whose ticker exactly matches (any case, with or without a leading $) with the most liquidity. Null if there's no verified exact match. |
confidence"high" | "medium" | "low" | How safe it is to use best without asking the user. | high: a verified exact match and no other verified token shares the ticker. medium: another verified token shares it. low: no verified exact match. |
copycatsnumber | Unverified tokens using the same ticker. Usually scams copying the real one. | Matches with the same ticker (any case, with or without a leading $) that aren't verified. |
candidates[].addressstring | The token's address, its real identity. | Jupiter token search. |
candidates[].symbol / namestring | Ticker and display name. | Jupiter token search. |
candidates[].decimalsnumber | Decimal places. Needed to convert amounts. | Jupiter token data. |
candidates[].verifiedboolean | Whether Jupiter lists the token as verified. | Jupiter's isVerified flag. |
candidates[].liquidity_usdnumber | null | How much can be traded across DEX pools, in USD. Low means trades move the price a lot. | Jupiter liquidity, rounded to dollars. |
candidates[].holdersnumber | null | How many wallets hold the token. | Jupiter holderCount. |
candidates[].real_trading_scorenumber | null | Jupiter's 0-100 estimate of real (not bot) trading. | Jupiter organicScore, rounded. |
candidates[].token_program"spl-token" | "token-2022" | Which token program the token uses. | Jupiter tokenProgram. |
candidates[].can_mint_more / can_freezeboolean | null | Whether someone can still create more of it, or freeze holders' tokens. false is safer. | Jupiter audit data. null when unknown. token_safety checks these on chain. |
next_stepstring | What to do next, in one sentence. | Built from confidence and copycats. |