KOL and smart money tracking on 5 chains, plus CabalSpy ID (SocialFi): verified traders, theses.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
Statistics for up to 100 tokens in a single request. Use for shortlists, or to follow up on the most-traded analytics view. blockchain: solana, bnb, base, eth or rh mints: up to 100 token addresses wallet_type: kol, smart or whale (default kol)
Up to 100 token addresses. Use for shortlists, or to follow up on the most_traded analytics view.
Blockchain. One of: solana, bnb, base, eth, rh. solana has kol, smart and whale wallets; bnb, base, eth and rh have kol and smart. rh is Robinhood Chain, an Ethereum L2.
Wallet type. kol is a Key Opinion Leader, an influencer whose calls move markets. smart is a wallet selected for its track record. whale is a large holder, Solana only.
Statistics for up to 100 tokens in a single request. Use for shortlists, or to follow up on the most-traded analytics view. blockchain: solana, bnb, base, eth or rh mints: up to 100 token addresses wallet_type: kol, smart or whale (default kol)
| Argument | Type | Description |
|---|---|---|
| mints* | array | Up to 100 token addresses. Use for shortlists, or to follow up on the most_traded analytics view. |
| blockchain* | string | Blockchain. One of: solana, bnb, base, eth, rh. solana has kol, smart and whale wallets; bnb, base, eth and rh have kol and smart. rh is Robinhood Chain, an Ethereum L2. |
| wallet_type | string | Wallet type. kol is a Key Opinion Leader, an influencer whose calls move markets. smart is a wallet selected for its track record. whale is a large holder, Solana only. |
{
"type": "object",
"title": "compare_tokensArguments",
"required": [
"blockchain",
"mints"
],
"properties": {
"mints": {
"type": "array",
"items": {
"type": "string"
},
"title": "Mints",
"maxItems": 100,
"description": "Up to 100 token addresses. Use for shortlists, or to follow up on the most_traded analytics view."
},
"blockchain": {
"type": "string",
"title": "Blockchain",
"description": "Blockchain. One of: solana, bnb, base, eth, rh. solana has kol, smart and whale wallets; bnb, base, eth and rh have kol and smart. rh is Robinhood Chain, an Ethereum L2."
},
"wallet_type": {
"type": "string",
"title": "Wallet Type",
"default": "kol",
"description": "Wallet type. kol is a Key Opinion Leader, an influencer whose calls move markets. smart is a wallet selected for its track record. whale is a large holder, Solana only."
}
}
}Statistics for up to 100 wallets in a single request. Much cheaper than calling get_wallet_tracker repeatedly. Use when the user names several wallets, or to follow up on a leaderboard. blockchain: solana, bnb, base, eth or rh addresses: up to 100 wallet addresses wallet_type: kol, smart or whale (default kol) period: 6h, 1d, 7d or 30d (default 7d)
| Argument | Type | Description |
|---|---|---|
| period | string | Statistics window: 6h, 1d, 7d or 30d. Longer windows return far more data and get trimmed harder, so prefer the shortest window that answers the question. |
| addresses* | array | Up to 100 wallet addresses. Far cheaper than calling get_wallet_tracker once per wallet. |
| blockchain* | string | Blockchain. One of: solana, bnb, base, eth, rh. solana has kol, smart and whale wallets; bnb, base, eth and rh have kol and smart. rh is Robinhood Chain, an Ethereum L2. |
| wallet_type | string | Wallet type. kol is a Key Opinion Leader, an influencer whose calls move markets. smart is a wallet selected for its track record. whale is a large holder, Solana only. |
{
"type": "object",
"title": "compare_walletsArguments",
"required": [
"blockchain",
"addresses"
],
"properties": {
"period": {
"type": "string",
"title": "Period",
"default": "7d",
"description": "Statistics window: 6h, 1d, 7d or 30d. Longer windows return far more data and get trimmed harder, so prefer the shortest window that answers the question."
},
"addresses": {
"type": "array",
"items": {
"type": "string"
},
"title": "Addresses",
"maxItems": 100,
"description": "Up to 100 wallet addresses. Far cheaper than calling get_wallet_tracker once per wallet."
},
"blockchain": {
"type": "string",
"title": "Blockchain",
"description": "Blockchain. One of: solana, bnb, base, eth, rh. solana has kol, smart and whale wallets; bnb, base, eth and rh have kol and smart. rh is Robinhood Chain, an Ethereum L2."
},
"wallet_type": {
"type": "string",
"title": "Wallet Type",
"default": "kol",
"description": "Wallet type. kol is a Key Opinion Leader, an influencer whose calls move markets. smart is a wallet selected for its track record. whale is a large holder, Solana only."
}
}
}KOLs with a verified CabalSpy ID badge (reviewed: real X account with reach, wallets proven on-chain), newest badge first. Each entry has the X handle, followers, verified wallets and 7-day activity. Use for "Which KOLs are verified on Base?" or to get wallets of verified influencers. For performance rankings of tracked KOL wallets use get_leaderboard instead. chain: solana, bnb, base, eth or rh — only KOLs with a wallet verified there.
| Argument | Type | Description |
|---|---|---|
| chain | string | Restrict to one blockchain: solana, bnb, base, eth or rh. Leave empty for all. |
| limit | integer | How many KOLs to return (1-50, default 20). |
| cursor | string | Pagination cursor taken from the previous response. Leave empty for the first page. |
{
"type": "object",
"title": "csid_kolsArguments",
"properties": {
"chain": {
"type": "string",
"title": "Chain",
"default": "",
"description": "Restrict to one blockchain: solana, bnb, base, eth or rh. Leave empty for all."
},
"limit": {
"type": "integer",
"title": "Limit",
"default": 20,
"maximum": 50,
"minimum": 1,
"description": "How many KOLs to return (1-50, default 20)."
},
"cursor": {
"type": "string",
"title": "Cursor",
"default": "",
"description": "Pagination cursor taken from the previous response. Leave empty for the first page."
}
}
}The newest theses across all tokens: a live feed of what verified holders are posting, each with token, stance, author and position. Use for "What are verified traders talking about right now?" or to discover tokens with fresh conviction. For one token use csid_token_theses. Needs your own CabalSpy API key with a CabalSpy ID instance (no demo).
| Argument | Type | Description |
|---|---|---|
| limit | integer | How many theses to return (1-25, default 10). |
| scope | string | 'global' (default): theses posted on every platform that uses CabalSpy ID. 'instance': only theses written on your own CabalSpy ID instance. |
| users | string | 'all' (default): every author. 'instance': only users of your CabalSpy ID instance. |
| cursor | string | Pagination cursor taken from the previous response. Leave empty for the first page. |
| instance | string | Your CabalSpy ID instance (its client_id, e.g. 'csid_1a2b…'). Only needed when your account has several instances. Leave empty otherwise. |
| blockchain | string | Restrict to one blockchain: solana, bnb, base, eth or rh. Leave empty for all. |
{
"type": "object",
"title": "csid_latest_thesesArguments",
"properties": {
"limit": {
"type": "integer",
"title": "Limit",
"default": 10,
"maximum": 25,
"minimum": 1,
"description": "How many theses to return (1-25, default 10)."
},
"scope": {
"type": "string",
"title": "Scope",
"default": "global",
"description": "'global' (default): theses posted on every platform that uses CabalSpy ID. 'instance': only theses written on your own CabalSpy ID instance."
},
"users": {
"type": "string",
"title": "Users",
"default": "all",
"description": "'all' (default): every author. 'instance': only users of your CabalSpy ID instance."
},
"cursor": {
"type": "string",
"title": "Cursor",
"default": "",
"description": "Pagination cursor taken from the previous response. Leave empty for the first page."
},
"instance": {
"type": "string",
"title": "Instance",
"default": "",
"description": "Your CabalSpy ID instance (its client_id, e.g. 'csid_1a2b…'). Only needed when your account has several instances. Leave empty otherwise."
},
"blockchain": {
"type": "string",
"title": "Blockchain",
"default": "",
"description": "Restrict to one blockchain: solana, bnb, base, eth or rh. Leave empty for all."
}
}
}Ranking of CabalSpy ID verified traders by their tracked trades: volume, realized PnL, win rate and trade count for a period. Covers the users of YOUR CabalSpy ID instance (the people who signed in on your platform); scope='global' ranks every CabalSpy ID user and needs the Enterprise plan. Use for "Who are the best traders on my platform this week?". For KOLs and smart money tracked by CabalSpy use get_leaderboard. Needs your own CabalSpy API key with a CabalSpy ID instance (no demo).
| Argument | Type | Description |
|---|---|---|
| sort | string | volume (default), pnl (native currency), pnl_usd, win_rate or trades. |
| limit | integer | How many traders (1-50, default 10). |
| scope | string | 'instance' (default): the users of your CabalSpy ID instance. 'global': every CabalSpy ID user, Enterprise plan only. |
| cursor | string | Pagination cursor taken from the previous response. Leave empty for the first page. |
| period | string | Statistics window: 6h, 1d, 7d or 30d. Longer windows return far more data and get trimmed harder, so prefer the shortest window that answers the question. |
| instance | string | Your CabalSpy ID instance (its client_id, e.g. 'csid_1a2b…'). Only needed when your account has several instances. Leave empty otherwise. |
CabalSpy ID profile of a crypto trader: X account (followers, age), Telegram, KOL badge, the wallets they verified by an on-chain payment (per chain), and 7-day trading activity. Use it to check who someone is and whether a trader really owns the wallets they claim, e.g. "Is @CabalSpySol verified?", "Which wallets does this KOL trade with?". Pass exactly one of: username (X handle), csid_id, x_id, or address (looks up the owner of a wallet). Works on the keyless demo with sandbox identities only (try username 'csid_sandbox_kol').
| Argument | Type | Description |
|---|---|---|
| x_id | string | Numeric X user id, e.g. '1234567890123456789'. Survives handle changes. |
| address | string | A wallet address (Solana base58 or 0x EVM). Returns the person who verified it. |
| csid_id | string | CabalSpy ID user id (a UUID, the 'sub' of a Login with CabalSpy ID token), e.g. '123e4567-e89b-12d3-a456-426614174000'. |
| username | string | X (Twitter) handle of the person, with or without @, e.g. 'CabalSpySol'. Pass exactly one of username, csid_id, x_id or address. |
{
"type": "object",
"title": "csid_profileArguments",
"properties": {
"x_id": {
"type": "string",
"title": "X Id",
"default": "",
"description": "Numeric X user id, e.g. '1234567890123456789'. Survives handle changes."
},
"address": {
"type": "string",
"title": "Address",
"default": "",
"description": "A wallet address (Solana base58 or 0x EVM). Returns the person who verified it."
},
"csid_id": {
"type": "string",
"title": "Csid Id",
"default": "",
"description": "CabalSpy ID user id (a UUID, the 'sub' of a Login with CabalSpy ID token), e.g. '123e4567-e89b-12d3-a456-426614174000'."
},
"username": {
"type": "string",
"title": "Username",
"default": "",
"description": "X (Twitter) handle of the person, with or without @, e.g. 'CabalSpySol'. Pass exactly one of username, csid_id, x_id or address."
}
}
}One thesis in full with its discussion: body, stance, author, the author's position, reactions and the replies (oldest first). Use after another csid_ tool when the user wants to read a thread. cursor pages through the replies. Needs your own CabalSpy API key with a CabalSpy ID instance (no demo).
| Argument | Type | Description |
|---|---|---|
| cursor | string | Pagination cursor taken from the previous response. Leave empty for the first page. |
| instance | string | Your CabalSpy ID instance (its client_id, e.g. 'csid_1a2b…'). Only needed when your account has several instances. Leave empty otherwise. |
| thesis_id* | string | Thesis id (UUID) from another csid_ tool, e.g. '7d4436ac-c0ef-4655-995f-10b06af94f21'. |
| replies_limit | integer | How many replies to include (0-50, default 20). |
{
"type": "object",
"title": "csid_thesisArguments",
"required": [
"thesis_id"
],
"properties": {
"cursor": {
"type": "string",
"title": "Cursor",
"default": "",
"description": "Pagination cursor taken from the previous response. Leave empty for the first page."
},
"instance": {
"type": "string",
"title": "Instance",
"default": "",
"description": "Your CabalSpy ID instance (its client_id, e.g. 'csid_1a2b…'). Only needed when your account has several instances. Leave empty otherwise."
},
"thesis_id": {
"type": "string",
"title": "Thesis Id",
"description": "Thesis id (UUID) from another csid_ tool, e.g. '7d4436ac-c0ef-4655-995f-10b06af94f21'."
},
"replies_limit": {
"type": "integer",
"title": "Replies Limit",
"default": 20,
"maximum": 50,
"minimum": 0,
"description": "How many replies to include (0-50, default 20)."
}
}
}What do verified holders think about a token? Returns the bull/bear summary and the latest (or top) theses: short posts that only people holding the token in a CabalSpy ID verified wallet can write, each with the author's live position (holding or sold, invested, PnL). Use for "What do holders say about $BONK?" or "Is sentiment on this token bullish?". Needs your own CabalSpy API key with a CabalSpy ID instance (no demo). Example: blockchain='solana', mint='DezXAZ8z7PnrnRJjz3wXBoRgixCa6xjnB7YaB1pPB263'. Page with the returned next_cursor.
| Argument | Type | Description |
|---|---|---|
| mint* | string | Token address: the mint on Solana, the contract address on the EVM chains. |
| sort | string | 'new' (newest first, default) or 'top' (most liked first). |
| limit | integer | How many theses to return (1-25, default 10). |
| scope | string | 'global' (default): theses posted on every platform that uses CabalSpy ID. 'instance': only theses written on your own CabalSpy ID instance. |
| cursor | string | Pagination cursor taken from the previous response. Leave empty for the first page. |
| stance | string | Only bullish ('bull') or bearish ('bear') theses. Leave empty for all, including neutral ones. |
All theses one CabalSpy ID user has posted, newest first, with token and the position they hold. Use to judge a caller's track record: "What has @CabalSpySol been bullish on, and did it work out?". Needs your own CabalSpy API key with a CabalSpy ID instance (no demo).
| Argument | Type | Description |
|---|---|---|
| limit | integer | How many theses to return (1-25, default 10). |
| cursor | string | Pagination cursor taken from the previous response. Leave empty for the first page. |
| csid_id | string | CabalSpy ID user id (a UUID, the 'sub' of a Login with CabalSpy ID token), e.g. '123e4567-e89b-12d3-a456-426614174000'. |
| instance | string | Your CabalSpy ID instance (its client_id, e.g. 'csid_1a2b…'). Only needed when your account has several instances. Leave empty otherwise. |
| username | string | X handle of the author, with or without @, e.g. 'CabalSpySol'. Pass username or csid_id. |
{
"type": "object",
"title": "csid_user_thesesArguments",
"properties": {
"limit": {
"type": "integer",
"title": "Limit",
"default": 10,
"maximum": 25,
"minimum": 1,
"description": "How many theses to return (1-25, default 10)."
},
"cursor": {
"type": "string",
"title": "Cursor",
"default": "",
"description": "Pagination cursor taken from the previous response. Leave empty for the first page."
},
"csid_id": {
"type": "string",
"title": "Csid Id",
"default": "",
"description": "CabalSpy ID user id (a UUID, the 'sub' of a Login with CabalSpy ID token), e.g. '123e4567-e89b-12d3-a456-426614174000'."
},
"instance": {
"type": "string",
"title": "Instance",
"default": "",
"description": "Your CabalSpy ID instance (its client_id, e.g. 'csid_1a2b…'). Only needed when your account has several instances. Leave empty otherwise."
},
"username": {
"type": "string",
"title": "Username",
"default": "",
"description": "X handle of the author, with or without @, e.g. 'CabalSpySol'. Pass username or csid_id."
}
}
}Who owns a wallet? Returns the CabalSpy ID user who proved ownership with an on-chain payment (X handle, KOL badge, verified chains), or verified=false. Use it when a user pastes an address and asks who is behind it — e.g. "Who owns wallet X?" — and to find verified traders among a token's holders. Complements lookup_wallet (CabalSpy's own wallet labels). Several addresses at once count as one batch request.
| Argument | Type | Description |
|---|---|---|
| addresses* | string | One wallet address, or up to 100 separated by commas (Solana and EVM mixed), e.g. 'HHTNJXn5zDoVtbnRpYVwr7tKmnMs94cMPsu8gK2aLG9X'. |
{
"type": "object",
"title": "csid_wallet_ownerArguments",
"required": [
"addresses"
],
"properties": {
"addresses": {
"type": "string",
"title": "Addresses",
"description": "One wallet address, or up to 100 separated by commas (Solana and EVM mixed), e.g. 'HHTNJXn5zDoVtbnRpYVwr7tKmnMs94cMPsu8gK2aLG9X'."
}
}
}Check whether KOL wallets bought a Solana token through Jito bundles together with side wallets they control, which hides the real size of their position. Returns each detected bundle with a confidence score and the evidence behind it: matching transaction fees, block index, and adjacency to the KOL's own transaction. Use this when a user asks whether a launch was bundled, insider-heavy, sniped or manipulated. Solana only, because it depends on Jito bundles. mint: the Solana token mint address
| Argument | Type | Description |
|---|---|---|
| mint* | string | The Solana token mint address to inspect for bundled buys. |
{
"type": "object",
"title": "detect_bundlesArguments",
"required": [
"mint"
],
"properties": {
"mint": {
"type": "string",
"title": "Mint",
"description": "The Solana token mint address to inspect for bundled buys."
}
}
}How many trades happened and how much value moved over a window of up to 24 hours, plus how many distinct wallets were involved. Use for how busy the market or a single token is, rather than for the individual trades. blockchain: solana, bnb, base, eth or rh wallet_type: kol, smart or whale (default kol) hours: window in hours, at most 24 (default 1) mint: restrict to one token
| Argument | Type | Description |
|---|---|---|
| mint | string | Restrict the result to a single token. Leave empty for all tokens. |
| hours | integer | Observation window in hours. The server caps this at 24. |
| blockchain* | string | Blockchain. One of: solana, bnb, base, eth, rh. solana has kol, smart and whale wallets; bnb, base, eth and rh have kol and smart. rh is Robinhood Chain, an Ethereum L2. |
| wallet_type | string | Wallet type. kol is a Key Opinion Leader, an influencer whose calls move markets. smart is a wallet selected for its track record. whale is a large holder, Solana only. |
{
"type": "object",
"title": "get_activity_metricsArguments",
"required": [
"blockchain"
],
"properties": {
"mint": {
"type": "string",
"title": "Mint",
"default": "",
"description": "Restrict the result to a single token. Leave empty for all tokens."
},
"hours": {
"type": "integer",
"title": "Hours",
"default": 1,
"maximum": 24,
"minimum": 1,
"description": "Observation window in hours. The server caps this at 24."
},
"blockchain": {
"type": "string",
"title": "Blockchain",
"description": "Blockchain. One of: solana, bnb, base, eth, rh. solana has kol, smart and whale wallets; bnb, base, eth and rh have kol and smart. rh is Robinhood Chain, an Ethereum L2."
},
"wallet_type": {
"type": "string",
"title": "Wallet Type",
"default": "kol",
"description": "Wallet type. kol is a Key Opinion Leader, an influencer whose calls move markets. smart is a wallet selected for its track record. whale is a large holder, Solana only."
}
}
}Four aggregate views over the tracked wallets. volume_trend shows activity over time. most_traded lists the tokens getting the most attention. win_rate gives the distribution of outcomes. top_performers ranks wallets by profit. Use for the overall picture rather than one wallet or token. blockchain: solana, bnb, base, eth or rh mode: volume_trend, most_traded, win_rate or top_performers wallet_type: kol, smart or whale (default kol) period: 6h, 1d, 7d or 30d (default 7d) limit: how many entries (default 20)
| Argument | Type | Description |
|---|---|---|
| mode* | string | volume_trend shows activity over time. most_traded lists the tokens getting the most attention. win_rate gives the distribution of outcomes. top_performers ranks wallets by profit. |
| limit | integer | How many entries to return. Keep it small: large results are trimmed to fit the context window anyway. |
| period | string | Statistics window: 6h, 1d, 7d or 30d. Longer windows return far more data and get trimmed harder, so prefer the shortest window that answers the question. |
| blockchain* | string | Blockchain. One of: solana, bnb, base, eth, rh. solana has kol, smart and whale wallets; bnb, base, eth and rh have kol and smart. rh is Robinhood Chain, an Ethereum L2. |
| wallet_type | string | Wallet type. kol is a Key Opinion Leader, an influencer whose calls move markets. smart is a wallet selected for its track record. whale is a large holder, Solana only. |
Service health and current coverage: chains, wallet types, periods, limits and how many wallets are tracked per chain. Useful when a query returns nothing and it is unclear whether the data exists at all.
No arguments.
{
"type": "object",
"title": "get_api_statusArguments",
"properties": {}
}Top tracked wallets ranked by performance for a chain, wallet type and period. Use for "best Solana KOLs today", "top whales this week", and similar. blockchain: solana, bnb, base, eth or rh wallet_type: kol, smart or whale. whale is Solana only. period: 6h, 1d, 7d or 30d (default 1d) limit: how many wallets (default 20)
| Argument | Type | Description |
|---|---|---|
| limit | integer | How many entries to return. Keep it small: large results are trimmed to fit the context window anyway. |
| period | string | Statistics window: 6h, 1d, 7d or 30d. Longer windows return far more data and get trimmed harder, so prefer the shortest window that answers the question. |
| blockchain* | string | Blockchain. One of: solana, bnb, base, eth, rh. solana has kol, smart and whale wallets; bnb, base, eth and rh have kol and smart. rh is Robinhood Chain, an Ethereum L2. |
| wallet_type | string | Wallet type. kol is a Key Opinion Leader, an influencer whose calls move markets. smart is a wallet selected for its track record. whale is a large holder, Solana only. |
{
"type": "object",
"title": "get_leaderboardArguments",
"required": [
"blockchain"
],
"properties": {
"limit": {
"type": "integer",
"title": "Limit",
"default": 20,
"maximum": 200,
"minimum": 1,
"description": "How many entries to return. Keep it small: large results are trimmed to fit the context window anyway."
},
"period": {
"type": "string",
"title": "Period",
"default": "1d",
"description": "Statistics window: 6h, 1d, 7d or 30d. Longer windows return far more data and get trimmed harder, so prefer the shortest window that answers the question."
},
"blockchain": {
"type": "string",
"title": "Blockchain",
"description": "Blockchain. One of: solana, bnb, base, eth, rh. solana has kol, smart and whale wallets; bnb, base, eth and rh have kol and smart. rh is Robinhood Chain, an Ethereum L2."
},
"wallet_type": {
"type": "string",
"title": "Wallet Type",
"default": "kol",
"description": "Wallet type. kol is a Key Opinion Leader, an influencer whose calls move markets. smart is a wallet selected for its track record. whale is a large holder, Solana only."
}
}
}Daily and monthly realized profit and loss for a wallet across its tracked history. Use for when a wallet made or lost money, and for spotting streaks. blockchain: solana, bnb, base, eth or rh address: the wallet address
| Argument | Type | Description |
|---|---|---|
| address* | string | Wallet address. Base58 on Solana, 0x-prefixed hex on the EVM chains. |
| blockchain* | string | Blockchain. One of: solana, bnb, base, eth, rh. solana has kol, smart and whale wallets; bnb, base, eth and rh have kol and smart. rh is Robinhood Chain, an Ethereum L2. |
{
"type": "object",
"title": "get_pnl_calendarArguments",
"required": [
"blockchain",
"address"
],
"properties": {
"address": {
"type": "string",
"title": "Address",
"description": "Wallet address. Base58 on Solana, 0x-prefixed hex on the EVM chains."
},
"blockchain": {
"type": "string",
"title": "Blockchain",
"description": "Blockchain. One of: solana, bnb, base, eth, rh. solana has kol, smart and whale wallets; bnb, base, eth and rh have kol and smart. rh is Robinhood Chain, an Ethereum L2."
}
}
}The live feed: what tracked wallets are buying and selling right now, across every token or filtered to one. Use for "what are KOLs buying at the moment". blockchain: solana, bnb, base, eth or rh wallet_type: kol, smart or whale (default kol) minutes: only trades from the last N minutes, at most 60. Leave at 0 for the most recent trades regardless of age. mint: restrict to one token limit: how many trades (default 25)
| Argument | Type | Description |
|---|---|---|
| mint | string | Restrict the result to a single token. Leave empty for all tokens. |
| limit | integer | How many entries to return. Keep it small: large results are trimmed to fit the context window anyway. |
| minutes | integer | Only trades from the last N minutes, at most 60. Leave at 0 for the most recent trades regardless of age. |
| blockchain* | string | Blockchain. One of: solana, bnb, base, eth, rh. solana has kol, smart and whale wallets; bnb, base, eth and rh have kol and smart. rh is Robinhood Chain, an Ethereum L2. |
| wallet_type | string | Wallet type. kol is a Key Opinion Leader, an influencer whose calls move markets. smart is a wallet selected for its track record. whale is a large holder, Solana only. |
{
"type": "object",
"title": "get_recent_tradesArguments",
"required": [
"blockchain"
],
"properties": {
"mint": {
"type": "string",
"title": "Mint",
"default": "",
"description": "Restrict the result to a single token. Leave empty for all tokens."
},
"limit": {
"type": "integer",
"title": "Limit",
"default": 25,
"maximum": 200,
"minimum": 1,
"description": "How many entries to return. Keep it small: large results are trimmed to fit the context window anyway."
},
"minutes": {
"type": "integer",
"title": "Minutes",
"default": 0,
"maximum": 60,
"minimum": 0,
"description": "Only trades from the last N minutes, at most 60. Leave at 0 for the most recent trades regardless of age."
},
"blockchain": {
"type": "string",
"title": "Blockchain",
"description": "Blockchain. One of: solana, bnb, base, eth, rh. solana has kol, smart and whale wallets; bnb, base, eth and rh have kol and smart. rh is Robinhood Chain, an Ethereum L2."
},
"wallet_type": {
"type": "string",
"title": "Wallet Type",
"default": "kol",
"description": "Wallet type. kol is a Key Opinion Leader, an influencer whose calls move markets. smart is a wallet selected for its track record. whale is a large holder, Solana only."
}
}
}Past signals, for checking whether a kind of signal has worked historically before acting on a live one. blockchain: solana, bnb, base, eth or rh wallet_type: kol, smart or whale (default kol) days: 7, 30, 90 or "all" (default 30) mode: cluster, entry or exit. Omit for all modes. limit: how many signals (default 25)
| Argument | Type | Description |
|---|---|---|
| days | string | How far back to look: 7, 30, 90 or all. |
| mode | string | Restrict to cluster, entry or exit. Leave empty for every mode. |
| limit | integer | How many entries to return. Keep it small: large results are trimmed to fit the context window anyway. |
| blockchain* | string | Blockchain. One of: solana, bnb, base, eth, rh. solana has kol, smart and whale wallets; bnb, base, eth and rh have kol and smart. rh is Robinhood Chain, an Ethereum L2. |
| wallet_type | string | Wallet type. kol is a Key Opinion Leader, an influencer whose calls move markets. smart is a wallet selected for its track record. whale is a large holder, Solana only. |
{
"type": "object",
"title": "get_signal_historyArguments",
"required": [
"blockchain"
],
"properties": {
"days": {
"type": "string",
"title": "Days",
"default": "30",
"description": "How far back to look: 7, 30, 90 or all."
},
"mode": {
"type": "string",
"title": "Mode",
"default": "",
"description": "Restrict to cluster, entry or exit. Leave empty for every mode."
},
"limit": {
"type": "integer",
"title": "Limit",
"default": 25,
"maximum": 200,
"minimum": 1,
"description": "How many entries to return. Keep it small: large results are trimmed to fit the context window anyway."
},
"blockchain": {
"type": "string",
"title": "Blockchain",
"description": "Blockchain. One of: solana, bnb, base, eth, rh. solana has kol, smart and whale wallets; bnb, base, eth and rh have kol and smart. rh is Robinhood Chain, an Ethereum L2."
},
"wallet_type": {
"type": "string",
"title": "Wallet Type",
"default": "kol",
"description": "Wallet type. kol is a Key Opinion Leader, an influencer whose calls move markets. smart is a wallet selected for its track record. whale is a large holder, Solana only."
}
}
}Tokens where several tracked wallets acted within the same window. 'cluster' means multiple wallets bought the same token, which is the strongest signal. 'entry' marks fresh positions, 'exit' marks wallets selling out. Use this for "what should I be looking at right now". Only the first page is reachable: this endpoint reports that more results exist but does not return a usable cursor, so raise the limit rather than trying to paginate. Smart money signals are unavailable on eth. blockchain: solana, bnb, base, eth or rh wallet_type: kol, smart or whale (default kol) mode: cluster, entry or exit (default cluster) hours: observation window (default 6) min_wallets: minimum wallets in a cluster; higher means fewer, stronger signals min_win_rate: only count wallets above this historical win rate, 0-100 limit: how many signals (default 15)
| Argument | Type | Description |
|---|---|---|
| mode | string | cluster means several wallets bought the same token, the strongest signal. entry marks fresh positions. exit marks wallets selling out. |
| hours | integer | Observation window in hours. |
| limit | integer | How many entries to return. Keep it small: large results are trimmed to fit the context window anyway. |
| blockchain* | string | Blockchain. One of: solana, bnb, base, eth, rh. solana has kol, smart and whale wallets; bnb, base, eth and rh have kol and smart. rh is Robinhood Chain, an Ethereum L2. |
| min_wallets |
How to use CabalSpy: the keyless demo, where to get a free API key (1000 requests, no cost), pricing, documentation, and what the data covers. Call this first if you do not have a key yet, or if another tool returned an auth error or 'demo_limit_reached'.
No arguments.
{
"type": "object",
"title": "get_startedArguments",
"properties": {}
}The tracked wallets holding a token, sorted by balance, with market cap and price in USD on Solana. Use when the user asks who is still holding, rather than who ever traded it. blockchain: solana, bnb, base, eth or rh mint: token address wallet_type: restrict to kol, smart or whale. Omit to merge all types. limit: how many holders (default 25)
| Argument | Type | Description |
|---|---|---|
| mint* | string | Token address: the mint on Solana, the contract address on the EVM chains. |
| limit | integer | How many entries to return. Keep it small: large results are trimmed to fit the context window anyway. |
| blockchain* | string | Blockchain. One of: solana, bnb, base, eth, rh. solana has kol, smart and whale wallets; bnb, base, eth and rh have kol and smart. rh is Robinhood Chain, an Ethereum L2. |
| wallet_type | string | Restrict to one wallet type: kol, smart or whale. Leave empty to merge all types the chain has. |
{
"type": "object",
"title": "get_token_holdersArguments",
"required": [
"blockchain",
"mint"
],
"properties": {
"mint": {
"type": "string",
"title": "Mint",
"description": "Token address: the mint on Solana, the contract address on the EVM chains."
},
"limit": {
"type": "integer",
"title": "Limit",
"default": 25,
"maximum": 200,
"minimum": 1,
"description": "How many entries to return. Keep it small: large results are trimmed to fit the context window anyway."
},
"blockchain": {
"type": "string",
"title": "Blockchain",
"description": "Blockchain. One of: solana, bnb, base, eth, rh. solana has kol, smart and whale wallets; bnb, base, eth and rh have kol and smart. rh is Robinhood Chain, an Ethereum L2."
},
"wallet_type": {
"type": "string",
"title": "Wallet Type",
"default": "",
"description": "Restrict to one wallet type: kol, smart or whale. Leave empty to merge all types the chain has."
}
}
}Who is trading a token: how many KOLs, smart money wallets and whales hold it, total bought and sold, buying pressure, first and latest entry, and the individual traders with their positions. The main tool for "is anyone notable in this token". Note that market cap in USD comes back empty on this endpoint even for Solana; get_token_holders reports it. blockchain: solana, bnb, base, eth or rh mint: token mint address on Solana, contract address on the EVM chains wallet_type: restrict to kol, smart or whale. Omit to merge all types.
| Argument | Type | Description |
|---|---|---|
| mint* | string | Token address: the mint on Solana, the contract address on the EVM chains. |
| blockchain* | string | Blockchain. One of: solana, bnb, base, eth, rh. solana has kol, smart and whale wallets; bnb, base, eth and rh have kol and smart. rh is Robinhood Chain, an Ethereum L2. |
| wallet_type | string | Restrict to one wallet type: kol, smart or whale. Leave empty to merge all types the chain has. |
{
"type": "object",
"title": "get_token_statsArguments",
"required": [
"blockchain",
"mint"
],
"properties": {
"mint": {
"type": "string",
"title": "Mint",
"description": "Token address: the mint on Solana, the contract address on the EVM chains."
},
"blockchain": {
"type": "string",
"title": "Blockchain",
"description": "Blockchain. One of: solana, bnb, base, eth, rh. solana has kol, smart and whale wallets; bnb, base, eth and rh have kol and smart. rh is Robinhood Chain, an Ethereum L2."
},
"wallet_type": {
"type": "string",
"title": "Wallet Type",
"default": "",
"description": "Restrict to one wallet type: kol, smart or whale. Leave empty to merge all types the chain has."
}
}
}Individual buys and sells by tracked wallets in one token, most recent first. Use for the sequence of events, for example whether KOLs bought before or after a price move. blockchain: solana, bnb, base, eth or rh mint: token address wallet_type: restrict to kol, smart or whale. Omit to merge all types. limit: how many transactions (default 25)
| Argument | Type | Description |
|---|---|---|
| mint* | string | Token address: the mint on Solana, the contract address on the EVM chains. |
| limit | integer | How many entries to return. Keep it small: large results are trimmed to fit the context window anyway. |
| blockchain* | string | Blockchain. One of: solana, bnb, base, eth, rh. solana has kol, smart and whale wallets; bnb, base, eth and rh have kol and smart. rh is Robinhood Chain, an Ethereum L2. |
| wallet_type | string | Restrict to one wallet type: kol, smart or whale. Leave empty to merge all types the chain has. |
{
"type": "object",
"title": "get_token_transactionsArguments",
"required": [
"blockchain",
"mint"
],
"properties": {
"mint": {
"type": "string",
"title": "Mint",
"description": "Token address: the mint on Solana, the contract address on the EVM chains."
},
"limit": {
"type": "integer",
"title": "Limit",
"default": 25,
"maximum": 200,
"minimum": 1,
"description": "How many entries to return. Keep it small: large results are trimmed to fit the context window anyway."
},
"blockchain": {
"type": "string",
"title": "Blockchain",
"description": "Blockchain. One of: solana, bnb, base, eth, rh. solana has kol, smart and whale wallets; bnb, base, eth and rh have kol and smart. rh is Robinhood Chain, an Ethereum L2."
},
"wallet_type": {
"type": "string",
"title": "Wallet Type",
"default": "",
"description": "Restrict to one wallet type: kol, smart or whale. Leave empty to merge all types the chain has."
}
}
}Other tracked wallets that traded the same tokens as this one over the last 30 days, ranked by overlap. Useful for finding groups that move together, which can indicate coordination. blockchain: solana, bnb, base, eth or rh address: the source wallet address limit: how many connections (default 25)
| Argument | Type | Description |
|---|---|---|
| limit | integer | How many entries to return. Keep it small: large results are trimmed to fit the context window anyway. |
| address* | string | Wallet address. Base58 on Solana, 0x-prefixed hex on the EVM chains. |
| blockchain* | string | Blockchain. One of: solana, bnb, base, eth, rh. solana has kol, smart and whale wallets; bnb, base, eth and rh have kol and smart. rh is Robinhood Chain, an Ethereum L2. |
{
"type": "object",
"title": "get_wallet_connectionsArguments",
"required": [
"blockchain",
"address"
],
"properties": {
"limit": {
"type": "integer",
"title": "Limit",
"default": 25,
"maximum": 200,
"minimum": 1,
"description": "How many entries to return. Keep it small: large results are trimmed to fit the context window anyway."
},
"address": {
"type": "string",
"title": "Address",
"description": "Wallet address. Base58 on Solana, 0x-prefixed hex on the EVM chains."
},
"blockchain": {
"type": "string",
"title": "Blockchain",
"description": "Blockchain. One of: solana, bnb, base, eth, rh. solana has kol, smart and whale wallets; bnb, base, eth and rh have kol and smart. rh is Robinhood Chain, an Ethereum L2."
}
}
}Lifetime trading history of a wallet: aggregate stats, a per-token overview and the individual trades. Use for what a wallet traded historically, rather than how it is doing now. This endpoint returns its pagination inside the payload rather than alongside it; follow pagination.next_cursor until it is null for a full export. blockchain: solana, bnb, base, eth or rh address: the wallet address cursor: pagination cursor from the previous response limit: trades per page, 1-1000 (default 50; higher values get trimmed anyway)
| Argument | Type | Description |
|---|---|---|
| limit | integer | How many entries to return. Keep it small: large results are trimmed to fit the context window anyway. |
| cursor | string | Pagination cursor taken from the previous response. Leave empty for the first page. |
| address* | string | Wallet address. Base58 on Solana, 0x-prefixed hex on the EVM chains. |
| blockchain* | string | Blockchain. One of: solana, bnb, base, eth, rh. solana has kol, smart and whale wallets; bnb, base, eth and rh have kol and smart. rh is Robinhood Chain, an Ethereum L2. |
{
"type": "object",
"title": "get_wallet_historyArguments",
"required": [
"blockchain",
"address"
],
"properties": {
"limit": {
"type": "integer",
"title": "Limit",
"default": 50,
"maximum": 200,
"minimum": 1,
"description": "How many entries to return. Keep it small: large results are trimmed to fit the context window anyway."
},
"cursor": {
"type": "string",
"title": "Cursor",
"default": "",
"description": "Pagination cursor taken from the previous response. Leave empty for the first page."
},
"address": {
"type": "string",
"title": "Address",
"description": "Wallet address. Base58 on Solana, 0x-prefixed hex on the EVM chains."
},
"blockchain": {
"type": "string",
"title": "Blockchain",
"description": "Blockchain. One of: solana, bnb, base, eth, rh. solana has kol, smart and whale wallets; bnb, base, eth and rh have kol and smart. rh is Robinhood Chain, an Ethereum L2."
}
}
}Current onchain token holdings of a wallet, read live rather than derived from tracked trades. Slower than the other wallet tools, often over a second. If 'loading' is true the data is still warming up — call again shortly. blockchain: solana, bnb, base, eth or rh address: the wallet address
| Argument | Type | Description |
|---|---|---|
| address* | string | Wallet address. Base58 on Solana, 0x-prefixed hex on the EVM chains. |
| blockchain* | string | Blockchain. One of: solana, bnb, base, eth, rh. solana has kol, smart and whale wallets; bnb, base, eth and rh have kol and smart. rh is Robinhood Chain, an Ethereum L2. |
{
"type": "object",
"title": "get_wallet_holdingsArguments",
"required": [
"blockchain",
"address"
],
"properties": {
"address": {
"type": "string",
"title": "Address",
"description": "Wallet address. Base58 on Solana, 0x-prefixed hex on the EVM chains."
},
"blockchain": {
"type": "string",
"title": "Blockchain",
"description": "Blockchain. One of: solana, bnb, base, eth, rh. solana has kol, smart and whale wallets; bnb, base, eth and rh have kol and smart. rh is Robinhood Chain, an Ethereum L2."
}
}
}Period statistics for ONE wallet: realized PnL, win rate, volume, trade counts, active tokens and win-rate distribution. The main tool for "how is this trader doing". blockchain: solana, bnb, base, eth or rh address: the wallet address period: 6h, 1d, 7d or 30d (default 1d). Longer periods return far more data and are trimmed harder; prefer the shortest period that answers it.
| Argument | Type | Description |
|---|---|---|
| period | string | Statistics window: 6h, 1d, 7d or 30d. Longer windows return far more data and get trimmed harder, so prefer the shortest window that answers the question. |
| address* | string | Wallet address. Base58 on Solana, 0x-prefixed hex on the EVM chains. |
| blockchain* | string | Blockchain. One of: solana, bnb, base, eth, rh. solana has kol, smart and whale wallets; bnb, base, eth and rh have kol and smart. rh is Robinhood Chain, an Ethereum L2. |
{
"type": "object",
"title": "get_wallet_trackerArguments",
"required": [
"blockchain",
"address"
],
"properties": {
"period": {
"type": "string",
"title": "Period",
"default": "1d",
"description": "Statistics window: 6h, 1d, 7d or 30d. Longer windows return far more data and get trimmed harder, so prefer the shortest window that answers the question."
},
"address": {
"type": "string",
"title": "Address",
"description": "Wallet address. Base58 on Solana, 0x-prefixed hex on the EVM chains."
},
"blockchain": {
"type": "string",
"title": "Blockchain",
"description": "Blockchain. One of: solana, bnb, base, eth, rh. solana has kol, smart and whale wallets; bnb, base, eth and rh have kol and smart. rh is Robinhood Chain, an Ethereum L2."
}
}
}Browse the wallets CabalSpy tracks for a chain and wallet type. Use this to answer which KOLs or smart money wallets are covered at all. Always pass a limit; the full list runs into the thousands. blockchain: solana, bnb, base, eth or rh wallet_type: kol, smart or whale limit: wallets per page (default 50) cursor: pagination cursor from the previous response
| Argument | Type | Description |
|---|---|---|
| limit | integer | How many entries to return. Keep it small: large results are trimmed to fit the context window anyway. |
| cursor | string | Pagination cursor taken from the previous response. Leave empty for the first page. |
| blockchain* | string | Blockchain. One of: solana, bnb, base, eth, rh. solana has kol, smart and whale wallets; bnb, base, eth and rh have kol and smart. rh is Robinhood Chain, an Ethereum L2. |
| wallet_type* | string | Wallet type. kol is a Key Opinion Leader, an influencer whose calls move markets. smart is a wallet selected for its track record. whale is a large holder, Solana only. |
{
"type": "object",
"title": "list_walletsArguments",
"required": [
"blockchain",
"wallet_type"
],
"properties": {
"limit": {
"type": "integer",
"title": "Limit",
"default": 50,
"maximum": 200,
"minimum": 1,
"description": "How many entries to return. Keep it small: large results are trimmed to fit the context window anyway."
},
"cursor": {
"type": "string",
"title": "Cursor",
"default": "",
"description": "Pagination cursor taken from the previous response. Leave empty for the first page."
},
"blockchain": {
"type": "string",
"title": "Blockchain",
"description": "Blockchain. One of: solana, bnb, base, eth, rh. solana has kol, smart and whale wallets; bnb, base, eth and rh have kol and smart. rh is Robinhood Chain, an Ethereum L2."
},
"wallet_type": {
"type": "string",
"title": "Wallet Type",
"description": "Wallet type. kol is a Key Opinion Leader, an influencer whose calls move markets. smart is a wallet selected for its track record. whale is a large holder, Solana only."
}
}
}Identify a wallet address: is it tracked, and by what name. Returns the label CabalSpy attached to it — name, Twitter, Telegram, wallet type and chain. Start here when a user pastes an address and asks who it is. On EVM chains the same address can be tracked on several of them and only the first match is returned, so the reported chain may not be the intended one. address: the wallet address to look up
| Argument | Type | Description |
|---|---|---|
| address* | string | Wallet address. Base58 on Solana, 0x-prefixed hex on the EVM chains. |
{
"type": "object",
"title": "lookup_walletArguments",
"required": [
"address"
],
"properties": {
"address": {
"type": "string",
"title": "Address",
"description": "Wallet address. Base58 on Solana, 0x-prefixed hex on the EVM chains."
}
}
}| blockchain* | string | Blockchain. One of: solana, bnb, base, eth, rh. solana has kol, smart and whale wallets; bnb, base, eth and rh have kol and smart. rh is Robinhood Chain, an Ethereum L2. |
{
"type": "object",
"title": "csid_leaderboardArguments",
"required": [
"blockchain"
],
"properties": {
"sort": {
"type": "string",
"title": "Sort",
"default": "volume",
"description": "volume (default), pnl (native currency), pnl_usd, win_rate or trades."
},
"limit": {
"type": "integer",
"title": "Limit",
"default": 10,
"maximum": 50,
"minimum": 1,
"description": "How many traders (1-50, default 10)."
},
"scope": {
"type": "string",
"title": "Scope",
"default": "instance",
"description": "'instance' (default): the users of your CabalSpy ID instance. 'global': every CabalSpy ID user, Enterprise plan only."
},
"cursor": {
"type": "string",
"title": "Cursor",
"default": "",
"description": "Pagination cursor taken from the previous response. Leave empty for the first page."
},
"period": {
"type": "string",
"title": "Period",
"default": "7d",
"description": "Statistics window: 6h, 1d, 7d or 30d. Longer windows return far more data and get trimmed harder, so prefer the shortest window that answers the question."
},
"instance": {
"type": "string",
"title": "Instance",
"default": "",
"description": "Your CabalSpy ID instance (its client_id, e.g. 'csid_1a2b…'). Only needed when your account has several instances. Leave empty otherwise."
},
"blockchain": {
"type": "string",
"title": "Blockchain",
"description": "Blockchain. One of: solana, bnb, base, eth, rh. solana has kol, smart and whale wallets; bnb, base, eth and rh have kol and smart. rh is Robinhood Chain, an Ethereum L2."
}
}
}| instance |
| string |
| Your CabalSpy ID instance (its client_id, e.g. 'csid_1a2b…'). Only needed when your account has several instances. Leave empty otherwise. |
| blockchain* | string | Blockchain. One of: solana, bnb, base, eth, rh. solana has kol, smart and whale wallets; bnb, base, eth and rh have kol and smart. rh is Robinhood Chain, an Ethereum L2. |
{
"type": "object",
"title": "csid_token_thesesArguments",
"required": [
"blockchain",
"mint"
],
"properties": {
"mint": {
"type": "string",
"title": "Mint",
"description": "Token address: the mint on Solana, the contract address on the EVM chains."
},
"sort": {
"type": "string",
"title": "Sort",
"default": "new",
"description": "'new' (newest first, default) or 'top' (most liked first)."
},
"limit": {
"type": "integer",
"title": "Limit",
"default": 10,
"maximum": 25,
"minimum": 1,
"description": "How many theses to return (1-25, default 10)."
},
"scope": {
"type": "string",
"title": "Scope",
"default": "global",
"description": "'global' (default): theses posted on every platform that uses CabalSpy ID. 'instance': only theses written on your own CabalSpy ID instance."
},
"cursor": {
"type": "string",
"title": "Cursor",
"default": "",
"description": "Pagination cursor taken from the previous response. Leave empty for the first page."
},
"stance": {
"type": "string",
"title": "Stance",
"default": "",
"description": "Only bullish ('bull') or bearish ('bear') theses. Leave empty for all, including neutral ones."
},
"instance": {
"type": "string",
"title": "Instance",
"default": "",
"description": "Your CabalSpy ID instance (its client_id, e.g. 'csid_1a2b…'). Only needed when your account has several instances. Leave empty otherwise."
},
"blockchain": {
"type": "string",
"title": "Blockchain",
"description": "Blockchain. One of: solana, bnb, base, eth, rh. solana has kol, smart and whale wallets; bnb, base, eth and rh have kol and smart. rh is Robinhood Chain, an Ethereum L2."
}
}
}{
"type": "object",
"title": "get_analyticsArguments",
"required": [
"blockchain",
"mode"
],
"properties": {
"mode": {
"type": "string",
"title": "Mode",
"description": "volume_trend shows activity over time. most_traded lists the tokens getting the most attention. win_rate gives the distribution of outcomes. top_performers ranks wallets by profit."
},
"limit": {
"type": "integer",
"title": "Limit",
"default": 20,
"maximum": 200,
"minimum": 1,
"description": "How many entries to return. Keep it small: large results are trimmed to fit the context window anyway."
},
"period": {
"type": "string",
"title": "Period",
"default": "7d",
"description": "Statistics window: 6h, 1d, 7d or 30d. Longer windows return far more data and get trimmed harder, so prefer the shortest window that answers the question."
},
"blockchain": {
"type": "string",
"title": "Blockchain",
"description": "Blockchain. One of: solana, bnb, base, eth, rh. solana has kol, smart and whale wallets; bnb, base, eth and rh have kol and smart. rh is Robinhood Chain, an Ethereum L2."
},
"wallet_type": {
"type": "string",
"title": "Wallet Type",
"default": "kol",
"description": "Wallet type. kol is a Key Opinion Leader, an influencer whose calls move markets. smart is a wallet selected for its track record. whale is a large holder, Solana only."
}
}
}| integer |
| Minimum wallets in a cluster. Higher means fewer but stronger signals. 0 uses the server default of 3. |
| wallet_type | string | Wallet type. kol is a Key Opinion Leader, an influencer whose calls move markets. smart is a wallet selected for its track record. whale is a large holder, Solana only. |
| min_win_rate | number | Only count wallets above this historical win rate, 0 to 100. 0 disables it. |
{
"type": "object",
"title": "get_signalsArguments",
"required": [
"blockchain"
],
"properties": {
"mode": {
"type": "string",
"title": "Mode",
"default": "cluster",
"description": "cluster means several wallets bought the same token, the strongest signal. entry marks fresh positions. exit marks wallets selling out."
},
"hours": {
"type": "integer",
"title": "Hours",
"default": 6,
"maximum": 168,
"minimum": 1,
"description": "Observation window in hours."
},
"limit": {
"type": "integer",
"title": "Limit",
"default": 15,
"maximum": 200,
"minimum": 1,
"description": "How many entries to return. Keep it small: large results are trimmed to fit the context window anyway."
},
"blockchain": {
"type": "string",
"title": "Blockchain",
"description": "Blockchain. One of: solana, bnb, base, eth, rh. solana has kol, smart and whale wallets; bnb, base, eth and rh have kol and smart. rh is Robinhood Chain, an Ethereum L2."
},
"min_wallets": {
"type": "integer",
"title": "Min Wallets",
"default": 0,
"maximum": 50,
"minimum": 0,
"description": "Minimum wallets in a cluster. Higher means fewer but stronger signals. 0 uses the server default of 3."
},
"wallet_type": {
"type": "string",
"title": "Wallet Type",
"default": "kol",
"description": "Wallet type. kol is a Key Opinion Leader, an influencer whose calls move markets. smart is a wallet selected for its track record. whale is a large holder, Solana only."
},
"min_win_rate": {
"type": "number",
"title": "Min Win Rate",
"default": 0,
"maximum": 100,
"minimum": 0,
"description": "Only count wallets above this historical win rate, 0 to 100. 0 disables it."
}
}
}