Scan for tokens that pass a strategy
scan_tokensTHE first call of a scheduled scan: Moby applies a strategy's thresholds server-side and returns only the Solana tokens that pass, already deduplicated for this user. Empty qualifiers = end the run silently. Pass the previous run's next_since back as since: tokens returned to you for the same rules in the last (the preset's scan interval, 5-15 min) are dropped. Deep-check ONLY the qualifiers, with get_token_trade_brief and get_whale_wallet_profiles; agent_checks is what the scan did NOT check, so apply it yourself. rejected counts why candidates failed; null fields are left out. At most 12 candidates are enriched per scan (wallets desc, liquidity desc, market cap desc, smart-money h1 desc, address asc); the rest come back as not_enriched in that order, first = next in line. An override replaces that one rule of the preset. safety_tier: grey is NOT a red flag; red = caution, and Moby refuses agent buys on red.
Tool call template
This tool declares no required parameters. Add optional parameters from the input schema as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {},
"name": "scan_tokens"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Max qualifiers, 1-10. | |
| since | No | `next_since` from the previous scan. Omit on the first run. ISO 8601 UTC, e.g. `2026-08-11T14:30:00Z`. | |
| is_new | No | Override: only new launches (true) or only not new. | |
| sources | No | Override: candidate sources. | |
| strategy | No | Strategy preset (its id from list_strategies). Omit only to scan with overrides alone. | |
| launchpad | No | Override: only tokens from this launchpad. | |
| min_wallets | No | Override: min distinct tracked wallets buying. | |
| smart_money | No | Override: `not_selling` (h1 flow >= 0), `inflow` (h1 > 0), `inflow_h1_h4`, `any`. | |
| mover_period | No | Override: `movers` source period. | |
| safety_tiers | No | Override: allowed safety tiers. | |
| mark_reported | No | false = a look that does not count as returned (a pre-check). Default true. | |
| max_top10_pct | No | Override: max % of supply in the top 10 holders. | |
| min_liquidity | No | Override: min liquidity, USD. | |
| max_market_cap | No | Override: max market cap, USD. | |
| min_market_cap | No | Override: min market cap, USD. | |
| wallet_actions | No | Override: whale-buy kinds counted (`buy` = any buy). | |
| mover_event_types | No | Override: `movers` source event types (values from get_screener_event_filters). | |
| min_wallet_buy_usd | No | Override: min USD per counted wallet buy. | |
| exclude_asset_classes | No | Override: drop these asset classes before enrichment (unknown class is kept). | |
| wallet_window_minutes | No | Override: window for counting those wallets. | |
| max_price_change_pct_h4 | No | Override: max 4h price change, % (-10 = down >= 10% over 4h). | |
| min_price_change_pct_h4 | No | Override: min 4h price change, % (20 = up >= 20% over 4h). |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||