Agent Einstein — Crypto & Market Intelligence
이 MCP로 할 수 있는 일
Provides crypto and market intelligence including price forecasts, sentiment, whale flows, token and wallet security, arbitrage, DeFi yields, prediction markets, and on-chain analysis.
도구
입력 스키마
{'type': 'object', 'properties': {'kind': {'enum': ['mempool', 'onchain', 'brc20', 'runes', 'bridges', 'staking'], 'type': 'string', 'default': 'mempool', 'description': 'mempool · onchain · brc20 · runes · bridges · staking.'}, 'limit': {'type': 'number', 'default': 10, 'description': 'Maximum results (1-100).'}}, 'additionalProperties': False}
출력 스키마
{'type': 'object', 'properties': {'skill': {'type': 'string', 'description': 'Which Einstein capability answered. These tools route onto one of many skills by an enum argument, so this names the branch that actually ran.'}, 'reason': {'type': 'string', 'description': 'Why there is no analysis, when `available` is false.'}, 'analysis': {'type': 'string', 'description': "The written answer, identical to the result's text block. This is the field to read: the rest of the payload is whichever capability answered, and its shape varies by tool and by argument."}, 'available': {'type': 'boolean', 'description': 'True when the analysis ran. False when it did not — no capability matched the arguments, the caller is out of credit, billing was unavailable, or the skill produced nothing. NOT a statement about the market.'}}, 'additionalProperties': True}
입력 스키마
{'type': 'object', 'properties': {'kind': {'enum': ['leaderboard', 'intel'], 'type': 'string', 'default': 'leaderboard', 'description': 'leaderboard · intel (needs `walletAddress`).'}, 'limit': {'type': 'number', 'default': 10, 'description': 'Maximum results (1-100).'}, 'walletAddress': {'type': 'string', 'description': 'Trader wallet, for `intel`.'}}, 'additionalProperties': False}
출력 스키마
{'type': 'object', 'properties': {'skill': {'type': 'string', 'description': 'Which Einstein capability answered. These tools route onto one of many skills by an enum argument, so this names the branch that actually ran.'}, 'reason': {'type': 'string', 'description': 'Why there is no analysis, when `available` is false.'}, 'analysis': {'type': 'string', 'description': "The written answer, identical to the result's text block. This is the field to read: the rest of the payload is whichever capability answered, and its shape varies by tool and by argument."}, 'available': {'type': 'boolean', 'description': 'True when the analysis ran. False when it did not — no capability matched the arguments, the caller is out of credit, billing was unavailable, or the skill produced nothing. NOT a statement about the market.'}}, 'additionalProperties': True}
입력 스키마
{'type': 'object', 'properties': {'kind': {'enum': ['markets', 'insiders', 'spread', 'conviction', 'longshot_fade'], 'type': 'string', 'default': 'markets', 'description': 'markets · insiders · spread · conviction · longshot_fade.'}, 'limit': {'type': 'number', 'default': 10, 'description': 'Maximum results (1-100).'}, 'query': {'type': 'string', 'description': 'Topic or market keyword to focus on.'}}, 'additionalProperties': False}
출력 스키마
{'type': 'object', 'properties': {'skill': {'type': 'string', 'description': 'Which Einstein capability answered. These tools route onto one of many skills by an enum argument, so this names the branch that actually ran.'}, 'reason': {'type': 'string', 'description': 'Why there is no analysis, when `available` is false.'}, 'analysis': {'type': 'string', 'description': "The written answer, identical to the result's text block. This is the field to read: the rest of the payload is whichever capability answered, and its shape varies by tool and by argument."}, 'available': {'type': 'boolean', 'description': 'True when the analysis ran. False when it did not — no capability matched the arguments, the caller is out of credit, billing was unavailable, or the skill produced nothing. NOT a statement about the market.'}}, 'additionalProperties': True}
입력 스키마
{'type': 'object', 'properties': {'board': {'enum': ['float-corner', 'wrapper-trust', 'stock-pairs', 'pons-stock-pairs', 'early-buyers', 'trader-record', 'event-risk', 'portfolio'], 'type': 'string', 'default': 'float-corner', 'description': 'portfolio = deterministic non-executing Coinbase B20 portfolio draft on Base (use `intent`) · float-corner = float concentration + mint window · wrapper-trust = can the wrapper be trusted as COLLATERAL (on-chain rate path, vault-inflation exposure, an unscheduled rate move, pause/permissioning) · stock-pairs = BaseStonk launches priced in an equity (Base) · pons-stock-pairs = Pons launches priced in an equity, and which equity the venue is collectively long (Robinhood Chain 4663) · early-buyers = entry-ranked buyers of one token plus a one-hop funding trace (needs `token`) · trader-record = which wallets are actually good · event-risk = scheduled corporate actions and the implied gap at the open.'}, 'token': {'type': 'string', 'description': 'Token contract address. Required when board=early-buyers.'}, 'intent': {'type': 'string', 'description': 'Natural-language portfolio objective. Used when board=portfolio; no transactions are executed.'}}, 'additionalProperties': False}
출력 스키마
{'type': 'object', 'properties': {'skill': {'type': 'string', 'description': 'Which Einstein capability answered. These tools route onto one of many skills by an enum argument, so this names the branch that actually ran.'}, 'reason': {'type': 'string', 'description': 'Why there is no analysis, when `available` is false.'}, 'analysis': {'type': 'string', 'description': "The written answer, identical to the result's text block. This is the field to read: the rest of the payload is whichever capability answered, and its shape varies by tool and by argument."}, 'available': {'type': 'boolean', 'description': 'True when the analysis ran. False when it did not — no capability matched the arguments, the caller is out of credit, billing was unavailable, or the skill produced nothing. NOT a statement about the market.'}}, 'additionalProperties': True}
입력 스키마
{'type': 'object', 'required': ['tokenAddress'], 'properties': {'kind': {'enum': ['rug_pull', 'holders', 'sniping', 'approvals', 'contract_audit'], 'type': 'string', 'default': 'rug_pull', 'description': 'rug_pull = honeypot/rug risk scan · holders = concentration · sniping = launch-sniper activity · approvals = risky token approvals for a wallet · contract_audit = full source audit.'}, 'chain': {'enum': ['base', 'ethereum', 'bsc', 'arbitrum', 'polygon', 'optimism', 'solana'], 'type': 'string', 'default': 'base', 'description': 'Blockchain network.'}, 'tokenAddress': {'type': 'string', 'description': 'Token contract address to analyze.'}}, 'additionalProperties': False}
출력 스키마
{'type': 'object', 'properties': {'skill': {'type': 'string', 'description': 'Which Einstein capability answered. These tools route onto one of many skills by an enum argument, so this names the branch that actually ran.'}, 'reason': {'type': 'string', 'description': 'Why there is no analysis, when `available` is false.'}, 'analysis': {'type': 'string', 'description': "The written answer, identical to the result's text block. This is the field to read: the rest of the payload is whichever capability answered, and its shape varies by tool and by argument."}, 'available': {'type': 'boolean', 'description': 'True when the analysis ran. False when it did not — no capability matched the arguments, the caller is out of credit, billing was unavailable, or the skill produced nothing. NOT a statement about the market.'}}, 'additionalProperties': True}
입력 스키마
{'type': 'object', 'required': ['walletAddress'], 'properties': {'kind': {'enum': ['portfolio', 'pnl', 'trust', 'forgotten', 'airdrops', 'quantum'], 'type': 'string', 'default': 'portfolio', 'description': 'portfolio = holdings · pnl = profit and loss x-ray · trust = trust score · forgotten = stranded assets · airdrops = unclaimed airdrops · quantum = post-quantum exposure.'}, 'chain': {'enum': ['base', 'ethereum', 'bsc', 'arbitrum', 'polygon', 'optimism', 'solana'], 'type': 'string', 'default': 'base', 'description': 'Blockchain network.'}, 'walletAddress': {'type': 'string', 'description': 'Wallet address to analyze.'}}, 'additionalProperties': False}
출력 스키마
{'type': 'object', 'properties': {'skill': {'type': 'string', 'description': 'Which Einstein capability answered. These tools route onto one of many skills by an enum argument, so this names the branch that actually ran.'}, 'reason': {'type': 'string', 'description': 'Why there is no analysis, when `available` is false.'}, 'analysis': {'type': 'string', 'description': "The written answer, identical to the result's text block. This is the field to read: the rest of the payload is whichever capability answered, and its shape varies by tool and by argument."}, 'available': {'type': 'boolean', 'description': 'True when the analysis ran. False when it did not — no capability matched the arguments, the caller is out of credit, billing was unavailable, or the skill produced nothing. NOT a statement about the market.'}}, 'additionalProperties': True}
입력 스키마
{'type': 'object', 'required': ['prompt'], 'properties': {'prompt': {'type': 'string', 'description': 'The question or analysis request, in plain language.'}}, 'additionalProperties': False}
출력 스키마
{'type': 'object', 'properties': {'skill': {'type': 'string', 'description': 'Which Einstein capability answered. These tools route onto one of many skills by an enum argument, so this names the branch that actually ran.'}, 'reason': {'type': 'string', 'description': 'Why there is no analysis, when `available` is false.'}, 'analysis': {'type': 'string', 'description': "The written answer, identical to the result's text block. This is the field to read: the rest of the payload is whichever capability answered, and its shape varies by tool and by argument."}, 'available': {'type': 'boolean', 'description': 'True when the analysis ran. False when it did not — no capability matched the arguments, the caller is out of credit, billing was unavailable, or the skill produced nothing. NOT a statement about the market.'}}, 'additionalProperties': True}
입력 스키마
{'type': 'object', 'properties': {'kind': {'enum': ['readiness', 'migration', 'portfolio', 'crqc_benchmark'], 'type': 'string', 'default': 'readiness', 'description': 'readiness · migration · portfolio · crqc_benchmark.'}, 'walletAddress': {'type': 'string', 'description': 'Wallet to assess, for `portfolio`.'}}, 'additionalProperties': False}
출력 스키마
{'type': 'object', 'properties': {'skill': {'type': 'string', 'description': 'Which Einstein capability answered. These tools route onto one of many skills by an enum argument, so this names the branch that actually ran.'}, 'reason': {'type': 'string', 'description': 'Why there is no analysis, when `available` is false.'}, 'analysis': {'type': 'string', 'description': "The written answer, identical to the result's text block. This is the field to read: the rest of the payload is whichever capability answered, and its shape varies by tool and by argument."}, 'available': {'type': 'boolean', 'description': 'True when the analysis ran. False when it did not — no capability matched the arguments, the caller is out of credit, billing was unavailable, or the skill produced nothing. NOT a statement about the market.'}}, 'additionalProperties': True}
입력 스키마
{'type': 'object', 'properties': {'kind': {'enum': ['judge', 'deep_scan', 'vaults'], 'type': 'string', 'default': 'judge', 'description': 'judge = content quality · deep_scan = manipulation scan · vaults = list scanned vaults.'}, 'content': {'type': 'string', 'description': 'Content or vault identifier to assess.'}}, 'additionalProperties': False}
출력 스키마
{'type': 'object', 'properties': {'skill': {'type': 'string', 'description': 'Which Einstein capability answered. These tools route onto one of many skills by an enum argument, so this names the branch that actually ran.'}, 'reason': {'type': 'string', 'description': 'Why there is no analysis, when `available` is false.'}, 'analysis': {'type': 'string', 'description': "The written answer, identical to the result's text block. This is the field to read: the rest of the payload is whichever capability answered, and its shape varies by tool and by argument."}, 'available': {'type': 'boolean', 'description': 'True when the analysis ran. False when it did not — no capability matched the arguments, the caller is out of credit, billing was unavailable, or the skill produced nothing. NOT a statement about the market.'}}, 'additionalProperties': True}
입력 스키마
{'type': 'object', 'required': ['contract'], 'properties': {'chain': {'enum': ['base', 'ethereum', 'bsc', 'arbitrum', 'polygon', 'optimism'], 'type': 'string', 'default': 'base', 'description': 'Chain the contract is deployed on.'}, 'contract': {'type': 'string', 'description': 'Token contract address, 0x-prefixed 40 hex characters.'}}, 'additionalProperties': False}
출력 스키마
{'type': 'object', 'properties': {'chain': {'description': 'Chain it was screened on.'}, 'flags': {'type': 'array', 'items': {}, 'description': 'Individual risk flags recorded against the contract.'}, 'reason': {'type': 'string', 'description': 'Why the payload is absent, when `available` is false.'}, 'result': {'description': 'The raw cached row, for fields this summary does not normalize.', 'additionalProperties': True}, 'contract': {'description': 'Contract that was screened.'}, 'honeypot': {'description': 'True when the cached scan flagged it as a honeypot.'}, 'screened': {'description': 'FALSE means the contract is not in the cached dataset — "not screened", NOT a clean bill of health. Only a true here makes the other fields meaningful.'}, 'available': {'type': 'boolean', 'description': 'False when this call has no data — a snapshot that is not warm yet, a domain switched off, or an argument that was rejected. NOT an error, and NOT a statement about the market.'}, 'fetchedAt': {'description': 'When the underlying snapshot was refreshed (epoch ms or ISO-8601). Age matters: these are cached reads, not live queries.'}, 'riskLevel': {'description': 'Risk grade recorded by the scan.'}}, 'additionalProperties': True}
입력 스키마
{'type': 'object', 'properties': {'kind': {'enum': ['detection', 'mempool', 'protection'], 'type': 'string', 'default': 'detection', 'description': 'detection = historical MEV · mempool = live mempool watch · protection = protected routing advice.'}, 'chain': {'enum': ['base', 'ethereum', 'bsc', 'arbitrum', 'polygon', 'optimism', 'solana'], 'type': 'string', 'default': 'base', 'description': 'Blockchain network.'}, 'timeframe': {'enum': ['1h', '4h', '24h', '7d', '30d'], 'type': 'string', 'default': '24h', 'description': 'Lookback window.'}, 'tokenAddress': {'type': 'string', 'description': 'Token to inspect, when relevant.'}}, 'additionalProperties': False}
출력 스키마
{'type': 'object', 'properties': {'skill': {'type': 'string', 'description': 'Which Einstein capability answered. These tools route onto one of many skills by an enum argument, so this names the branch that actually ran.'}, 'reason': {'type': 'string', 'description': 'Why there is no analysis, when `available` is false.'}, 'analysis': {'type': 'string', 'description': "The written answer, identical to the result's text block. This is the field to read: the rest of the payload is whichever capability answered, and its shape varies by tool and by argument."}, 'available': {'type': 'boolean', 'description': 'True when the analysis ran. False when it did not — no capability matched the arguments, the caller is out of credit, billing was unavailable, or the skill produced nothing. NOT a statement about the market.'}}, 'additionalProperties': True}
입력 스키마
{'type': 'object', 'properties': {'kind': {'enum': ['dex', 'flashloan', 'cross_chain', 'prediction_market'], 'type': 'string', 'default': 'dex', 'description': 'dex · flashloan · cross_chain · prediction_market.'}, 'chain': {'enum': ['base', 'ethereum', 'bsc', 'arbitrum', 'polygon', 'optimism', 'solana'], 'type': 'string', 'default': 'base', 'description': 'Blockchain network.'}, 'limit': {'type': 'number', 'default': 10, 'description': 'Maximum results (1-100).'}}, 'additionalProperties': False}
출력 스키마
{'type': 'object', 'properties': {'skill': {'type': 'string', 'description': 'Which Einstein capability answered. These tools route onto one of many skills by an enum argument, so this names the branch that actually ran.'}, 'reason': {'type': 'string', 'description': 'Why there is no analysis, when `available` is false.'}, 'analysis': {'type': 'string', 'description': "The written answer, identical to the result's text block. This is the field to read: the rest of the payload is whichever capability answered, and its shape varies by tool and by argument."}, 'available': {'type': 'boolean', 'description': 'True when the analysis ran. False when it did not — no capability matched the arguments, the caller is out of credit, billing was unavailable, or the skill produced nothing. NOT a statement about the market.'}}, 'additionalProperties': True}
입력 스키마
{'type': 'object', 'properties': {'kind': {'enum': ['defi', 'pendle', 'discover', 'liquidations'], 'type': 'string', 'default': 'defi', 'description': 'defi · pendle · discover · liquidations.'}, 'chain': {'enum': ['base', 'ethereum', 'bsc', 'arbitrum', 'polygon', 'optimism', 'solana', 'robinhoodchain'], 'type': 'string', 'default': 'base', 'description': 'Blockchain network. `robinhoodchain` covers the Pendle NVDA/PFE markets.'}, 'limit': {'type': 'number', 'default': 10, 'description': 'Maximum results (1-100).'}}, 'additionalProperties': False}
출력 스키마
{'type': 'object', 'properties': {'skill': {'type': 'string', 'description': 'Which Einstein capability answered. These tools route onto one of many skills by an enum argument, so this names the branch that actually ran.'}, 'reason': {'type': 'string', 'description': 'Why there is no analysis, when `available` is false.'}, 'analysis': {'type': 'string', 'description': "The written answer, identical to the result's text block. This is the field to read: the rest of the payload is whichever capability answered, and its shape varies by tool and by argument."}, 'available': {'type': 'boolean', 'description': 'True when the analysis ran. False when it did not — no capability matched the arguments, the caller is out of credit, billing was unavailable, or the skill produced nothing. NOT a statement about the market.'}}, 'additionalProperties': True}
입력 스키마
{'type': 'object', 'required': ['token'], 'properties': {'chain': {'enum': ['base', 'ethereum', 'bsc', 'arbitrum', 'polygon', 'optimism', 'solana'], 'type': 'string', 'default': 'base', 'description': 'Blockchain network.'}, 'token': {'type': 'string', 'description': 'Token symbol or contract address to forecast.'}, 'timeframe': {'enum': ['1h', '4h', '1d', '1w'], 'type': 'string', 'default': '1d', 'description': 'Candle interval for the forecast.'}}, 'additionalProperties': False}
출력 스키마
{'type': 'object', 'properties': {'skill': {'type': 'string', 'description': 'Which Einstein capability answered. These tools route onto one of many skills by an enum argument, so this names the branch that actually ran.'}, 'reason': {'type': 'string', 'description': 'Why there is no analysis, when `available` is false.'}, 'analysis': {'type': 'string', 'description': "The written answer, identical to the result's text block. This is the field to read: the rest of the payload is whichever capability answered, and its shape varies by tool and by argument."}, 'available': {'type': 'boolean', 'description': 'True when the analysis ran. False when it did not — no capability matched the arguments, the caller is out of credit, billing was unavailable, or the skill produced nothing. NOT a statement about the market.'}}, 'additionalProperties': True}
입력 스키마
{'type': 'object', 'properties': {'kind': {'enum': ['wallet', 'encryption', 'signing', 'random'], 'type': 'string', 'default': 'random', 'description': 'wallet · encryption · signing · random (raw QRNG output).'}}, 'additionalProperties': False}
출력 스키마
{'type': 'object', 'properties': {'skill': {'type': 'string', 'description': 'Which Einstein capability answered. These tools route onto one of many skills by an enum argument, so this names the branch that actually ran.'}, 'reason': {'type': 'string', 'description': 'Why there is no analysis, when `available` is false.'}, 'analysis': {'type': 'string', 'description': "The written answer, identical to the result's text block. This is the field to read: the rest of the payload is whichever capability answered, and its shape varies by tool and by argument."}, 'available': {'type': 'boolean', 'description': 'True when the analysis ran. False when it did not — no capability matched the arguments, the caller is out of credit, billing was unavailable, or the skill produced nothing. NOT a statement about the market.'}}, 'additionalProperties': True}
입력 스키마
{'type': 'object', 'properties': {}, 'additionalProperties': False}
출력 스키마
{'type': 'object', 'properties': {'skill': {'type': 'string', 'description': 'Which Einstein capability answered. These tools route onto one of many skills by an enum argument, so this names the branch that actually ran.'}, 'reason': {'type': 'string', 'description': 'Why there is no analysis, when `available` is false.'}, 'analysis': {'type': 'string', 'description': "The written answer, identical to the result's text block. This is the field to read: the rest of the payload is whichever capability answered, and its shape varies by tool and by argument."}, 'available': {'type': 'boolean', 'description': 'True when the analysis ran. False when it did not — no capability matched the arguments, the caller is out of credit, billing was unavailable, or the skill produced nothing. NOT a statement about the market.'}}, 'additionalProperties': True}
입력 스키마
{'type': 'object', 'properties': {'limit': {'type': 'number', 'default': 10, 'description': 'Maximum rows to return (1-25).'}}, 'additionalProperties': False}
출력 스키마
{'type': 'object', 'properties': {'rows': {'type': 'array', 'items': {'properties': {'hits': {'description': 'Calls graded correct.'}, 'misses': {'description': 'Calls graded wrong.'}, 'weight': {'description': 'Weight this source carries downstream.'}, 'pending': {'description': 'Calls awaiting resolution.'}, 'hit_rate': {'description': 'Hits ÷ graded calls, 0-1. Meaningless below the gate.'}, 'source_id': {'description': 'Stable source id.'}, 'source_type': {'description': 'Kind of source.'}, 'graded_calls': {'description': 'Calls graded so far.'}, 'source_label': {'description': 'Display name.'}, 'decayed_samples': {'description': 'Sample count after time decay.'}}, 'additionalProperties': True}, 'description': 'One source per row.'}, 'object': {'description': 'Always "source-leaderboard".'}, 'reason': {'type': 'string', 'description': 'Why the payload is absent, when `available` is false.'}, 'available': {'type': 'boolean', 'description': 'False when this call has no data — a snapshot that is not warm yet, a domain switched off, or an argument that was rejected. NOT an error, and NOT a statement about the market.'}, 'pending_calls': {'description': 'Calls made but not yet resolvable.'}, 'sources_tracked': {'description': 'Sources with any graded call.'}, 'sources_past_gate': {'description': 'Sources that cleared the gate — the only ones whose rate means anything.'}, 'reliability_gate_calls': {'description': 'Graded calls a source needs before it is ranked.'}}, 'additionalProperties': True}
입력 스키마
{'type': 'object', 'properties': {}, 'additionalProperties': False}
출력 스키마
{'type': 'object', 'properties': {'nvt': {'description': 'NVT ratio. Null when the metric is not in this pass.', 'additionalProperties': True}, 'mvrv': {'properties': {'value': {'description': 'MVRV ratio.'}, 'signal': {'description': 'What that level has historically meant.'}, 'trend7d': {'description': 'Change over 7 days.'}}, 'description': 'MVRV ratio with its cycle signal and 7d trend.', 'additionalProperties': True}, 'stale': {'description': 'True when the snapshot is past its refresh interval.'}, 'reason': {'type': 'string', 'description': 'Why the payload is absent, when `available` is false.'}, 'source': {'description': 'On-chain data source.'}, 'txCount': {'description': 'Transaction count.', 'additionalProperties': True}, 'priceUsd': {'description': 'BTC price, raw and formatted.', 'additionalProperties': True}, 'txVolume': {'description': 'On-chain transaction volume. Null when not in this pass.', 'additionalProperties': True}, 'available': {'type': 'boolean', 'description': 'False when this call has no data — a snapshot that is not warm yet, a domain switched off, or an argument that was rejected. NOT an error, and NOT a statement about the market.'}, 'fetchedAt': {'description': 'When the underlying snapshot was refreshed (epoch ms or ISO-8601). Age matters: these are cached reads, not live queries.'}, 'marketCap': {'description': 'Market cap, raw and formatted.', 'additionalProperties': True}, 'totalFees': {'description': 'Total fees paid.', 'additionalProperties': True}, 'timeSeries': {'type': 'array', 'items': {'properties': {'mvrv': {'description': 'MVRV at that point.'}, 'time': {'description': 'ISO-8601 timestamp.'}, 'txCount': {'description': 'Transactions at that point.'}, 'marketCap': {'description': 'Market cap at that point.'}, 'activeAddresses': {'description': 'Active addresses at that point.'}}, 'additionalProperties': True}, 'description': 'History behind the metrics, one point per day.'}, 'realizedCap': {'description': 'Realized cap. Null when not in this pass.', 'additionalProperties': True}, 'exchangeFlow': {'properties': {'net': {'description': 'Net flow.'}, 'inflow': {'description': 'Coins moving to exchanges.'}, 'signal': {'description': 'What the net flow implies.'}, 'outflow': {'description': 'Coins leaving exchanges.'}}, 'description': 'Exchange inflow/outflow and the net signal.', 'additionalProperties': True}, 'minerRevenue': {'description': 'Miner revenue.', 'additionalProperties': True}, 'activeAddresses': {'description': 'Active addresses, with a 7d trend.', 'additionalProperties': True}, 'dormantSupplyPct': {'description': 'Share of supply dormant. Null when not in this pass.', 'additionalProperties': True}}, 'additionalProperties': True}
입력 스키마
{'type': 'object', 'properties': {'limit': {'type': 'number', 'default': 10, 'description': 'Maximum rows to return (1-25).'}}, 'additionalProperties': False}
출력 스키마
{'type': 'object', 'properties': {'count': {'description': 'Disclosures in this pass.'}, 'limit': {'type': 'number', 'description': 'Row cap applied to every list in this payload.'}, 'stale': {'description': 'True when the snapshot is past its refresh interval.'}, 'reason': {'type': 'string', 'description': 'Why the payload is absent, when `available` is false.'}, 'shorts': {'description': 'Short signals.'}, 'sources': {'description': 'Per-source status — which filing feeds answered.', 'additionalProperties': True}, 'available': {'type': 'boolean', 'description': 'False when this call has no data — a snapshot that is not warm yet, a domain switched off, or an argument that was rejected. NOT an error, and NOT a statement about the market.'}, 'fetchedAt': {'description': 'When the underlying snapshot was refreshed (epoch ms or ISO-8601). Age matters: these are cached reads, not live queries.'}, 'longSignals': {'type': 'array', 'items': {'properties': {'band': {'description': 'Score band.'}, 'score': {'description': 'Conviction score, 0-1.'}, 'ticker': {'description': 'Equity ticker.'}, 'headline': {'description': 'One-line summary.'}, 'totalUsd': {'description': 'Disclosed USD behind the signal.'}, 'rationale': {'description': 'Why it scored where it did.'}, 'earliestTxAt': {'description': 'Earliest transaction date — filings lag trades.'}, 'lawmakerCount': {'description': 'Distinct filers.'}}, 'additionalProperties': True}, 'description': 'Scored buy-side signals.'}, 'shortSignals': {'type': 'array', 'items': {}, 'description': 'Scored sell-side signals; same fields as `longSignals`.'}, 'actionableLongs': {'description': 'Long signals that cleared the scoring gate.'}, 'sectorAggregates': {'type': 'array', 'items': {'properties': {'count': {'description': 'Disclosures.'}, 'sector': {'description': 'Sector.'}, 'totalUsd': {'description': 'Disclosed USD.'}}, 'additionalProperties': True}, 'description': 'Disclosed dollars by sector.'}}, 'additionalProperties': True}
입력 스키마
{'type': 'object', 'properties': {'asset': {'type': 'string', 'description': 'Restrict to one asset symbol, e.g. BTC. Omit for the whole board; the response lists every asset that has scored rows.'}, 'limit': {'type': 'number', 'default': 10, 'description': 'Maximum scored buckets (1-50).'}}, 'additionalProperties': False}
출력 스키마
{'type': 'object', 'properties': {'rows': {'type': 'array', 'items': {'properties': {'rmse': {'description': 'Root mean squared error.'}, 'asset': {'description': 'Asset symbol.'}, 'model': {'description': 'Forecast model (timesfm or kronos).'}, 'samples': {'description': 'Every verified forecast behind the error figures (MAPE/RMSE), overlapping re-issues included — NOT a count of independent calls; never quote it beside a hit rate.'}, 'interval': {'description': 'Candle interval.'}, 'mape_pct': {'description': 'Mean absolute percentage error.'}, 'sample_basis': {'description': '"independent" = de-overlapped (the honest figure); "overlapping" = not de-overlapped yet, so the counts and hit rate are inflated.'}, 'last_sample_ts': {'description': 'Newest graded sample (ms epoch).'}, 'first_sample_ts': {'description': 'Oldest graded sample (ms epoch).'}, 'scratch_samples': {'description': 'Independent directional calls whose outcome landed inside the ±0.5% deadband; excluded from the hit rate.'}, 'direction_samples': {'description': 'INDEPENDENT directional calls behind the hit-rate, one per non-overlapping horizon window — a DIFFERENT denominator from `samples`.'}, 'direction_hit_rate': {'description': 'Share of independent directional calls that got the direction right, 0-1. Neutral forecasts and ±0.5% scratches are excluded; null = no scored directional call yet.'}, 'independent_samples': {'description': 'Independent trials of any kind (directional, abstained or scratched).'}, 'overlapping_hit_rate': {'description': 'Hit rate over the overlapping count with scratches counted as misses — audit only, not a track record.'}, 'overlapping_direction_samples': {'description': 'Every verified directional forecast, overlaps included — audit only.'}}, 'additionalProperties': True}, 'description': 'One graded bucket per row.'}, 'asset': {'description': 'Asset filter applied, or null for every asset.'}, 'object': {'description': 'Always "forecast-accuracy".'}, 'reason': {'type': 'string', 'description': 'Why the payload is absent, when `available` is false.'}, 'available': {'type': 'boolean', 'description': 'False when this call has no data — a snapshot that is not warm yet, a domain switched off, or an argument that was rejected. NOT an error, and NOT a statement about the market.'}, 'truncated': {'properties': {'limit': {'type': 'number', 'description': 'The cap that was applied.'}, 'originalLengths': {'description': 'Field name → its full length before the cut.', 'additionalProperties': True}}, 'description': 'Present only when a list was cut to `limit`.', 'additionalProperties': True}, 'assetsScored': {'type': 'array', 'items': {'description': 'Asset symbol.'}, 'description': 'Assets with a graded record.'}, 'totalBuckets': {'description': 'Scored asset/interval/model buckets in the whole record.'}}, 'additionalProperties': True}
입력 스키마
{'type': 'object', 'properties': {'limit': {'type': 'number', 'default': 10, 'description': 'Maximum rows to return (1-25).'}}, 'additionalProperties': False}
출력 스키마
{'type': 'object', 'properties': {'count': {'description': 'Awards in this pass.'}, 'limit': {'type': 'number', 'description': 'Row cap applied to every list in this payload.'}, 'stale': {'description': 'True when the snapshot is past its refresh interval.'}, 'reason': {'type': 'string', 'description': 'Why the payload is absent, when `available` is false.'}, 'shorts': {'description': 'Short signals.'}, 'sources': {'description': 'Per-source status — which award feeds answered.', 'additionalProperties': True}, 'topScore': {'description': 'Its score, 0-1.'}, 'available': {'type': 'boolean', 'description': 'False when this call has no data — a snapshot that is not warm yet, a domain switched off, or an argument that was rejected. NOT an error, and NOT a statement about the market.'}, 'fetchedAt': {'description': 'When the underlying snapshot was refreshed (epoch ms or ISO-8601). Age matters: these are cached reads, not live queries.'}, 'topSector': {'description': 'Its sector.'}, 'topTicker': {'description': 'Highest-scoring ticker.'}, 'longSignals': {'type': 'array', 'items': {'properties': {'band': {'description': 'Score band.'}, 'score': {'description': 'Conviction score, 0-1.'}, 'hasFms': {'description': 'True when a Foreign Military Sale is attached.'}, 'sector': {'description': 'Sector.'}, 'tickers': {'type': 'array', 'items': {}, 'description': 'Every ticker on the award.'}, 'headline': {'description': 'One-line summary.'}, 'totalUsd': {'description': 'Awarded USD.'}, 'awardedAt': {'description': 'Award date.'}, 'direction': {'description': 'long or short.'}, 'rationale': {'description': 'Why it scored where it did.'}, 'primaryTicker': {'description': 'Lead ticker.'}, 'surpriseRatio': {'description': 'Award size against the contractor’s run rate.'}, 'fundamentalsConfluence': {'description': 'Whether fundamentals agree with the award signal.'}}, 'additionalProperties': True}, 'description': 'Scored buy-side signals.'}, 'shortSignals': {'type': 'array', 'items': {}, 'description': 'Scored sell-side signals; same fields as `longSignals`.'}, 'actionableLongs': {'description': 'Long signals that cleared the scoring gate.'}, 'sectorAggregates': {'type': 'array', 'items': {'properties': {'sector': {'description': 'Sector.'}, 'totalUsd': {'description': 'Awarded USD.'}, 'awardCount': {'description': 'Awards.'}, 'topTickers': {'type': 'array', 'items': {}, 'description': 'Tickers carrying the sector.'}}, 'additionalProperties': True}, 'description': 'Awarded dollars by sector.'}, 'watchlistExpansion': {'type': 'array', 'items': {}, 'description': 'Tickers the pass added to the watchlist.'}}, 'additionalProperties': True}
입력 스키마
{'type': 'object', 'properties': {'limit': {'type': 'number', 'default': 10, 'description': 'Maximum rows to return (1-25).'}}, 'additionalProperties': False}
출력 스키마
{'type': 'object', 'properties': {'limit': {'type': 'number', 'description': 'Row cap applied to every list in this payload.'}, 'reason': {'type': 'string', 'description': 'Why the payload is absent, when `available` is false.'}, 'whales': {'properties': {'available': {'description': 'False when the positioning leg could not be read.'}, 'consensus': {'description': 'Net directional read across the traders.'}, 'topTraders': {'type': 'array', 'items': {}, 'description': 'The traders behind the read.'}, 'bearishAssets': {'type': 'array', 'items': {}, 'description': 'Assets the cohort is net short.'}, 'bullishAssets': {'type': 'array', 'items': {}, 'description': 'Assets the cohort is net long.'}, 'whalePositions': {'type': 'array', 'items': {}, 'description': 'Individual positions.'}, 'tradersAnalyzed': {'description': 'Traders actually read.'}, 'tradersRequested': {'description': 'Traders the pass tried to read — a gap means partial coverage.'}}, 'description': 'Whale positioning: the consensus read, the bullish/bearish assets and the traders behind it.', 'additionalProperties': True}, 'funding': {'properties': {'rates': {'description': 'Funding rate per asset.', 'additionalProperties': True}, 'extremes': {'description': 'Most positive and most negative funding.', 'additionalProperties': True}, 'available': {'description': 'False when the funding leg could not be read.'}, 'divergences': {'type': 'array', 'items': {}, 'description': 'Assets whose funding disagrees across venues.'}, 'marketRegime': {'description': 'Regime implied by funding across the book.'}, 'opportunities': {'type': 'array', 'items': {}, 'description': 'Funding-carry candidates.'}}, 'description': 'Perp funding rates, their extremes, divergences and momentum.', 'additionalProperties': True}, 'available': {'type': 'boolean', 'description': 'False when this call has no data — a snapshot that is not warm yet, a domain switched off, or an argument that was rejected. NOT an error, and NOT a statement about the market.'}, 'fetchedAt': {'description': 'Per-leg refresh times — positioning and funding age independently.', 'additionalProperties': True}, 'truncated': {'properties': {'limit': {'type': 'number', 'description': 'The cap that was applied.'}, 'originalLengths': {'description': 'Field name → its full length before the cut.', 'additionalProperties': True}}, 'description': 'Present only when a list was cut to `limit`.', 'additionalProperties': True}}, 'additionalProperties': True}
입력 스키마
{'type': 'object', 'properties': {'limit': {'type': 'number', 'default': 8, 'description': 'Rows to return (1-15).'}}, 'additionalProperties': False}
출력 스키마
{'type': 'object', 'properties': {'rows': {'type': 'array', 'items': {'properties': {'name': {'description': 'Token name.'}, 'symbol': {'description': 'Token symbol.'}, 'chainId': {'description': 'EVM chain id.'}, 'holders': {'description': 'Holder count.'}, 'socials': {'description': 'Links the token publishes.', 'additionalProperties': True}, 'priceUsd': {'description': 'Price in USD.'}, 'protocol': {'description': 'Launchpad protocol.'}, 'volumeUsd': {'description': 'Period volume.'}, 'createTime': {'description': 'Creation time.'}, 'devAddress': {'description': 'Deployer address.'}, 'devSellPct': {'description': 'Share of the deployer position already sold.'}, 'devPosition': {'description': 'Deployer position size.'}, 'progressPct': {'description': 'Bonding-curve progress toward migration.'}, 'liquidityUsd': {'description': 'Pool liquidity.'}, 'marketCapUsd': {'description': 'Market cap in USD.'}, 'holdersDevPct': {'description': 'Share held by the deployer.'}, 'migrateStatus': {'description': 'Migration status.'}, 'priceChangePct': {'description': 'Percentage price change over the period.'}, 'contractAddress': {'description': 'Token contract.'}, 'holdersTop10Pct': {'description': 'Share held by the top 10 holders.'}, 'holdersSniperPct': {'description': 'Share held by snipers.'}, 'bundlerHoldingPct': {'description': 'Share held through bundlers.'}, 'holdersInsiderPct': {'description': 'Share held by insiders.'}, 'tagDevWashTrading': {'description': 'Deployer wash-trading flag.'}, 'newWalletHoldingPct': {'description': 'Share held by wallets created around launch.'}, 'tagInsiderWashTrading': {'description': 'Insider wash-trading flag.'}}, 'additionalProperties': True}, 'description': 'Launchpad tokens approaching or past migration.'}, 'chain': {'description': 'Chain the screen ran on.'}, 'object': {'description': 'Always "launchpad-radar".'}, 'reason': {'type': 'string', 'description': 'Why the payload is absent, when `available` is false.'}, 'available': {'type': 'boolean', 'description': 'False when this call has no data — a snapshot that is not warm yet, a domain switched off, or an argument that was rejected. NOT an error, and NOT a statement about the market.'}}, 'additionalProperties': True}
입력 스키마
{'type': 'object', 'properties': {}, 'additionalProperties': False}
출력 스키마
{'type': 'object', 'properties': {'cmc': {'description': 'CoinMarketCap Fear & Greed index, with a yearly high/low.', 'additionalProperties': True}, 'crypto': {'description': 'Crypto Fear & Greed index, with yesterday/last-week comparisons.', 'additionalProperties': True}, 'reason': {'type': 'string', 'description': 'Why the payload is absent, when `available` is false.'}, 'tradfi': {'description': 'CNN TradFi Fear & Greed index — the equities read, for divergence.', 'additionalProperties': True}, 'available': {'type': 'boolean', 'description': 'False when this call has no data — a snapshot that is not warm yet, a domain switched off, or an argument that was rejected. NOT an error, and NOT a statement about the market.'}, 'fetchedAt': {'description': 'Per-source refresh times; the four sources age independently.', 'additionalProperties': True}, 'altcoinSeason': {'description': 'Altcoin-season regime, its 30d/90d indices and the cohort behind them.', 'additionalProperties': True}}, 'additionalProperties': True}
입력 스키마
{'type': 'object', 'properties': {'limit': {'type': 'number', 'default': 10, 'description': 'Maximum rows to return (1-25).'}}, 'additionalProperties': False}
출력 스키마
{'type': 'object', 'properties': {'limit': {'type': 'number', 'description': 'Row cap applied to every list in this payload.'}, 'stale': {'description': 'True when the snapshot is past its refresh interval.'}, 'reason': {'type': 'string', 'description': 'Why the payload is absent, when `available` is false.'}, 'available': {'type': 'boolean', 'description': 'False when this call has no data — a snapshot that is not warm yet, a domain switched off, or an argument that was rejected. NOT an error, and NOT a statement about the market.'}, 'fetchedAt': {'description': 'When the underlying snapshot was refreshed (epoch ms or ISO-8601). Age matters: these are cached reads, not live queries.'}, 'truncated': {'properties': {'limit': {'type': 'number', 'description': 'The cap that was applied.'}, 'originalLengths': {'description': 'Field name → its full length before the cut.', 'additionalProperties': True}}, 'description': 'Present only when a list was cut to `limit`.', 'additionalProperties': True}, 'alertCount': {'description': 'Alerts in this pass.'}, 'highRiskCount': {'description': 'Alerts graded high risk.'}, 'insiderScanReport': {'properties': {'alerts': {'type': 'array', 'items': {}, 'description': 'Flagged positions.'}, 'walletClusters': {'type': 'array', 'items': {}, 'description': 'Wallets that move together.'}, 'walletsFlagged': {'description': 'Wallets flagged.'}, 'walletsScanned': {'description': 'Wallets examined.'}, 'whaleTransfers': {'type': 'array', 'items': {}, 'description': 'Large transfers into the flagged wallets.'}, 'dataSourcesUsed': {'type': 'array', 'items': {}, 'description': 'Sources the scan read.'}, 'marketAnomalies': {'type': 'array', 'items': {}, 'description': 'Market-level anomalies.'}, 'marketsAnalyzed': {'description': 'Markets examined.'}}, 'description': 'The scan behind the alerts.', 'additionalProperties': True}}, 'additionalProperties': True}
입력 스키마
{'type': 'object', 'properties': {'limit': {'type': 'number', 'default': 10, 'description': 'Maximum rows to return (1-25).'}}, 'additionalProperties': False}
출력 스키마
{'type': 'object', 'properties': {'limit': {'type': 'number', 'description': 'Row cap applied to every list in this payload.'}, 'stale': {'description': 'True when the snapshot is past its refresh interval.'}, 'reason': {'type': 'string', 'description': 'Why the payload is absent, when `available` is false.'}, 'matches': {'type': 'array', 'items': {}, 'description': 'Prediction markets whose odds moved against a dated catalyst.'}, 'available': {'type': 'boolean', 'description': 'False when this call has no data — a snapshot that is not warm yet, a domain switched off, or an argument that was rejected. NOT an error, and NOT a statement about the market.'}, 'fetchedAt': {'description': 'When the underlying snapshot was refreshed (epoch ms or ISO-8601). Age matters: these are cached reads, not live queries.'}}, 'additionalProperties': True}
입력 스키마
{'type': 'object', 'properties': {'limit': {'type': 'number', 'default': 10, 'description': 'Maximum rows to return (1-25).'}}, 'additionalProperties': False}
출력 스키마
{'type': 'object', 'properties': {'limit': {'type': 'number', 'description': 'Row cap applied to every list in this payload.'}, 'stale': {'description': 'True when the snapshot is past its refresh interval.'}, 'reason': {'type': 'string', 'description': 'Why the payload is absent, when `available` is false.'}, 'totals': {'properties': {'trades': {'description': 'Tickets counted.'}, 'spreadUsd': {'description': 'USD spread to resolution.'}, 'collateralUsd': {'description': 'USD collateral behind them.'}}, 'description': 'Totals across the surface.', 'additionalProperties': True}, 'trades': {'type': 'array', 'items': {}, 'description': 'Redemption-arb tickets — near-certain outcomes still trading below $1.'}, 'wallets': {'type': 'array', 'items': {}, 'description': 'Wallets taking those tickets.'}, 'available': {'type': 'boolean', 'description': 'False when this call has no data — a snapshot that is not warm yet, a domain switched off, or an argument that was rejected. NOT an error, and NOT a statement about the market.'}, 'fetchedAt': {'description': 'When the underlying snapshot was refreshed (epoch ms or ISO-8601). Age matters: these are cached reads, not live queries.'}, 'truncated': {'properties': {'limit': {'type': 'number', 'description': 'The cap that was applied.'}, 'originalLengths': {'description': 'Field name → its full length before the cut.', 'additionalProperties': True}}, 'description': 'Present only when a list was cut to `limit`.', 'additionalProperties': True}, 'priceFloor': {'description': 'Entry price a ticket had to clear, 0-1.'}, 'lookbackHours': {'description': 'Window scanned.'}, 'minCollateralUsd': {'description': 'USD size a ticket had to clear.'}}, 'additionalProperties': True}
입력 스키마
{'type': 'object', 'properties': {'asset': {'enum': ['BTC', 'ETH', 'SOL', 'BNB'], 'type': 'string', 'default': 'BTC', 'description': 'Asset symbol. Only the pre-computed universe is available for free.'}, 'interval': {'enum': ['4h', '1d', '1w', '1M'], 'type': 'string', 'default': '1d', 'description': 'Candle interval: 4h looks ~32h ahead, 1d ~7d, 1w ~4w, 1M ~4mo.'}}, 'additionalProperties': False}
출력 스키마
{'type': 'object', 'properties': {'asset': {'description': 'Asset the forecast covers (BTC, ETH, SOL or BNB).'}, 'reason': {'type': 'string', 'description': 'Why the payload is absent, when `available` is false.'}, 'source': {'description': 'Which store the cached run came from.'}, 'driftPct': {'description': 'Projected percentage drift over the interval.'}, 'interval': {'description': 'Candle interval: 4h, 1d, 1w or 1M.'}, 'available': {'type': 'boolean', 'description': 'False when this call has no data — a snapshot that is not warm yet, a domain switched off, or an argument that was rejected. NOT an error, and NOT a statement about the market.'}, 'consensus': {'description': 'True when TimesFM and Kronos agree. False means the models DISAGREE and the signal is weak; null means agreement was not recorded.'}, 'direction': {'description': 'Projected direction — bullish, bearish or neutral.'}, 'fetchedAt': {'description': 'When the underlying snapshot was refreshed (epoch ms or ISO-8601). Age matters: these are cached reads, not live queries.'}}, 'additionalProperties': True}
입력 스키마
{'type': 'object', 'properties': {'limit': {'type': 'number', 'default': 10, 'description': 'Maximum rows to return (1-25).'}}, 'additionalProperties': False}
출력 스키마
{'type': 'object', 'properties': {'limit': {'type': 'number', 'description': 'Row cap applied to every list in this payload.'}, 'prints': {'properties': {'chain': {'description': 'Chain name.'}, 'ethUsd': {'description': 'ETH price used to value the ETH-legged prints.'}, 'minUsd': {'description': 'USD floor a trade had to clear to be printed.'}, 'prints': {'type': 'array', 'items': {'properties': {'usd': {'description': 'USD value of the print.'}, 'side': {'description': 'buy or sell.'}, 'token': {'description': 'Token traded.'}, 'venue': {'description': 'Pool or venue the print hit.'}}, 'additionalProperties': True}, 'description': 'Individual large trades.'}, 'chainId': {'description': 'EVM chain id — 4663 for Robinhood Chain.'}, 'available': {'description': 'False when the last pass could not measure the chain.'}, 'ethSource': {'description': 'Where that ETH price came from.'}, 'quoteSwaps': {'description': 'WETH/USDG FX swaps, counted separately so they do not dominate the tape.'}, 'rowsScanned': {'description': 'Trades examined.'}, 'quoteSwapUsd': {'description': 'USD volume of those FX swaps.'}, 'rowsRejected': {'description': 'Trades dropped as mispriced — a fresh pool reports values in the hundreds of millions, so they are excluded rather than published.'}, 'windowMinutes': {'description': 'Lookback window.'}}, 'description': 'The tape and the pass that produced it.', 'additionalProperties': True}, 'reason': {'type': 'string', 'description': 'Why the payload is absent, when `available` is false.'}, 'available': {'type': 'boolean', 'description': 'False when this call has no data — a snapshot that is not warm yet, a domain switched off, or an argument that was rejected. NOT an error, and NOT a statement about the market.'}, 'fetchedAt': {'description': 'When the underlying snapshot was refreshed (epoch ms or ISO-8601). Age matters: these are cached reads, not live queries.'}}, 'additionalProperties': True}
입력 스키마
{'type': 'object', 'properties': {'limit': {'type': 'number', 'default': 10, 'description': 'Maximum rows to return (1-25).'}}, 'additionalProperties': False}
출력 스키마
{'type': 'object', 'properties': {'limit': {'type': 'number', 'description': 'Row cap applied to every list in this payload.'}, 'stale': {'description': 'True when the snapshot is past its refresh interval.'}, 'reason': {'type': 'string', 'description': 'Why the payload is absent, when `available` is false.'}, 'available': {'type': 'boolean', 'description': 'False when this call has no data — a snapshot that is not warm yet, a domain switched off, or an argument that was rejected. NOT an error, and NOT a statement about the market.'}, 'fetchedAt': {'description': 'When the underlying snapshot was refreshed (epoch ms or ISO-8601). Age matters: these are cached reads, not live queries.'}, 'overallSignal': {'description': 'Net read across the transfers — accumulating, distributing or neutral.'}, 'smartMoneyMoves': {'type': 'array', 'items': {'description': 'Summary line.'}, 'description': 'One-line summaries of the same moves.'}, 'notableTransfers': {'type': 'array', 'items': {'properties': {'token': {'description': 'Token moved.'}, 'toLabel': {'description': 'Labelled recipient, when known.'}, 'amountUsd': {'description': 'USD value.'}, 'direction': {'description': 'Direction of the flow.'}, 'fromLabel': {'description': 'Labelled sender, when known.'}, 'description': {'description': 'Human-readable summary of the transfer.'}, 'signalClass': {'description': 'How the transfer was classified.'}}, 'additionalProperties': True}, 'description': 'The transfers behind the signal.'}, 'droppedRoutineCustody': {'description': 'Transfers dropped as routine custody movement rather than signal.'}}, 'additionalProperties': True}
입력 스키마
{'type': 'object', 'properties': {'limit': {'type': 'number', 'default': 8, 'description': 'Rows to return (1-15).'}}, 'additionalProperties': False}
출력 스키마
{'type': 'object', 'properties': {'rows': {'type': 'array', 'items': {'properties': {'symbol': {'description': 'Token symbol.'}, 'chainId': {'description': 'EVM chain id.'}, 'holders': {'description': 'Holder count.'}, 'traders': {'description': 'Distinct traders.'}, 'priceUsd': {'description': 'Price in USD.'}, 'inflowUsd': {'description': 'Net smart-money inflow — what the ranking is on.'}, 'riskLevel': {'description': 'Risk grade.'}, 'volumeUsd': {'description': 'Period volume.'}, 'kycHolders': {'description': 'Holders with a KYC attestation.'}, 'launchTime': {'description': 'When the token launched.'}, 'liquidityUsd': {'description': 'Pool liquidity.'}, 'marketCapUsd': {'description': 'Market cap in USD.'}, 'priceChangePct': {'description': 'Percentage price change over the period.'}, 'contractAddress': {'description': 'Token contract.'}, 'holdersTop10Pct': {'description': 'Share held by the top 10 holders — concentration risk.'}}, 'additionalProperties': True}, 'description': 'Tokens ranked by smart-money inflow.'}, 'chain': {'description': 'Chain the screen ran on.'}, 'object': {'description': 'Always "smart-money-inflow".'}, 'period': {'description': 'Lookback period.'}, 'reason': {'type': 'string', 'description': 'Why the payload is absent, when `available` is false.'}, 'available': {'type': 'boolean', 'description': 'False when this call has no data — a snapshot that is not warm yet, a domain switched off, or an argument that was rejected. NOT an error, and NOT a statement about the market.'}}, 'additionalProperties': True}
입력 스키마
{'type': 'object', 'properties': {'limit': {'type': 'number', 'default': 8, 'description': 'Rows to return (1-15).'}, 'sentiment': {'enum': ['All', 'Positive', 'Negative', 'Neutral'], 'type': 'string', 'default': 'All', 'description': 'Filter to one sentiment class.'}}, 'additionalProperties': False}
출력 스키마
{'type': 'object', 'properties': {'rows': {'type': 'array', 'items': {'properties': {'symbol': {'description': 'Token symbol.'}, 'chainId': {'description': 'EVM chain id.'}, 'kolCount': {'description': 'Distinct known accounts posting.'}, 'sentiment': {'description': 'Sentiment read for this token.'}, 'socialHype': {'description': 'Hype score — what the ranking is on.'}, 'tokenAgeMs': {'description': 'Token age in milliseconds.'}, 'marketCapUsd': {'description': 'Market cap in USD.'}, 'summaryBrief': {'description': 'One-line summary of what is being said.'}, 'summaryDetail': {'description': 'Longer summary.'}, 'priceChangePct': {'description': 'Percentage price change over the period.'}, 'contractAddress': {'description': 'Token contract.'}}, 'additionalProperties': True}, 'description': 'Tokens ranked by social hype.'}, 'chain': {'description': 'Chain the screen ran on.'}, 'object': {'description': 'Always "social-hype".'}, 'reason': {'type': 'string', 'description': 'Why the payload is absent, when `available` is false.'}, 'available': {'type': 'boolean', 'description': 'False when this call has no data — a snapshot that is not warm yet, a domain switched off, or an argument that was rejected. NOT an error, and NOT a statement about the market.'}, 'sentiment': {'description': 'Sentiment filter applied.'}}, 'additionalProperties': True}
입력 스키마
{'type': 'object', 'properties': {'side': {'enum': ['gainers', 'losers'], 'type': 'string', 'default': 'gainers', 'description': 'Which end of the board to return.'}, 'limit': {'type': 'number', 'default': 10, 'description': 'Maximum rows (1-25).'}}, 'additionalProperties': False}
출력 스키마
{'type': 'object', 'properties': {'side': {'description': 'Which side was asked for — gainers or losers.'}, 'limit': {'type': 'number', 'description': 'Row cap applied to every list in this payload.'}, 'stale': {'description': 'True when the snapshot is past its refresh interval.'}, 'errors': {'type': 'array', 'items': {'description': 'Error text.'}, 'description': 'Legs that failed. A partial answer says so here rather than reading as a quiet market.'}, 'reason': {'type': 'string', 'description': 'Why the payload is absent, when `available` is false.'}, 'source': {'description': 'Price source behind the cross-asset ranking.'}, 'idSource': {'description': 'Source of the asset identifiers.'}, 'perChain': {'description': 'Per-chain movers, keyed by chain.', 'additionalProperties': True}, 'available': {'type': 'boolean', 'description': 'False when this call has no data — a snapshot that is not warm yet, a domain switched off, or an argument that was rejected. NOT an error, and NOT a statement about the market.'}, 'fetchedAt': {'description': 'When the underlying snapshot was refreshed (epoch ms or ISO-8601). Age matters: these are cached reads, not live queries.'}, 'crossAsset': {'properties': {'losers': {'type': 'array', 'items': {}, 'description': 'Top losers.'}, 'gainers': {'type': 'array', 'items': {}, 'description': 'Top gainers.'}, 'cohortSize': {'description': 'Assets in the ranked cohort.'}, 'universeSize': {'description': 'Assets considered before filtering.'}}, 'description': 'Cross-asset ranking plus the universe/cohort sizes it was drawn from.', 'additionalProperties': True}, 'perChainUnavailable': {'description': 'True when the per-chain leg could not be read.'}}, 'additionalProperties': True}
입력 스키마
{'type': 'object', 'properties': {'limit': {'type': 'number', 'default': 10, 'description': 'Maximum results (1-100).'}}, 'additionalProperties': False}
출력 스키마
{'type': 'object', 'properties': {'skill': {'type': 'string', 'description': 'Which Einstein capability answered. These tools route onto one of many skills by an enum argument, so this names the branch that actually ran.'}, 'reason': {'type': 'string', 'description': 'Why there is no analysis, when `available` is false.'}, 'analysis': {'type': 'string', 'description': "The written answer, identical to the result's text block. This is the field to read: the rest of the payload is whichever capability answered, and its shape varies by tool and by argument."}, 'available': {'type': 'boolean', 'description': 'True when the analysis ran. False when it did not — no capability matched the arguments, the caller is out of credit, billing was unavailable, or the skill produced nothing. NOT a statement about the market.'}}, 'additionalProperties': True}
입력 스키마
{'type': 'object', 'required': [], 'properties': {'kind': {'enum': ['contract', 'transaction', 'flow'], 'type': 'string', 'default': 'contract', 'description': 'contract = review a deployed contract (needs `address`) · transaction = explain one transaction (needs `txHash`) · flow = trace fund flow from a transaction or wallet.'}, 'chain': {'enum': ['base', 'ethereum', 'bsc', 'arbitrum', 'polygon', 'optimism', 'solana'], 'type': 'string', 'default': 'base', 'description': 'Blockchain network.'}, 'txHash': {'type': 'string', 'description': 'Transaction hash (0x + 64 hex).'}, 'address': {'type': 'string', 'description': 'Contract or wallet address (0x + 40 hex).'}}, 'additionalProperties': False}
출력 스키마
{'type': 'object', 'properties': {'skill': {'type': 'string', 'description': 'Which Einstein capability answered. These tools route onto one of many skills by an enum argument, so this names the branch that actually ran.'}, 'reason': {'type': 'string', 'description': 'Why there is no analysis, when `available` is false.'}, 'analysis': {'type': 'string', 'description': "The written answer, identical to the result's text block. This is the field to read: the rest of the payload is whichever capability answered, and its shape varies by tool and by argument."}, 'available': {'type': 'boolean', 'description': 'True when the analysis ran. False when it did not — no capability matched the arguments, the caller is out of credit, billing was unavailable, or the skill produced nothing. NOT a statement about the market.'}}, 'additionalProperties': True}
입력 스키마
{'type': 'object', 'properties': {}, 'additionalProperties': False}
출력 스키마
{'type': 'object', 'properties': {'free': {'type': 'array', 'items': {'type': 'object', 'properties': {'name': {'type': 'string', 'description': 'Tool name to call.'}, 'title': {'type': 'string', 'description': 'Human-readable title.'}, 'description': {'type': 'string', 'description': 'What it returns.'}}, 'additionalProperties': True}, 'description': 'Tools any caller can use with no account and no charge.'}, 'paid': {'type': 'array', 'items': {'type': 'object', 'properties': {'name': {'type': 'string', 'description': 'Tool name to call.'}, 'title': {'type': 'string', 'description': 'Human-readable title.'}, 'priceUsd': {'type': 'string', 'description': 'USD price per call, or a range when the tool routes to several skills.'}, 'description': {'type': 'string', 'description': 'What it returns.'}}, 'additionalProperties': True}, 'description': 'Tools that need a signed-in Einstein account with credit.'}, 'reason': {'type': 'string', 'description': 'Why the payload is absent, when `available` is false.'}, 'billing': {'type': 'object', 'description': 'How paying works: the billing model, how to top up and how to sign in.', 'additionalProperties': True}, 'available': {'type': 'boolean', 'description': 'False when this call has no data. NOT an error.'}}, 'additionalProperties': True}
입력 스키마
{'type': 'object', 'properties': {'kind': {'enum': ['portfolio_risk', 'strategy_split', 'gate_check', 'meta_strategy'], 'type': 'string', 'default': 'portfolio_risk', 'description': 'portfolio_risk · strategy_split · gate_check · meta_strategy.'}, 'context': {'type': 'string', 'description': 'Portfolio or constraints to reason about.'}}, 'additionalProperties': False}
출력 스키마
{'type': 'object', 'properties': {'skill': {'type': 'string', 'description': 'Which Einstein capability answered. These tools route onto one of many skills by an enum argument, so this names the branch that actually ran.'}, 'reason': {'type': 'string', 'description': 'Why there is no analysis, when `available` is false.'}, 'analysis': {'type': 'string', 'description': "The written answer, identical to the result's text block. This is the field to read: the rest of the payload is whichever capability answered, and its shape varies by tool and by argument."}, 'available': {'type': 'boolean', 'description': 'True when the analysis ran. False when it did not — no capability matched the arguments, the caller is out of credit, billing was unavailable, or the skill produced nothing. NOT a statement about the market.'}}, 'additionalProperties': True}
입력 스키마
{'type': 'object', 'required': ['strategy'], 'properties': {'kind': {'enum': ['custom', 'standard', 'engine', 'optimize'], 'type': 'string', 'default': 'custom', 'description': 'custom (plain-language rules) · standard · engine · optimize.'}, 'asset': {'type': 'string', 'description': 'Asset to backtest against.'}, 'strategy': {'type': 'string', 'description': 'Plain-language strategy description or template name.'}}, 'additionalProperties': False}
출력 스키마
{'type': 'object', 'properties': {'skill': {'type': 'string', 'description': 'Which Einstein capability answered. These tools route onto one of many skills by an enum argument, so this names the branch that actually ran.'}, 'reason': {'type': 'string', 'description': 'Why there is no analysis, when `available` is false.'}, 'analysis': {'type': 'string', 'description': "The written answer, identical to the result's text block. This is the field to read: the rest of the payload is whichever capability answered, and its shape varies by tool and by argument."}, 'available': {'type': 'boolean', 'description': 'True when the analysis ran. False when it did not — no capability matched the arguments, the caller is out of credit, billing was unavailable, or the skill produced nothing. NOT a statement about the market.'}}, 'additionalProperties': True}
입력 스키마
{'type': 'object', 'properties': {'limit': {'type': 'number', 'default': 10, 'description': 'Maximum results (1-100).'}, 'venue': {'enum': ['pumpfun', 'zora', 'robinhood'], 'type': 'string', 'default': 'pumpfun', 'description': 'Which launch venue to scan.'}, 'timeframe': {'enum': ['1h', '4h', '24h', '7d', '30d'], 'type': 'string', 'default': '24h', 'description': 'Lookback window.'}}, 'additionalProperties': False}
출력 스키마
{'type': 'object', 'properties': {'skill': {'type': 'string', 'description': 'Which Einstein capability answered. These tools route onto one of many skills by an enum argument, so this names the branch that actually ran.'}, 'reason': {'type': 'string', 'description': 'Why there is no analysis, when `available` is false.'}, 'analysis': {'type': 'string', 'description': "The written answer, identical to the result's text block. This is the field to read: the rest of the payload is whichever capability answered, and its shape varies by tool and by argument."}, 'available': {'type': 'boolean', 'description': 'True when the analysis ran. False when it did not — no capability matched the arguments, the caller is out of credit, billing was unavailable, or the skill produced nothing. NOT a statement about the market.'}}, 'additionalProperties': True}
입력 스키마
{'type': 'object', 'properties': {'kind': {'enum': ['top_gainers', 'movers', 'alpha_ranked', 'altseason', 'technicals', 'regime'], 'type': 'string', 'default': 'top_gainers', 'description': 'top_gainers · movers · alpha_ranked (quality-filtered gainers) · altseason · technicals (needs `token`) · regime (market regime classification).'}, 'chain': {'enum': ['base', 'ethereum', 'bsc', 'arbitrum', 'polygon', 'optimism', 'solana'], 'type': 'string', 'default': 'base', 'description': 'Blockchain network.'}, 'limit': {'type': 'number', 'default': 10, 'description': 'Maximum results (1-100).'}, 'token': {'type': 'string', 'description': 'Token symbol or address, for `technicals`.'}, 'timeframe': {'enum': ['1h', '4h', '24h', '7d', '30d'], 'type': 'string', 'default': '24h', 'description': 'Lookback window.'}}, 'additionalProperties': False}
출력 스키마
{'type': 'object', 'properties': {'skill': {'type': 'string', 'description': 'Which Einstein capability answered. These tools route onto one of many skills by an enum argument, so this names the branch that actually ran.'}, 'reason': {'type': 'string', 'description': 'Why there is no analysis, when `available` is false.'}, 'analysis': {'type': 'string', 'description': "The written answer, identical to the result's text block. This is the field to read: the rest of the payload is whichever capability answered, and its shape varies by tool and by argument."}, 'available': {'type': 'boolean', 'description': 'True when the analysis ran. False when it did not — no capability matched the arguments, the caller is out of credit, billing was unavailable, or the skill produced nothing. NOT a statement about the market.'}}, 'additionalProperties': True}
입력 스키마
{'type': 'object', 'properties': {'chainId': {'enum': [4663, 8453], 'type': 'number', 'description': 'Restrict to one chain. 4663 = Robinhood Chain, 8453 = Base. Omit for both.'}}, 'additionalProperties': False}
출력 스키마
{'type': 'object', 'properties': {'skill': {'type': 'string', 'description': 'Which Einstein capability answered. These tools route onto one of many skills by an enum argument, so this names the branch that actually ran.'}, 'reason': {'type': 'string', 'description': 'Why there is no analysis, when `available` is false.'}, 'analysis': {'type': 'string', 'description': "The written answer, identical to the result's text block. This is the field to read: the rest of the payload is whichever capability answered, and its shape varies by tool and by argument."}, 'available': {'type': 'boolean', 'description': 'True when the analysis ran. False when it did not — no capability matched the arguments, the caller is out of credit, billing was unavailable, or the skill produced nothing. NOT a statement about the market.'}}, 'additionalProperties': True}
입력 스키마
{'type': 'object', 'properties': {'chain': {'enum': ['base', 'ethereum', 'bsc', 'arbitrum', 'polygon', 'optimism', 'solana'], 'type': 'string', 'default': 'base', 'description': 'Blockchain network.'}, 'limit': {'type': 'number', 'default': 10, 'description': 'Maximum results (1-100).'}, 'venue': {'enum': ['onchain', 'hyperliquid', 'smart_money'], 'type': 'string', 'default': 'onchain', 'description': 'onchain = large on-chain transfers · hyperliquid = perp whale positioning · smart_money = profitable-wallet cohort.'}, 'timeframe': {'enum': ['1h', '4h', '24h', '7d', '30d'], 'type': 'string', 'default': '24h', 'description': 'Lookback window.'}}, 'additionalProperties': False}
출력 스키마
{'type': 'object', 'properties': {'skill': {'type': 'string', 'description': 'Which Einstein capability answered. These tools route onto one of many skills by an enum argument, so this names the branch that actually ran.'}, 'reason': {'type': 'string', 'description': 'Why there is no analysis, when `available` is false.'}, 'analysis': {'type': 'string', 'description': "The written answer, identical to the result's text block. This is the field to read: the rest of the payload is whichever capability answered, and its shape varies by tool and by argument."}, 'available': {'type': 'boolean', 'description': 'True when the analysis ran. False when it did not — no capability matched the arguments, the caller is out of credit, billing was unavailable, or the skill produced nothing. NOT a statement about the market.'}}, 'additionalProperties': True}
최근 도구 변경
유사한 MCP 서버
Swarm0x
Analyzes tokens and wallets on Robinhood Chain, simulates trades, monitors activity, and prepares unsigned transactions.
tachyo
Provides crypto market intelligence, token rug checks, and wallet verification.
Seneschal Data
Provides Monero, Zcash, and Ethereum data services including payment monitoring, DeFi liquidation analysis, MEV intelligence, bui…
ScanHood
Scans Robinhood Chain tokens for honeypot and rug risks, provides on-chain market data and quotes, and builds token, bridge, and …
tech-risk
Provides live crypto prices, funding rates, DeFi yields, prediction-market data, Base blockchain queries, token security analysis…
XRPLHub — XRPLScore & XRPL actions
Analyzes XRPL wallets, lending exposure, credentials, token risk, sanctions status, and creditworthiness, and builds ready-to-sig…
cerberus-index
Performs XRPL token, issuer, wallet, transaction, route, liquidity, price, and address risk analysis, including token monitoring …
steve-guard
Provides Solana and Robinhood Chain token safety checks, trading signals, market event data, and non-custodial swap transaction c…