till_vet_meme
Which contract is the REAL memecoin among 10+ look-alikes? Fail-closed verdict from live market data (DexScreener). Returns: genuine (one contract dominates liquidity), ambiguous (top-2 tied — never certified), impersonation (the address you passed is NOT the dominant one), thin (no credible liquidity). Advisory + re-verifiable. ALSO returns observedRisk, kept SEPARATE from the verdict on purpose: status answers IDENTITY ("is this the contract you think it is?"), observedRisk carries what this node has MEASURED about outcomes. Its rate is WITHHELD unless the bound is verified — the reading was only measured where the launch funder had paid fewer than 20 sibling wallets, and outside that branch it separates almost nothing, so a number there would be a ceiling dressed as a signal. The bound is checked for free against this node's own observation database; pass siblingCount yourself if you have traced the funder. Every shape carries siblingCountSource (where the number came from) and a disclosure: it is a POPULATION statistic, never a claim that this particular token will rug. inSample has THREE states, not two: true (the caller told us the bet has graded nothing forward yet), false (it has graded some), and null (nobody supplied the count — UNKNOWN, which is not the same as zero, and the accompanying gradedForwardNote says so).
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| symbol | Yes | memecoin symbol, e.g. "TOSHI", "BRETT" | |
| address | No | optional specific contract address to judge | |
| chainId | No | optional chain filter — the DexScreener slug ("base", "solana", "ethereum") or an EVM chain id (8453 = Base). A chain we cannot map returns NO candidates rather than silently searching every chain: being handed a Solana contract after asking for Base is worse than being handed nothing. | |
| siblingCount | No | optional: how many sibling wallets the launch funder has paid, if YOU have traced it. Supplying it lifts the withholding on `observedRisk`. Omit it and this node checks its own observation database for free; omit it AND the token is unknown here, and the rate stays WITHHELD rather than guessed. |