Endpoints: 28,729MCP servers: 18,413Payout addresses: 2,071Paid calls: 1,542Letters: 14Defects: 1,324counted 2 min ago
teppi

Server definition

Hash
sha256:89c5472611a2a9dd826c47ca07779b4b63e488de02eb820e4111c11a1e707be5
What it is
What a remote MCP server returned when asked what it offers: 31 tools

The blob, as servednamed by its sha256

{ "instructions": "SQD provides read-only blockchain data from SQD Portal. Start with portal_list_networks to resolve a network, then use portal_get_network_info to check availability and freshness. Check _coverage and _pagination before claiming completeness, and reuse _pagination.next_cursor when present. Chain-specific MCP query tools cover Ethereum-compatible networks, Solana, Bitcoin, Polkadot and other Substrate networks, Hyperliquid, and Tron (native TRX transfers, TRC-10 transfers, contract calls, and TRC-20 event logs through portal_tron_query_transactions and portal_tron_query_logs; addresses may be given as Base58 or hex). Prefer timeframe for recent windows and from_block/to_block for exact evidence. No authentication is required.", "tools": [ { "description": "Get the big picture for Bitcoin block, fee, and address activity over a recent or explicit window.\n\nCOMMON USER ASKS:\n- Bitcoin network snapshot\n\nFIRST CHOICE FOR:\n- the big picture for Bitcoin right now\n\nWHEN TO USE:\n- You want the big picture for Bitcoin right now.\n- You want a network-level Bitcoin snapshot.\n- You care about block cadence, fees, SegWit/Taproot adoption, or activity metrics.\n\nDON'T USE:\n- You need raw transactions rather than network analytics.\n\nEXAMPLES:\n- Bitcoin network snapshot: {\"network\":\"bitcoin-mainnet\",\"timeframe\":\"1h\"}", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "from_block": { "description": "Starting block number (use this OR timeframe)", "type": "number" }, "from_timestamp": { "anyOf": [ { "type": "string" }, { "type": "number" } ], "description": "Starting timestamp. Accepts Unix seconds, Unix milliseconds, ISO datetime, or relative input like \"6h ago\"." }, "include_address_activity": { "default": true, "description": "Include unique address count and output value (requires extra queries, slower)", "type": "boolean" }, "mode": { "default": "deep", "description": "Execution depth. Defaults to complete requested-window analysis; the optional fast value is only for explicitly bounded previews.", "enum": [ "fast", "deep" ], "type": "string" }, "network": { "default": "bitcoin-mainnet", "description": "Network name (default: bitcoin-mainnet)", "type": "string" }, "response_format": { "default": "full", "description": "Response format: 'summary' (high-level metrics only), 'compact' (core sections, lighter payload), 'full' (complete analytics).", "enum": [ "full", "compact", "summary" ], "type": "string" }, "timeframe": { "description": "Time range: '1h' (~6 blocks), '6h' (~36 blocks), '24h' (~144 blocks). Default: '1h'", "type": "string" }, "to_block": { "description": "Ending block number", "type": "number" }, "to_timestamp": { "anyOf": [ { "type": "string" }, { "type": "number" } ], "description": "Ending timestamp. Accepts Unix seconds, Unix milliseconds, ISO datetime, or relative input like \"now\"." } }, "type": "object" }, "name": "portal_bitcoin_get_analytics", "outputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": {}, "properties": { "_app": { "description": "SQD Explorer identity and host-render state." }, "_coverage": { "description": "Window and result completeness." }, "_evidence": { "description": "Replayable arguments, digest, row count, and receipt." }, "_execution": { "description": "Bounded execution and scan details." }, "_freshness": { "description": "Freshness and finality." }, "_llm": { "description": "Hints to locate the primary evidence." }, "_meta": { "description": "Network, block range, timing, and row counts." }, "_notice": { "description": "Limitation or truncation notice.", "type": "string" }, "_notices": { "description": "Limitation or truncation notices.", "items": { "type": "string" }, "type": "array" }, "_ordering": { "description": "Ordering guarantees." }, "_pagination": { "description": "Pagination state and next_cursor." }, "_server": { "additionalProperties": false, "description": "SQD server name, exact version, and git commit.", "properties": { "commit": { "type": "string" }, "name": { "type": "string" }, "version": { "type": "string" } }, "required": [ "name", "version", "commit" ], "type": "object" }, "_summary": { "description": "Human-readable summary.", "type": "string" }, "_tool_contract": { "description": "Tool identity, intent, and chain families." }, "_ui": { "description": "Chart, table, and follow-up presentation metadata." }, "answer": { "description": "Answer grounded in the returned data.", "type": "string" }, "display": { "description": "Labels for presenting the result." }, "error": { "additionalProperties": {}, "description": "Structured failure details.", "properties": { "code": { "type": "string" }, "origin": { "type": "string" }, "retry_after_ms": { "type": "number" }, "retryable": { "type": "boolean" }, "suggestions": { "items": { "type": "string" }, "type": "array" }, "summary": { "type": "string" } }, "required": [ "code", "origin", "summary", "retryable", "suggestions" ], "type": "object" }, "investigation": { "description": "Evidence paths, pivots, and limitations." }, "items": { "description": "Primary rows for list results.", "items": {}, "type": "array" }, "next_steps": { "description": "Safe follow-up actions and continuation guidance." }, "pipes_handoff": { "description": "SQD Pipes guidance for custom data needs." }, "value": { "description": "Primary scalar result." } }, "type": "object" } }, { "description": "Query raw Bitcoin transactions and optionally attach inputs and outputs inline.\n\nCOMMON USER ASKS:\n- Recent Bitcoin transactions\n- Attach inputs and outputs\n\nWHEN TO USE:\n- You need raw Bitcoin transaction records.\n- You want the UTXO envelope without switching to separate input/output tools.\n\nDON'T USE:\n- You only need a quick wallet or network summary.\n\nEXAMPLES:\n- Recent Bitcoin transactions: {\"network\":\"bitcoin-mainnet\",\"timeframe\":\"1h\",\"limit\":20}\n- Attach inputs and outputs: {\"network\":\"bitcoin-mainnet\",\"timeframe\":\"1h\",\"include_inputs\":true,\"include_outputs\":true,\"limit\":10}", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "cursor": { "description": "Continuation cursor from a previous response", "type": "string" }, "finalized_only": { "default": false, "description": "Only query finalized blocks", "type": "boolean" }, "from_block": { "description": "Starting block number", "type": "number" }, "from_timestamp": { "anyOf": [ { "type": "number" }, { "type": "string" } ], "description": "Starting timestamp. Accepts Unix seconds, Unix milliseconds, ISO datetime, or relative input like \"1h ago\"." }, "include_inputs": { "default": false, "description": "Attach transaction inputs inline", "type": "boolean" }, "include_outputs": { "default": false, "description": "Attach transaction outputs inline", "type": "boolean" }, "limit": { "default": 20, "description": "Max transactions to return (default: 20, max: 25). With include_inputs or include_outputs and response_format \"full\", a page near the maximum can exceed the 50,000-byte response budget; the response_too_large error then names the limit to retry with.", "maximum": 25, "minimum": 1, "type": "integer" }, "network": { "description": "Network name (default: bitcoin-mainnet). Optional when continuing with cursor.", "type": "string" }, "response_format": { "description": "Response format: defaults to 'compact' for chat-friendly output. Compact mode keeps inline inputs and outputs in a smaller shape when requested.", "enum": [ "full", "compact", "summary" ], "type": "string" }, "timeframe": { "description": "Time range (e.g., '1h', '24h'). Alternative to from_block/to_block.", "type": "string" }, "to_block": { "description": "Ending block number", "type": "number" }, "to_timestamp": { "anyOf": [ { "type": "number" }, { "type": "string" } ], "description": "Ending timestamp. Accepts Unix seconds, Unix milliseconds, ISO datetime, or relative input like \"now\"." } }, "type": "object" }, "name": "portal_bitcoin_query_transactions", "outputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": {}, "properties": { "_app": { "description": "SQD Explorer identity and host-render state." }, "_coverage": { "description": "Window and result completeness." }, "_evidence": { "description": "Replayable arguments, digest, row count, and receipt." }, "_execution": { "description": "Bounded execution and scan details." }, "_freshness": { "description": "Freshness and finality." }, "_llm": { "description": "Hints to locate the primary evidence." }, "_meta": { "description": "Network, block range, timing, and row counts." }, "_notice": { "description": "Limitation or truncation notice.", "type": "string" }, "_notices": { "description": "Limitation or truncation notices.", "items": { "type": "string" }, "type": "array" }, "_ordering": { "description": "Ordering guarantees." }, "_pagination": { "description": "Pagination state and next_cursor." }, "_server": { "additionalProperties": false, "description": "SQD server name, exact version, and git commit.", "properties": { "commit": { "type": "string" }, "name": { "type": "string" }, "version": { "type": "string" } }, "required": [ "name", "version", "commit" ], "type": "object" }, "_summary": { "description": "Human-readable summary.", "type": "string" }, "_tool_contract": { "description": "Tool identity, intent, and chain families." }, "_ui": { "description": "Chart, table, and follow-up presentation metadata." }, "answer": { "description": "Answer grounded in the returned data.", "type": "string" }, "display": { "description": "Labels for presenting the result." }, "error": { "additionalProperties": {}, "description": "Structured failure details.", "properties": { "code": { "type": "string" }, "origin": { "type": "string" }, "retry_after_ms": { "type": "number" }, "retryable": { "type": "boolean" }, "suggestions": { "items": { "type": "string" }, "type": "array" }, "summary": { "type": "string" } }, "required": [ "code", "origin", "summary", "retryable", "suggestions" ], "type": "object" }, "investigation": { "description": "Evidence paths, pivots, and limitations." }, "items": { "description": "Primary rows for list results.", "items": {}, "type": "array" }, "next_steps": { "description": "Safe follow-up actions and continuation guidance." }, "pipes_handoff": { "description": "SQD Pipes guidance for custom data needs." }, "value": { "description": "Primary scalar result." } }, "type": "object" } }, { "description": "ADVANCED: Query Hyperliquid replica-command actions such as orders, cancels, and leverage updates.\n\nCOMMON USER ASKS:\n- Recent order action\n\nWHEN TO USE:\n- You are debugging Hyperliquid replica-command records.\n- You need raw order-action events instead of fills or analytics.\n\nDON'T USE:\n- You only need public trading activity; fills and analytics are usually the better fit.\n\nEXAMPLES:\n- Recent order action: {\"network\":\"hyperliquid-replica-cmds\",\"timeframe\":\"5m\",\"limit\":1}", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "action_type": { "description": "Action types to filter", "items": { "enum": [ "order", "cancel", "cancelByCloid", "batchModify", "transfer", "withdraw", "updateLeverage" ], "type": "string" }, "type": "array" }, "cursor": { "description": "Continuation cursor from a previous response", "type": "string" }, "finalized_only": { "default": false, "description": "Only query finalized blocks", "type": "boolean" }, "from_block": { "description": "Starting block number (use this OR timeframe)", "type": "number" }, "from_timestamp": { "anyOf": [ { "type": "number" }, { "type": "string" } ], "description": "Starting timestamp. Accepts Unix seconds, Unix milliseconds, ISO datetime, or relative input like \"1h ago\"." }, "limit": { "default": 1, "description": "Max actions to return (1). Replica command payloads can contain large batches, so this exact one-record cursor page is the verified safe response budget.", "maximum": 1, "minimum": 1, "type": "integer" }, "network": { "default": "hyperliquid-replica-cmds", "description": "Network name (default: 'hyperliquid-replica-cmds'). Optional when continuing with cursor.", "type": "string" }, "status": { "description": "Filter by action status", "enum": [ "ok", "err" ], "type": "string" }, "timeframe": { "description": "Time range (e.g., '1h', '24h'). Alternative to from_block/to_block.", "type": "string" }, "to_block": { "description": "Ending block number", "type": "number" }, "to_timestamp": { "anyOf": [ { "type": "number" }, { "type": "string" } ], "description": "Ending timestamp. Accepts Unix seconds, Unix milliseconds, ISO datetime, or relative input like \"now\"." }, "user": { "description": "User wallet addresses (0x-prefixed, lowercase)", "items": { "type": "string" }, "type": "array" }, "vault_address": { "description": "Vault addresses (0x-prefixed, lowercase)", "items": { "type": "string" }, "type": "array" } }, "type": "object" }, "name": "portal_debug_hyperliquid_query_replica_commands", "outputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": {}, "properties": { "_app": { "description": "SQD Explorer identity and host-render state." }, "_coverage": { "description": "Window and result completeness." }, "_evidence": { "description": "Replayable arguments, digest, row count, and receipt." }, "_execution": { "description": "Bounded execution and scan details." }, "_freshness": { "description": "Freshness and finality." }, "_llm": { "description": "Hints to locate the primary evidence." }, "_meta": { "description": "Network, block range, timing, and row counts." }, "_notice": { "description": "Limitation or truncation notice.", "type": "string" }, "_notices": { "description": "Limitation or truncation notices.", "items": { "type": "string" }, "type": "array" }, "_ordering": { "description": "Ordering guarantees." }, "_pagination": { "description": "Pagination state and next_cursor." }, "_server": { "additionalProperties": false, "description": "SQD server name, exact version, and git commit.", "properties": { "commit": { "type": "string" }, "name": { "type": "string" }, "version": { "type": "string" } }, "required": [ "name", "version", "commit" ], "type": "object" }, "_summary": { "description": "Human-readable summary.", "type": "string" }, "_tool_contract": { "description": "Tool identity, intent, and chain families." }, "_ui": { "description": "Chart, table, and follow-up presentation metadata." }, "answer": { "description": "Answer grounded in the returned data.", "type": "string" }, "display": { "description": "Labels for presenting the result." }, "error": { "additionalProperties": {}, "description": "Structured failure details.", "properties": { "code": { "type": "string" }, "origin": { "type": "string" }, "retry_after_ms": { "type": "number" }, "retryable": { "type": "boolean" }, "suggestions": { "items": { "type": "string" }, "type": "array" }, "summary": { "type": "string" } }, "required": [ "code", "origin", "summary", "retryable", "suggestions" ], "type": "object" }, "investigation": { "description": "Evidence paths, pivots, and limitations." }, "items": { "description": "Primary rows for list results.", "items": {}, "type": "array" }, "next_steps": { "description": "Safe follow-up actions and continuation guidance." }, "pipes_handoff": { "description": "SQD Pipes guidance for custom data needs." }, "value": { "description": "Primary scalar result." } }, "type": "object" } }, { "description": "ADVANCED: Query raw block records directly for EVM, Solana, or Bitcoin.\n\nCOMMON USER ASKS:\n- Recent Base blocks\n\nWHEN TO USE:\n- You are debugging Portal coverage or block-level fields.\n- You need raw block records instead of transactions, logs, or summaries.\n\nDON'T USE:\n- You are answering a normal end-user question; prefer recent activity, time series, or raw transaction tools first.\n\nEXAMPLES:\n- Recent Base blocks: {\"network\":\"base-mainnet\",\"timeframe\":\"1h\",\"limit\":5}", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "cursor": { "description": "Continuation cursor from a previous response", "type": "string" }, "field_preset": { "default": "standard", "description": "Field preset for EVM datasets: 'minimal' (number+timestamp+gas), 'standard' (+hash+miner+size), 'full' (all block fields). Ignored for Solana/Bitcoin.", "enum": [ "minimal", "standard", "full" ], "type": "string" }, "finalized_only": { "default": false, "description": "Only query finalized blocks", "type": "boolean" }, "from_block": { "description": "Starting block number (use this OR timeframe)", "type": "number" }, "from_timestamp": { "anyOf": [ { "type": "number" }, { "type": "string" } ], "description": "Starting timestamp. Accepts Unix seconds, Unix milliseconds, ISO datetime, or relative input like \"1h ago\"." }, "include_l2_fields": { "default": false, "description": "Include L2-specific fields (auto-detected for L2 chains)", "type": "boolean" }, "limit": { "default": 20, "description": "Max blocks to return (default: 20). Note: Lower default for MCP to reduce context usage.", "type": "number" }, "network": { "description": "Network name or alias. Optional when continuing with cursor.", "type": "string" }, "timeframe": { "description": "Time range (e.g., '1h', '24h'). Alternative to from_block/to_block.", "type": "string" }, "to_block": { "description": "Ending block number", "type": "number" }, "to_timestamp": { "anyOf": [ { "type": "number" }, { "type": "string" } ], "description": "Ending timestamp. Accepts Unix seconds, Unix milliseconds, ISO datetime, or relative input like \"now\"." } }, "type": "object" }, "name": "portal_debug_query_blocks", "outputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": {}, "properties": { "_app": { "description": "SQD Explorer identity and host-render state." }, "_coverage": { "description": "Window and result completeness." }, "_evidence": { "description": "Replayable arguments, digest, row count, and receipt." }, "_execution": { "description": "Bounded execution and scan details." }, "_freshness": { "description": "Freshness and finality." }, "_llm": { "description": "Hints to locate the primary evidence." }, "_meta": { "description": "Network, block range, timing, and row counts." }, "_notice": { "description": "Limitation or truncation notice.", "type": "string" }, "_notices": { "description": "Limitation or truncation notices.", "items": { "type": "string" }, "type": "array" }, "_ordering": { "description": "Ordering guarantees." }, "_pagination": { "description": "Pagination state and next_cursor." }, "_server": { "additionalProperties": false, "description": "SQD server name, exact version, and git commit.", "properties": { "commit": { "type": "string" }, "name": { "type": "string" }, "version": { "type": "string" } }, "required": [ "name", "version", "commit" ], "type": "object" }, "_summary": { "description": "Human-readable summary.", "type": "string" }, "_tool_contract": { "description": "Tool identity, intent, and chain families." }, "_ui": { "description": "Chart, table, and follow-up presentation metadata." }, "answer": { "description": "Answer grounded in the returned data.", "type": "string" }, "display": { "description": "Labels for presenting the result." }, "error": { "additionalProperties": {}, "description": "Structured failure details.", "properties": { "code": { "type": "string" }, "origin": { "type": "string" }, "retry_after_ms": { "type": "number" }, "retryable": { "type": "boolean" }, "suggestions": { "items": { "type": "string" }, "type": "array" }, "summary": { "type": "string" } }, "required": [ "code", "origin", "summary", "retryable", "suggestions" ], "type": "object" }, "investigation": { "description": "Evidence paths, pivots, and limitations." }, "items": { "description": "Primary rows for list results.", "items": {}, "type": "array" }, "next_steps": { "description": "Safe follow-up actions and continuation guidance." }, "pipes_handoff": { "description": "SQD Pipes guidance for custom data needs." }, "value": { "description": "Primary scalar result." } }, "type": "object" } }, { "description": "ADVANCED: Resolve a timestamp to the nearest indexed block or slot.\n\nCOMMON USER ASKS:\n- Resolve one hour ago on Base\n- Resolve an older time on Polkadot\n\nWHEN TO USE:\n- You are debugging timestamp windows or building a manual block-range query.\n- You want to inspect exact versus estimated timestamp-to-block resolution.\n\nDON'T USE:\n- You just want to query by time; most public tools already accept natural timestamps directly.\n\nEXAMPLES:\n- Resolve one hour ago on Base: {\"network\":\"base-mainnet\",\"timestamp\":\"1h ago\"}\n- Resolve an older time on Polkadot: {\"network\":\"polkadot\",\"timestamp\":\"2026-04-08T12:00:00Z\"}", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "network": { "description": "Network name or alias", "type": "string" }, "timestamp": { "anyOf": [ { "type": "number" }, { "type": "string" } ], "description": "Unix seconds, Unix milliseconds, ISO datetime, or relative input like \"1h ago\"" } }, "required": [ "network", "timestamp" ], "type": "object" }, "name": "portal_debug_resolve_time_to_block", "outputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": {}, "properties": { "_app": { "description": "SQD Explorer identity and host-render state." }, "_coverage": { "description": "Window and result completeness." }, "_evidence": { "description": "Replayable arguments, digest, row count, and receipt." }, "_execution": { "description": "Bounded execution and scan details." }, "_freshness": { "description": "Freshness and finality." }, "_llm": { "description": "Hints to locate the primary evidence." }, "_meta": { "description": "Network, block range, timing, and row counts." }, "_notice": { "description": "Limitation or truncation notice.", "type": "string" }, "_notices": { "description": "Limitation or truncation notices.", "items": { "type": "string" }, "type": "array" }, "_ordering": { "description": "Ordering guarantees." }, "_pagination": { "description": "Pagination state and next_cursor." }, "_server": { "additionalProperties": false, "description": "SQD server name, exact version, and git commit.", "properties": { "commit": { "type": "string" }, "name": { "type": "string" }, "version": { "type": "string" } }, "required": [ "name", "version", "commit" ], "type": "object" }, "_summary": { "description": "Human-readable summary.", "type": "string" }, "_tool_contract": { "description": "Tool identity, intent, and chain families." }, "_ui": { "description": "Chart, table, and follow-up presentation metadata." }, "answer": { "description": "Answer grounded in the returned data.", "type": "string" }, "display": { "description": "Labels for presenting the result." }, "error": { "additionalProperties": {}, "description": "Structured failure details.", "properties": { "code": { "type": "string" }, "origin": { "type": "string" }, "retry_after_ms": { "type": "number" }, "retryable": { "type": "boolean" }, "suggestions": { "items": { "type": "string" }, "type": "array" }, "summary": { "type": "string" } }, "required": [ "code", "origin", "summary", "retryable", "suggestions" ], "type": "object" }, "investigation": { "description": "Evidence paths, pivots, and limitations." }, "items": { "description": "Primary rows for list results.", "items": {}, "type": "array" }, "next_steps": { "description": "Safe follow-up actions and continuation guidance." }, "pipes_handoff": { "description": "SQD Pipes guidance for custom data needs." }, "value": { "description": "Primary scalar result." } }, "type": "object" } }, { "description": "Get the big picture for network-wide EVM activity with ranked contracts and compact overview metrics.\n\nCOMMON USER ASKS:\n- Top contracts on Base\n\nFIRST CHOICE FOR:\n- the big picture for activity on an EVM network like Base or Optimism\n\nWHEN TO USE:\n- You want the big picture for activity on an EVM network.\n- You want the most active contracts on an EVM network.\n- You want an analytics-style network overview instead of a raw record list.\n\nDON'T USE:\n- You need chart buckets over time rather than ranked entities.\n\nEXAMPLES:\n- Top contracts on Base: {\"network\":\"base-mainnet\",\"timeframe\":\"1h\",\"limit\":10}", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "cursor": { "description": "Continuation cursor from a previous response", "type": "string" }, "from_timestamp": { "anyOf": [ { "type": "number" }, { "type": "string" } ], "description": "Starting timestamp. Accepts Unix seconds, Unix milliseconds, ISO datetime, or relative input like \"1h ago\"." }, "include_details": { "default": false, "description": "Include sample transaction hashes for each contract", "type": "boolean" }, "limit": { "default": 10, "description": "Number of top contracts to return (default: 10, max: 100)", "maximum": 100, "type": "number" }, "mode": { "default": "deep", "description": "Execution depth. Defaults to complete requested-window analysis; the optional fast value is only for explicitly bounded previews.", "enum": [ "fast", "deep" ], "type": "string" }, "network": { "description": "Network name (supports short names: 'ethereum', 'polygon', 'base', etc.). Optional when continuing with cursor.", "type": "string" }, "num_blocks": { "default": 50, "description": "Number of recent blocks to analyze when timeframe is omitted (default: 50, max: 10000)", "maximum": 10000, "type": "number" }, "timeframe": { "description": "Optional natural time window like '1h' or '24h'", "type": "string" }, "to_timestamp": { "anyOf": [ { "type": "number" }, { "type": "string" } ], "description": "Ending timestamp. Accepts Unix seconds, Unix milliseconds, ISO datetime, or relative input like \"now\"." } }, "type": "object" }, "name": "portal_evm_get_analytics", "outputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": {}, "properties": { "_app": { "description": "SQD Explorer identity and host-render state." }, "_coverage": { "description": "Window and result completeness." }, "_evidence": { "description": "Replayable arguments, digest, row count, and receipt." }, "_execution": { "description": "Bounded execution and scan details." }, "_freshness": { "description": "Freshness and finality." }, "_llm": { "description": "Hints to locate the primary evidence." }, "_meta": { "description": "Network, block range, timing, and row counts." }, "_notice": { "description": "Limitation or truncation notice.", "type": "string" }, "_notices": { "description": "Limitation or truncation notices.", "items": { "type": "string" }, "type": "array" }, "_ordering": { "description": "Ordering guarantees." }, "_pagination": { "description": "Pagination state and next_cursor." }, "_server": { "additionalProperties": false, "description": "SQD server name, exact version, and git commit.", "properties": { "commit": { "type": "string" }, "name": { "type": "string" }, "version": { "type": "string" } }, "required": [ "name", "version", "commit" ], "type": "object" }, "_summary": { "description": "Human-readable summary.", "type": "string" }, "_tool_contract": { "description": "Tool identity, intent, and chain families." }, "_ui": { "description": "Chart, table, and follow-up presentation metadata." }, "answer": { "description": "Answer grounded in the returned data.", "type": "string" }, "display": { "description": "Labels for presenting the result." }, "error": { "additionalProperties": {}, "description": "Structured failure details.", "properties": { "code": { "type": "string" }, "origin": { "type": "string" }, "retry_after_ms": { "type": "number" }, "retryable": { "type": "boolean" }, "suggestions": { "items": { "type": "string" }, "type": "array" }, "summary": { "type": "string" } }, "required": [ "code", "origin", "summary", "retryable", "suggestions" ], "type": "object" }, "investigation": { "description": "Evidence paths, pivots, and limitations." }, "items": { "description": "Primary rows for list results.", "items": {}, "type": "array" }, "next_steps": { "description": "Safe follow-up actions and continuation guidance." }, "pipes_handoff": { "description": "SQD Pipes guidance for custom data needs." }, "value": { "description": "Primary scalar result." } }, "type": "object" } }, { "description": "Summarize what one specific contract has been doing lately, including recent interactions, unique callers, and optional event activity.\n\nCOMMON USER ASKS:\n- Contract activity snapshot\n\nFIRST CHOICE FOR:\n- what one specific contract has been doing lately on an EVM network\n\nWHEN TO USE:\n- You want to ask \"what has this contract been doing?\" and get a contract-level answer.\n- You want a contract-centric activity summary instead of raw records.\n- You need top callers and interaction volume for one contract.\n\nDON'T USE:\n- You need the underlying raw logs or transactions.\n- You want general recent network activity without naming one contract.\n\nEXAMPLES:\n- Contract activity snapshot: {\"network\":\"base-mainnet\",\"contract_address\":\"0xabc...\",\"timeframe\":\"24h\"}", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "contract_address": { "description": "Contract address to analyze", "type": "string" }, "from_timestamp": { "anyOf": [ { "type": "string" }, { "type": "number" } ], "description": "Starting timestamp. Accepts Unix seconds, Unix milliseconds, ISO datetime, or relative input like \"1h ago\"." }, "include_events": { "default": true, "description": "Include event log summary", "type": "boolean" }, "mode": { "default": "deep", "description": "Execution depth. Defaults to complete requested-window analysis; the optional fast value is only for explicitly bounded previews.", "enum": [ "fast", "deep" ], "type": "string" }, "network": { "description": "Network name or alias", "type": "string" }, "timeframe": { "default": "1000", "description": "Analysis period as timeframe or block count. Examples: '1h', '24h', '7d', '3d', '1000'.", "type": "string" }, "to_timestamp": { "anyOf": [ { "type": "string" }, { "type": "number" } ], "description": "Ending timestamp. Accepts Unix seconds, Unix milliseconds, ISO datetime, or relative input like \"now\"." } }, "required": [ "network", "contract_address" ], "type": "object" }, "name": "portal_evm_get_contract_activity", "outputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": {}, "properties": { "_app": { "description": "SQD Explorer identity and host-render state." }, "_coverage": { "description": "Window and result completeness." }, "_evidence": { "description": "Replayable arguments, digest, row count, and receipt." }, "_execution": { "description": "Bounded execution and scan details." }, "_freshness": { "description": "Freshness and finality." }, "_llm": { "description": "Hints to locate the primary evidence." }, "_meta": { "description": "Network, block range, timing, and row counts." }, "_notice": { "description": "Limitation or truncation notice.", "type": "string" }, "_notices": { "description": "Limitation or truncation notices.", "items": { "type": "string" }, "type": "array" }, "_ordering": { "description": "Ordering guarantees." }, "_pagination": { "description": "Pagination state and next_cursor." }, "_server": { "additionalProperties": false, "description": "SQD server name, exact version, and git commit.", "properties": { "commit": { "type": "string" }, "name": { "type": "string" }, "version": { "type": "string" } }, "required": [ "name", "version", "commit" ], "type": "object" }, "_summary": { "description": "Human-readable summary.", "type": "string" }, "_tool_contract": { "description": "Tool identity, intent, and chain families." }, "_ui": { "description": "Chart, table, and follow-up presentation metadata." }, "answer": { "description": "Answer grounded in the returned data.", "type": "string" }, "display": { "description": "Labels for presenting the result." }, "error": { "additionalProperties": {}, "description": "Structured failure details.", "properties": { "code": { "type": "string" }, "origin": { "type": "string" }, "retry_after_ms": { "type": "number" }, "retryable": { "type": "boolean" }, "suggestions": { "items": { "type": "string" }, "type": "array" }, "summary": { "type": "string" } }, "required": [ "code", "origin", "summary", "retryable", "suggestions" ], "type": "object" }, "investigation": { "description": "Evidence paths, pivots, and limitations." }, "items": { "description": "Primary rows for list results.", "items": {}, "type": "array" }, "next_steps": { "description": "Safe follow-up actions and continuation guidance." }, "pipes_handoff": { "description": "SQD Pipes guidance for custom data needs." }, "value": { "description": "Primary scalar result." } }, "type": "object" } }, { "description": "Locate the create trace and parent transaction that deployed a specific EVM contract address within a bounded window.\n\nCOMMON USER ASKS:\n- Find BAYC deployment\n- Find recent deployment\n- Find deployment from known range\n\nFIRST CHOICE FOR:\n- who deployed this EVM contract\n- when was this contract deployed\n- what deployment transaction created this contract\n\nWHEN TO USE:\n- You need the deployer, deployment block, deployment timestamp, or deployment transaction for an EVM contract.\n- You can provide a starting block/time window, a contract address, or a supported well-known contract alias such as BAYC/Bored Apes.\n- You want a deployment lookup instead of general contract activity.\n\nDON'T USE:\n- You need all activity for a contract after deployment.\n- The contract is old and no block/time hint is available; provide from_block or from_timestamp first.\n\nEXAMPLES:\n- Find BAYC deployment: {\"network\":\"ethereum-mainnet\",\"contract\":\"bored apes\",\"from_block\":12000000,\"to_block\":13000000,\"scan_order\":\"earliest\"}\n- Find recent deployment: {\"network\":\"base-mainnet\",\"contract_address\":\"0xabc...\",\"search_depth_blocks\":100000}\n- Find deployment from known range: {\"network\":\"ethereum-mainnet\",\"contract_address\":\"0xabc...\",\"from_block\":17000000,\"to_block\":17100000,\"scan_order\":\"earliest\"}", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "contract": { "description": "Contract address or a supported well-known alias/name, e.g. \"bayc\" or \"bored apes\" on Ethereum.", "type": "string" }, "contract_address": { "description": "Contract address whose deployment transaction should be located.", "type": "string" }, "from_block": { "description": "Optional starting block. Provide this for older contracts when the deployment is not recent.", "type": "number" }, "from_timestamp": { "anyOf": [ { "type": "number" }, { "type": "string" } ], "description": "Starting timestamp. Accepts Unix seconds, Unix milliseconds, ISO datetime, or relative input like \"7d ago\"." }, "max_scan_blocks": { "description": "Safety cap for historical deployment scans. Default: scan the requested window up to 1,000,000 blocks.", "maximum": 1000000, "type": "number" }, "network": { "description": "EVM network name or alias, e.g. base, ethereum, arbitrum.", "type": "string" }, "scan_order": { "default": "latest", "description": "Scan latest first for recent deployments, or earliest first when you provide a historical from_block.", "enum": [ "latest", "earliest" ], "type": "string" }, "search_depth_blocks": { "default": 100000, "description": "When no explicit range is given, search this many recent blocks backward from the indexed head.", "maximum": 250000, "type": "number" }, "timeframe": { "description": "Optional recent time window to search, e.g. \"24h\" or \"7d\".", "type": "string" }, "to_block": { "description": "Optional ending block. Defaults to the indexed head.", "type": "number" }, "to_timestamp": { "anyOf": [ { "type": "number" }, { "type": "string" } ], "description": "Ending timestamp. Accepts Unix seconds, Unix milliseconds, ISO datetime, or relative input like \"now\"." } }, "required": [ "network" ], "type": "object" }, "name": "portal_evm_get_contract_deployment", "outputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": {}, "properties": { "_app": { "description": "SQD Explorer identity and host-render state." }, "_coverage": { "description": "Window and result completeness." }, "_evidence": { "description": "Replayable arguments, digest, row count, and receipt." }, "_execution": { "description": "Bounded execution and scan details." }, "_freshness": { "description": "Freshness and finality." }, "_llm": { "description": "Hints to locate the primary evidence." }, "_meta": { "description": "Network, block range, timing, and row counts." }, "_notice": { "description": "Limitation or truncation notice.", "type": "string" }, "_notices": { "description": "Limitation or truncation notices.", "items": { "type": "string" }, "type": "array" }, "_ordering": { "description": "Ordering guarantees." }, "_pagination": { "description": "Pagination state and next_cursor." }, "_server": { "additionalProperties": false, "description": "SQD server name, exact version, and git commit.", "properties": { "commit": { "type": "string" }, "name": { "type": "string" }, "version": { "type": "string" } }, "required": [ "name", "version", "commit" ], "type": "object" }, "_summary": { "description": "Human-readable summary.", "type": "string" }, "_tool_contract": { "description": "Tool identity, intent, and chain families." }, "_ui": { "description": "Chart, table, and follow-up presentation metadata." }, "answer": { "description": "Answer grounded in the returned data.", "type": "string" }, "display": { "description": "Labels for presenting the result." }, "error": { "additionalProperties": {}, "description": "Structured failure details.", "properties": { "code": { "type": "string" }, "origin": { "type": "string" }, "retry_after_ms": { "type": "number" }, "retryable": { "type": "boolean" }, "suggestions": { "items": { "type": "string" }, "type": "array" }, "summary": { "type": "string" } }, "required": [ "code", "origin", "summary", "retryable", "suggestions" ], "type": "object" }, "investigation": { "description": "Evidence paths, pivots, and limitations." }, "items": { "description": "Primary rows for list results.", "items": {}, "type": "array" }, "next_steps": { "description": "Safe follow-up actions and continuation guidance." }, "pipes_handoff": { "description": "SQD Pipes guidance for custom data needs." }, "value": { "description": "Primary scalar result." } }, "type": "object" } }, { "description": "Build chart-ready EVM OHLC candles plus a recent trade tape from supported DEX event sources, including Uniswap v2-style swaps, Uniswap v3/v4, and Aerodrome Slipstream.\n\nCOMMON USER ASKS:\n- Base Uniswap v2-style swap candles\n- Base Uniswap candles\n- Base Uniswap v4 candles\n\nWHEN TO USE:\n- You need OHLC candles for supported EVM event-derived price sources.\n- You want a candle chart and recent trades instead of scalar time-series buckets.\n- You want a Dexscreener-style pool chart with hover-ready candle metadata and a trade tape.\n\nDON'T USE:\n- You only need counts or scalar metrics over time.\n- You want a simple activity chart for a network rather than pool candles.\n\nEXAMPLES:\n- Base Uniswap v2-style swap candles: {\"network\":\"base-mainnet\",\"source\":\"uniswap_v2_swap\",\"pool_address\":\"0x<pool-address>\",\"duration\":\"1h\",\"interval\":\"5m\",\"price_in\":\"auto\",\"include_recent_trades\":true}\n- Base Uniswap candles: {\"network\":\"base-mainnet\",\"source\":\"uniswap_v3_swap\",\"pool_address\":\"0x<pool-address>\",\"duration\":\"1h\",\"interval\":\"5m\",\"price_in\":\"auto\"}\n- Base Uniswap v4 candles: {\"network\":\"base-mainnet\",\"source\":\"uniswap_v4_swap\",\"pool_id\":\"0x<pool-id>\",\"duration\":\"1h\",\"interval\":\"5m\",\"price_in\":\"auto\",\"include_recent_trades\":true}\n- Base Aerodrome Slipstream candles: {\"network\":\"base-mainnet\",\"source\":\"aerodrome_slipstream_swap\",\"pool_address\":\"0x<pool-address>\",\"duration\":\"1h\",\"interval\":\"5m\",\"price_in\":\"token1\"}", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "base_token": { "description": "Legacy orientation input. Prefer price_in instead.", "enum": [ "token0", "token1" ], "type": "string" }, "currency0_address": { "description": "Optional Uniswap v4 currency0 address. Use with currency1_address, fee, and tick_spacing to derive pool_id factually.", "type": "string" }, "currency1_address": { "description": "Optional Uniswap v4 currency1 address. Use with currency0_address, fee, and tick_spacing to derive pool_id factually.", "type": "string" }, "cursor": { "description": "Continuation cursor from a previous candle page", "type": "string" }, "duration": { "default": "1h", "description": "How much recent history to cover. Accepts compact durations like \"1h\" or natural phrases like \"past 30 minutes\".", "type": "string" }, "fee": { "description": "Optional Uniswap v4 LP fee in hundredths of a bip, e.g. 3000 for 0.30%.", "maximum": 9007199254740991, "minimum": -9007199254740991, "type": "integer" }, "hooks_address": { "description": "Optional Uniswap v4 hooks contract address. Defaults to the zero address when omitted.", "type": "string" }, "include_recent_trades": { "default": true, "description": "Include a recent trade tape for swap-derived sources when factual per-trade amounts are available.", "type": "boolean" }, "interval": { "default": "auto", "description": "Candle interval. auto uses chart-friendly defaults like 1h→5m and 24h→1h.", "enum": [ "auto", "1m", "5m", "15m", "30m", "1h", "4h", "6h", "1d" ], "type": "string" }, "mode": { "default": "deep", "description": "Execution depth. Defaults to complete requested-window analysis; the optional fast value is only for explicitly bounded previews.", "enum": [ "fast", "deep" ], "type": "string" }, "network": { "default": "base-mainnet", "description": "EVM network name (default: base-mainnet)", "type": "string" }, "pool_address": { "description": "Pool/pair contract address for address-keyed sources like Uniswap v3, Slipstream, or Sync-derived CPMM pools.", "type": "string" }, "pool_id": { "description": "Uniswap v4 pool id (bytes32). Optional when you provide the full v4 pool key instead.", "type": "string" }, "pool_manager_address": { "description": "Uniswap v4 PoolManager address. Optional on networks with a built-in official Uniswap deployment mapping.", "type": "string" }, "price_in": { "default": "auto", "description": "Choose which token the displayed price should be expressed in. auto picks the more human-readable quote side.", "enum": [ "auto", "token0", "token1" ], "type": "string" }, "recent_trades_limit": { "default": 5, "description": "Maximum number of recent trades to return in the trade tape.", "maximum": 50, "minimum": 1, "type": "integer" }, "source": { "default": "uniswap_v3_swap", "description": "Which event source to build candles from. Prefer swap-derived sources for factual trade prices and volumes. Uniswap v4 uses PoolManager Swap events filtered by pool_id, not a per-pool contract address.", "enum": [ "uniswap_v2_swap", "uniswap_v3_swap", "uniswap_v4_swap", "aerodrome_slipstream_swap", "uniswap_v2_sync" ], "type": "string" }, "tick_spacing": { "description": "Optional Uniswap v4 tick spacing. Required with the rest of the pool key when deriving pool_id.", "maximum": 9007199254740991, "minimum": -9007199254740991, "type": "integer" }, "token0_address": { "description": "Optional token0 address to infer known decimals", "type": "string" }, "token0_decimals": { "description": "Optional token0 decimals for human-readable prices", "type": "number" }, "token0_symbol": { "description": "Optional token0 symbol label for summaries", "type": "string" }, "token1_address": { "description": "Optional token1 address to infer known decimals", "type": "string" }, "token1_decimals": { "description": "Optional token1 decimals for human-readable prices", "type": "number" }, "token1_symbol": { "description": "Optional token1 symbol label for summaries", "type": "string" } }, "type": "object" }, "name": "portal_evm_get_ohlc", "outputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": {}, "properties": { "_app": { "description": "SQD Explorer identity and host-render state." }, "_coverage": { "description": "Window and result completeness." }, "_evidence": { "description": "Replayable arguments, digest, row count, and receipt." }, "_execution": { "description": "Bounded execution and scan details." }, "_freshness": { "description": "Freshness and finality." }, "_llm": { "description": "Hints to locate the primary evidence." }, "_meta": { "description": "Network, block range, timing, and row counts." }, "_notice": { "description": "Limitation or truncation notice.", "type": "string" }, "_notices": { "description": "Limitation or truncation notices.", "items": { "type": "string" }, "type": "array" }, "_ordering": { "description": "Ordering guarantees." }, "_pagination": { "description": "Pagination state and next_cursor." }, "_server": { "additionalProperties": false, "description": "SQD server name, exact version, and git commit.", "properties": { "commit": { "type": "string" }, "name": { "type": "string" }, "version": { "type": "string" } }, "required": [ "name", "version", "commit" ], "type": "object" }, "_summary": { "description": "Human-readable summary.", "type": "string" }, "_tool_contract": { "description": "Tool identity, intent, and chain families." }, "_ui": { "description": "Chart, table, and follow-up presentation metadata." }, "answer": { "description": "Answer grounded in the returned data.", "type": "string" }, "display": { "description": "Labels for presenting the result." }, "error": { "additionalProperties": {}, "description": "Structured failure details.", "properties": { "code": { "type": "string" }, "origin": { "type": "string" }, "retry_after_ms": { "type": "number" }, "retryable": { "type": "boolean" }, "suggestions": { "items": { "type": "string" }, "type": "array" }, "summary": { "type": "string" } }, "required": [ "code", "origin", "summary", "retryable", "suggestions" ], "type": "object" }, "investigation": { "description": "Evidence paths, pivots, and limitations." }, "items": { "description": "Primary rows for list results.", "items": {}, "type": "array" }, "next_steps": { "description": "Safe follow-up actions and continuation guidance." }, "pipes_handoff": { "description": "SQD Pipes guidance for custom data needs." }, "value": { "description": "Primary scalar result." } }, "type": "object" } }, { "description": "Query raw EVM logs with address/topic filters, common event aliases, earliest/latest scanning, and optional inline decoding.\n\nCOMMON USER ASKS:\n- Recent USDC Transfer logs\n- First recent USDC Transfer log\n- Latest ERC721/pass mint ID and tx hash\n\nFIRST CHOICE FOR:\n- NFT or ERC721 mint lookups such as latest pass minted, token ID, and mint transaction hash\n- contract event questions where the user needs exact event evidence rather than wallet or transaction summaries\n\nWHEN TO USE:\n- You need event logs filtered by contract or topic signature.\n- You want decoded log hints while still keeping the raw log shape available.\n- You want the first or last matching event in a bounded block/time window.\n- You want common event names such as transfer, approval, swap, mint, or burn instead of remembering topic0 hashes.\n- You need the latest ERC721/pass mint in a bounded deployment/recent window: filter Transfer events with topic1 as the zero address, use scan_order=latest, limit=1, and decode=true to expose decoded_log.decoded.token_id plus transaction_hash.\n\nDON'T USE:\n- You only want token transfers, which are easier with the token-transfer tool.\n\nEXAMPLES:\n- Recent USDC Transfer logs: {\"network\":\"base-mainnet\",\"timeframe\":\"1h\",\"token_symbols\":[\"USDC\"],\"event\":\"transfer\",\"limit\":20}\n- First recent USDC Transfer log: {\"network\":\"base-mainnet\",\"timeframe\":\"1h\",\"token_symbols\":[\"USDC\"],\"event\":\"transfer\",\"scan_order\":\"earliest\",\"limit\":1}\n- Latest ERC721/pass mint ID and tx hash: {\"network\":\"base-mainnet\",\"from_block\":46020000,\"to_block\":46100000,\"addresses\":[\"0xE4E70FdF2Fc1147a7f35c4c5de88E6BeA63eeAfA\"],\"event\":\"transfer\",\"topic1\":[\"0x0000000000000000000000000000000000000000000000000000000000000000\"],\"scan_order\":\"latest\",\"decode\":true,\"include_transaction\":true,\"limit\":1}\n- Decode logs inline: {\"network\":\"ethereum-mainnet\",\"timeframe\":\"1h\",\"topic0\":[\"0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef\"],\"decode\":true,\"limit\":10}", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "addresses": { "description": "Contract addresses to filter (e.g., ['0xUSDC...', '0xDAI...']). IMPORTANT: Always include this or topics for fast queries.", "items": { "type": "string" }, "type": "array" }, "cursor": { "description": "Continuation cursor from a previous response", "type": "string" }, "decode": { "default": false, "description": "Decode known log signatures inline when topics/data are available", "type": "boolean" }, "event": { "anyOf": [ { "type": "string" }, { "items": { "type": "string" }, "type": "array" } ], "description": "Common event alias or topic0 hash. Examples: \"transfer\", \"approval\", \"swap\", \"sync\", \"deposit\", \"withdrawal\". Merges with topic0." }, "field_preset": { "default": "standard", "description": "Field preset: 'minimal' (address+topic0+block, ~80% smaller), 'standard' (all topics+timestamp), 'full' (includes raw data hex, largest). Use 'minimal' to reduce context usage.", "enum": [ "minimal", "standard", "full" ], "type": "string" }, "finalized_only": { "default": false, "description": "Only query finalized blocks", "type": "boolean" }, "from_block": { "description": "Starting block number (use this OR timeframe)", "type": "number" }, "from_timestamp": { "anyOf": [ { "type": "number" }, { "type": "string" } ], "description": "Starting timestamp. Accepts Unix seconds, Unix milliseconds, ISO datetime, or relative input like \"1h ago\"." }, "include_transaction": { "default": false, "description": "Include parent transaction data", "type": "boolean" }, "include_transaction_logs": { "default": false, "description": "Include all logs from parent transactions", "type": "boolean" }, "include_transaction_traces": { "default": false, "description": "Include traces for parent transactions", "type": "boolean" }, "limit": { "default": 20, "description": "Max logs to return (default: 20, max: 25). This verified ceiling keeps pages within MCP client budgets.", "maximum": 25, "minimum": 1, "type": "integer" }, "max_scan_blocks": { "description": "Maximum blocks to inspect for bounded earliest/latest scans. Sparse latest searches default to 25,000 blocks to stay within MCP request timeouts; raise only when deeper coverage is worth the added latency.", "maximum": 250000, "minimum": 1, "type": "integer" }, "max_token_symbol_matches": { "default": 5, "description": "Maximum token-list matches to include per token symbol. Use addresses for deterministic single-contract filters.", "maximum": 20, "minimum": 1, "type": "number" }, "network": { "description": "Network name or alias. Optional when continuing with cursor.", "type": "string" }, "response_format": { "description": "Response format: defaults to 'compact' for chat-friendly output, or stays 'full' when inline transaction context is requested. Use 'summary' for counting or categorizing.", "enum": [ "full", "compact", "summary" ], "type": "string" }, "scan_order": { "default": "latest", "description": "Which side of the block window to scan first. Use earliest for first-event questions.", "enum": [ "latest", "earliest" ], "type": "string" }, "timeframe": { "description": "Natural time range such as '5m', '1h', '24h', '7d', or 'past 30 minutes'. Alternative to from_block/to_block.", "type": "string" }, "to_block": { "description": "Ending block number. RECOMMENDED: <10k blocks for fast (<1s) responses. Larger ranges may be slow or timeout.", "type": "number" }, "to_timestamp": { "anyOf": [ { "type": "number" }, { "type": "string" } ], "description": "Ending timestamp. Accepts Unix seconds, Unix milliseconds, ISO datetime, or relative input like \"now\"." }, "token_symbols": { "description": "Token symbols to resolve via open token-list data and merge into addresses, e.g. [\"USDC\"].", "items": { "type": "string" }, "type": "array" }, "topic0": { "description": "Event signatures (topic0). E.g., Transfer = 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef", "items": { "type": "string" }, "type": "array" }, "topic1": { "description": "Topic1 filter (often: from address in Transfer, indexed parameter 1)", "items": { "type": "string" }, "type": "array" }, "topic2": { "description": "Topic2 filter (often: to address in Transfer, indexed parameter 2)", "items": { "type": "string" }, "type": "array" }, "topic3": { "description": "Topic3 filter (indexed parameter 3, chain-specific)", "items": { "type": "string" }, "type": "array" } }, "type": "object" }, "name": "portal_evm_query_logs", "outputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": {}, "properties": { "_app": { "description": "SQD Explorer identity and host-render state." }, "_coverage": { "description": "Window and result completeness." }, "_evidence": { "description": "Replayable arguments, digest, row count, and receipt." }, "_execution": { "description": "Bounded execution and scan details." }, "_freshness": { "description": "Freshness and finality." }, "_llm": { "description": "Hints to locate the primary evidence." }, "_meta": { "description": "Network, block range, timing, and row counts." }, "_notice": { "description": "Limitation or truncation notice.", "type": "string" }, "_notices": { "description": "Limitation or truncation notices.", "items": { "type": "string" }, "type": "array" }, "_ordering": { "description": "Ordering guarantees." }, "_pagination": { "description": "Pagination state and next_cursor." }, "_server": { "additionalProperties": false, "description": "SQD server name, exact version, and git commit.", "properties": { "commit": { "type": "string" }, "name": { "type": "string" }, "version": { "type": "string" } }, "required": [ "name", "version", "commit" ], "type": "object" }, "_summary": { "description": "Human-readable summary.", "type": "string" }, "_tool_contract": { "description": "Tool identity, intent, and chain families." }, "_ui": { "description": "Chart, table, and follow-up presentation metadata." }, "answer": { "description": "Answer grounded in the returned data.", "type": "string" }, "display": { "description": "Labels for presenting the result." }, "error": { "additionalProperties": {}, "description": "Structured failure details.", "properties": { "code": { "type": "string" }, "origin": { "type": "string" }, "retry_after_ms": { "type": "number" }, "retryable": { "type": "boolean" }, "suggestions": { "items": { "type": "string" }, "type": "array" }, "summary": { "type": "string" } }, "required": [ "code", "origin", "summary", "retryable", "suggestions" ], "type": "object" }, "investigation": { "description": "Evidence paths, pivots, and limitations." }, "items": { "description": "Primary rows for list results.", "items": {}, "type": "array" }, "next_steps": { "description": "Safe follow-up actions and continuation guidance." }, "pipes_handoff": { "description": "SQD Pipes guidance for custom data needs." }, "value": { "description": "Primary scalar result." } }, "type": "object" } }, { "description": "Query token-transfer activity on EVM without needing to remember Transfer event signatures. Best for \"did token X move?\" and asset-tracing questions.\n\nCOMMON USER ASKS:\n- Recent USDC transfers\n- First recent USDC transfer\n\nWHEN TO USE:\n- You want ERC-20 style transfer activity filtered by token, sender, or recipient.\n- You want the fastest answer to a token movement question like \"did USDC move?\".\n- You are tracing suspicious, stolen, bridged, or exploit-related token movement and need sender/recipient/transaction pivots.\n- You want the easiest raw transfer query on an EVM network.\n- You need the first matching transfer in a bounded window without typing the Transfer topic hash.\n\nDON'T USE:\n- You need arbitrary event logs beyond token transfers.\n\nEXAMPLES:\n- Recent USDC transfers: {\"network\":\"base-mainnet\",\"timeframe\":\"1h\",\"token_symbols\":[\"USDC\"],\"limit\":20}\n- First recent USDC transfer: {\"network\":\"base-mainnet\",\"timeframe\":\"1h\",\"token_symbols\":[\"USDC\"],\"scan_order\":\"earliest\",\"limit\":1}", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "cursor": { "description": "Continuation cursor from a previous response", "type": "string" }, "from_addresses": { "description": "Sender addresses", "items": { "type": "string" }, "type": "array" }, "from_block": { "description": "Starting block number", "type": "number" }, "from_timestamp": { "anyOf": [ { "type": "number" }, { "type": "string" } ], "description": "Starting timestamp. Accepts Unix seconds, Unix milliseconds, ISO datetime, or relative input like \"1h ago\"." }, "include_token_info": { "default": false, "description": "Include token metadata (symbol, decimals) inline. Avoids separate token metadata lookups.", "type": "boolean" }, "limit": { "default": 50, "description": "Max transfers", "type": "number" }, "max_token_symbol_matches": { "default": 5, "description": "Maximum token-list matches to include per token symbol. Use token_addresses for deterministic single-contract filters.", "maximum": 20, "minimum": 1, "type": "number" }, "network": { "description": "Network name or alias. Optional when continuing with cursor.", "type": "string" }, "scan_order": { "default": "latest", "description": "Which side of the block window to scan first. Use earliest for first-transfer questions.", "enum": [ "latest", "earliest" ], "type": "string" }, "timeframe": { "description": "Time range (e.g., '1h', '24h'). Alternative to block numbers.", "type": "string" }, "to_addresses": { "description": "Recipient addresses", "items": { "type": "string" }, "type": "array" }, "to_block": { "description": "Ending block number. RECOMMENDED: <10k blocks for fast responses.", "type": "number" }, "to_timestamp": { "anyOf": [ { "type": "number" }, { "type": "string" } ], "description": "Ending timestamp. Accepts Unix seconds, Unix milliseconds, ISO datetime, or relative input like \"now\"." }, "token_addresses": { "description": "Token contract addresses", "items": { "type": "string" }, "type": "array" }, "token_symbols": { "description": "Token symbols to resolve via open token-list data, e.g. [\"USDC\"]. Merges with token_addresses.", "items": { "type": "string" }, "type": "array" } }, "type": "object" }, "name": "portal_evm_query_token_transfers", "outputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": {}, "properties": { "_app": { "description": "SQD Explorer identity and host-render state." }, "_coverage": { "description": "Window and result completeness." }, "_evidence": { "description": "Replayable arguments, digest, row count, and receipt." }, "_execution": { "description": "Bounded execution and scan details." }, "_freshness": { "description": "Freshness and finality." }, "_llm": { "description": "Hints to locate the primary evidence." }, "_meta": { "description": "Network, block range, timing, and row counts." }, "_notice": { "description": "Limitation or truncation notice.", "type": "string" }, "_notices": { "description": "Limitation or truncation notices.", "items": { "type": "string" }, "type": "array" }, "_ordering": { "description": "Ordering guarantees." }, "_pagination": { "description": "Pagination state and next_cursor." }, "_server": { "additionalProperties": false, "description": "SQD server name, exact version, and git commit.", "properties": { "commit": { "type": "string" }, "name": { "type": "string" }, "version": { "type": "string" } }, "required": [ "name", "version", "commit" ], "type": "object" }, "_summary": { "description": "Human-readable summary.", "type": "string" }, "_tool_contract": { "description": "Tool identity, intent, and chain families." }, "_ui": { "description": "Chart, table, and follow-up presentation metadata." }, "answer": { "description": "Answer grounded in the returned data.", "type": "string" }, "display": { "description": "Labels for presenting the result." }, "error": { "additionalProperties": {}, "description": "Structured failure details.", "properties": { "code": { "type": "string" }, "origin": { "type": "string" }, "retry_after_ms": { "type": "number" }, "retryable": { "type": "boolean" }, "suggestions": { "items": { "type": "string" }, "type": "array" }, "summary": { "type": "string" } }, "required": [ "code", "origin", "summary", "retryable", "suggestions" ], "type": "object" }, "investigation": { "description": "Evidence paths, pivots, and limitations." }, "items": { "description": "Primary rows for list results.", "items": {}, "type": "array" }, "next_steps": { "description": "Safe follow-up actions and continuation guidance." }, "pipes_handoff": { "description": "SQD Pipes guidance for custom data needs." }, "value": { "description": "Primary scalar result." } }, "type": "object" } }, { "description": "Query raw EVM traces: internal calls, contract creations, self-destructs, and block rewards, filtered by caller, callee, method, deployer, or one transaction, with the parent transaction hash on every row.\n\nCOMMON USER ASKS:\n- Internal calls of one transaction\n- Recent internal calls into a contract\n- Contracts deployed by an address\n\nFIRST CHOICE FOR:\n- what a transaction called internally, including value moved by internal calls\n- contracts deployed by an address, or the internal call tree behind an incident\n\nWHEN TO USE:\n- You need the internal calls of a transaction: which contracts it called, with what selector and value, and which calls failed.\n- You want contracts created by a deployer or the creation trace of a contract.\n- You are tracing an exploit or incident below the top-level transaction and log surface.\n- You want internal ETH transfers between contracts that emit no event.\n\nDON'T USE:\n- You only need top-level transactions or event logs; those tools are cheaper.\n- You need storage changes; state diffs are not exposed by this tool.\n\nEXAMPLES:\n- Internal calls of one transaction: {\"network\":\"ethereum-mainnet\",\"from_block\":12244145,\"to_block\":12244145,\"transaction_hash\":\"0x851bad0415758075a1eb86776749c829b866d43179c57c3e4a4b9359a0358231\",\"limit\":25}\n- Recent internal calls into a contract: {\"network\":\"base-mainnet\",\"timeframe\":\"10m\",\"type\":[\"call\"],\"call_to\":[\"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913\"],\"method\":\"transfer\",\"limit\":20}\n- Contracts deployed by an address: {\"network\":\"base-mainnet\",\"timeframe\":\"24h\",\"type\":[\"create\"],\"create_from\":[\"0x4200000000000000000000000000000000000006\"],\"limit\":10}", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "call_from": { "description": "FILTER (call traces): calling addresses, contracts or wallets.", "items": { "type": "string" }, "type": "array" }, "call_sighash": { "description": "FILTER (call traces): 4-byte selectors such as 0xa9059cbb.", "items": { "type": "string" }, "type": "array" }, "call_to": { "description": "FILTER (call traces): called addresses.", "items": { "type": "string" }, "type": "array" }, "create_from": { "description": "FILTER (create traces): deployer addresses.", "items": { "type": "string" }, "type": "array" }, "create_result_address": { "description": "FILTER (create traces): deployed contract addresses.", "items": { "type": "string" }, "type": "array" }, "cursor": { "description": "Continuation cursor from a previous response", "type": "string" }, "field_preset": { "default": "standard", "description": "Field preset: 'minimal' (type, from, to), 'standard' (value, selector, gas, result address), 'full' (adds call input and output and creation code).", "enum": [ "minimal", "standard", "full" ], "type": "string" }, "finalized_only": { "default": false, "description": "Only query finalized blocks", "type": "boolean" }, "from_block": { "description": "Starting block number (use this OR timeframe)", "type": "number" }, "from_timestamp": { "anyOf": [ { "type": "number" }, { "type": "string" } ], "description": "Starting timestamp. Accepts Unix seconds, Unix milliseconds, ISO datetime, or relative input like \"1h ago\"." }, "include_subtraces": { "default": false, "description": "Also return the child traces of each matching trace", "type": "boolean" }, "include_transaction": { "default": false, "description": "Attach the parent transaction (sender, recipient, value, status). The hash is always attached.", "type": "boolean" }, "limit": { "default": 20, "description": "Max traces to return (default: 20, max: 25)", "maximum": 25, "minimum": 1, "type": "integer" }, "max_scan_blocks": { "description": "Safety cap for bounded scans. Default: 5,000 blocks with filters, 100 without.", "maximum": 50000, "minimum": 1, "type": "integer" }, "method": { "anyOf": [ { "type": "string" }, { "items": { "type": "string" }, "type": "array" } ], "description": "FILTER (call traces): method alias such as transfer, approve, deposit, or a 4-byte selector. Merges with call_sighash." }, "network": { "description": "Network name or alias. Optional when continuing with cursor.", "type": "string" }, "response_format": { "description": "Response format: defaults to 'compact' for chat-friendly output. Use 'summary' for counts by type, failures, value moved, and top callers.", "enum": [ "full", "compact", "summary" ], "type": "string" }, "scan_order": { "default": "latest", "description": "Which side of the block window to scan first. Use earliest for first-occurrence questions.", "enum": [ "earliest", "latest" ], "type": "string" }, "timeframe": { "description": "Time range (e.g., '10m', '1h'). Alternative to from_block/to_block. Keep it short for traces.", "type": "string" }, "to_block": { "description": "Ending block number. Traces are expensive: keep filtered windows under 5,000 blocks.", "type": "number" }, "to_timestamp": { "anyOf": [ { "type": "number" }, { "type": "string" } ], "description": "Ending timestamp. Accepts Unix seconds, Unix milliseconds, ISO datetime, or relative input like \"now\"." }, "transaction_hash": { "description": "FILTER: keep only traces of this transaction. Give its block (from_block = to_block) or a window of at most 1,000 blocks; find the block with portal_evm_query_transactions first when unknown.", "type": "string" }, "type": { "description": "FILTER: trace types. 'create' covers both CREATE and CREATE2; 'reward' only exists on proof-of-work history.", "items": { "enum": [ "call", "create", "suicide", "reward" ], "type": "string" }, "type": "array" } }, "type": "object" }, "name": "portal_evm_query_traces", "outputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": {}, "properties": { "_app": { "description": "SQD Explorer identity and host-render state." }, "_coverage": { "description": "Window and result completeness." }, "_evidence": { "description": "Replayable arguments, digest, row count, and receipt." }, "_execution": { "description": "Bounded execution and scan details." }, "_freshness": { "description": "Freshness and finality." }, "_llm": { "description": "Hints to locate the primary evidence." }, "_meta": { "description": "Network, block range, timing, and row counts." }, "_notice": { "description": "Limitation or truncation notice.", "type": "string" }, "_notices": { "description": "Limitation or truncation notices.", "items": { "type": "string" }, "type": "array" }, "_ordering": { "description": "Ordering guarantees." }, "_pagination": { "description": "Pagination state and next_cursor." }, "_server": { "additionalProperties": false, "description": "SQD server name, exact version, and git commit.", "properties": { "commit": { "type": "string" }, "name": { "type": "string" }, "version": { "type": "string" } }, "required": [ "name", "version", "commit" ], "type": "object" }, "_summary": { "description": "Human-readable summary.", "type": "string" }, "_tool_contract": { "description": "Tool identity, intent, and chain families." }, "_ui": { "description": "Chart, table, and follow-up presentation metadata." }, "answer": { "description": "Answer grounded in the returned data.", "type": "string" }, "display": { "description": "Labels for presenting the result." }, "error": { "additionalProperties": {}, "description": "Structured failure details.", "properties": { "code": { "type": "string" }, "origin": { "type": "string" }, "retry_after_ms": { "type": "number" }, "retryable": { "type": "boolean" }, "suggestions": { "items": { "type": "string" }, "type": "array" }, "summary": { "type": "string" } }, "required": [ "code", "origin", "summary", "retryable", "suggestions" ], "type": "object" }, "investigation": { "description": "Evidence paths, pivots, and limitations." }, "items": { "description": "Primary rows for list results.", "items": {}, "type": "array" }, "next_steps": { "description": "Safe follow-up actions and continuation guidance." }, "pipes_handoff": { "description": "SQD Pipes guidance for custom data needs." }, "value": { "description": "Primary scalar result." } }, "type": "object" } }, { "description": "Query raw EVM transactions with optional logs, traces, state-diff context, and evidence pivots for transaction-level investigations.\n\nCOMMON USER ASKS:\n- Recent Base transactions\n- Filter by sender\n- First EIP-2930 transaction from Berlin fork\n\nWHEN TO USE:\n- You need raw transaction records on an EVM network.\n- You want chain-specific transaction fields or include flags that convenience tools do not expose.\n- You need exact transaction evidence for an investigation, including sender, receiver, transaction hash, logs, traces, or failed calls.\n- You need to find the first transaction matching a raw field condition such as transaction type 0x1 from a known block.\n- You need top-N raw transactions ranked by value, gas used, or effective gas price.\n- You need top senders or receivers from a bounded transaction window.\n- You want common method names such as transfer, approve, deposit, or withdraw instead of remembering sighashes.\n- You want calls to a token contract by symbol, such as transfer calls to USDC, without hardcoding token addresses.\n\nDON'T USE:\n- You only need a quick recent feed or wallet-level summary.\n\nEXAMPLES:\n- Recent Base transactions: {\"network\":\"base-mainnet\",\"timeframe\":\"1h\",\"limit\":20}\n- Filter by sender: {\"network\":\"ethereum-mainnet\",\"timeframe\":\"6h\",\"from_addresses\":[\"0xabc...\"],\"limit\":20}\n- First EIP-2930 transaction from Berlin fork: {\"network\":\"ethereum-mainnet\",\"from_block\":12244000,\"transaction_type\":\"0x1\",\"scan_order\":\"earliest\",\"limit\":1,\"field_preset\":\"minimal\"}\n- Largest recent calls to a resolved token contract: {\"network\":\"base-mainnet\",\"timeframe\":\"1h\",\"to_token_symbols\":[\"USDC\"],\"method\":\"transfer\",\"order_by\":\"gas_used_desc\",\"limit\":5}\n- Top senders by transaction count: {\"network\":\"base-mainnet\",\"timeframe\":\"1h\",\"aggregate_by\":\"sender\",\"aggregate_metric\":\"count\",\"limit\":10}", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "aggregate_by": { "description": "Optional bounded aggregation for top sender/receiver questions. Returns ranked address rows instead of raw transactions.", "enum": [ "sender", "receiver" ], "type": "string" }, "aggregate_metric": { "default": "count", "description": "Metric used with aggregate_by. count ranks by tx count; value by total native value; gas_used by total gas used; effective_gas_price by max effective gas price.", "enum": [ "count", "value", "gas_used", "effective_gas_price" ], "type": "string" }, "contract_creation": { "description": "FILTER: true returns contract-creation transactions; false excludes them. Useful for \"first contract creation from this wallet\".", "type": "boolean" }, "cursor": { "description": "Continuation cursor from a previous response", "type": "string" }, "field_preset": { "default": "standard", "description": "Field preset: 'minimal' (from/to/value+block, ~70% smaller), 'standard' (hash+gas+timestamp), 'full' (includes input data hex, largest). Use 'minimal' to reduce context usage.", "enum": [ "minimal", "standard", "full" ], "type": "string" }, "finalized_only": { "default": false, "description": "Only query finalized blocks", "type": "boolean" }, "first_nonce": { "description": "Minimum nonce", "type": "number" }, "from_addresses": { "description": "FILTER: Sender addresses (wallets or contracts that initiated the transaction). Optional if limit <=100.", "items": { "type": "string" }, "type": "array" }, "from_block": { "description": "Starting block number (use this OR timeframe). Large ranges OK with low limit (<=100).", "type": "number" }, "from_timestamp": { "anyOf": [ { "type": "number" }, { "type": "string" } ], "description": "Starting timestamp. Accepts Unix seconds, Unix milliseconds, ISO datetime, or relative input like \"1h ago\"." }, "from_token_symbols": { "description": "Resolve token symbols via open token-list data and merge them into from_addresses. Rare, but useful for token-contract-originated transactions.", "items": { "type": "string" }, "type": "array" }, "include_l2_fields": { "default": false, "description": "Include L2-specific fields", "type": "boolean" }, "include_logs": { "default": false, "description": "Include logs emitted by transactions", "type": "boolean" }, "include_state_diffs": { "default": false, "description": "Include state diffs caused by transactions", "type": "boolean" }, "include_traces": { "default": false, "description": "Include traces for transactions", "type": "boolean" }, "last_nonce": { "description": "Maximum nonce", "type": "number" }, "limit": { "default": 20, "description": "Max transactions (default: 20, max: 25). This verified ceiling keeps pages within MCP client budgets.", "maximum": 25, "minimum": 1, "type": "integer" }, "max_scan_blocks": { "description": "Safety cap for first/last/ranked client-side scans. Default: min(window, 10000 blocks).", "maximum": 50000, "type": "number" }, "max_token_symbol_matches": { "default": 5, "description": "Maximum token-list matches to include per token symbol. Use from_addresses/to_addresses for deterministic single-contract filters.", "maximum": 20, "minimum": 1, "type": "number" }, "method": { "anyOf": [ { "type": "string" }, { "items": { "type": "string" }, "type": "array" } ], "description": "FILTER: Common EVM method alias or 4-byte sighash. Examples: \"transfer\", \"approve\", \"transferFrom\", \"deposit\", \"withdraw\". Merges with sighash." }, "min_effective_gas_price_wei": { "anyOf": [ { "type": "string" }, { "type": "number" } ], "description": "FILTER/RANKING: Minimum effectiveGasPrice in wei. Accepts decimal or hex string." }, "min_gas_used": { "anyOf": [ { "type": "string" }, { "type": "number" } ], "description": "FILTER/RANKING: Minimum receipt gasUsed. Accepts decimal or hex string." }, "min_value_wei": { "anyOf": [ { "type": "string" }, { "type": "number" } ], "description": "FILTER/RANKING: Minimum native token value in wei. Accepts decimal or hex string." }, "network": { "description": "Network name or alias. Optional when continuing with cursor.", "type": "string" }, "order_by": { "default": "chronological", "description": "Optional ranking for top-N questions. Use value_desc, gas_used_desc, or effective_gas_price_desc.", "enum": [ "chronological", "value_desc", "gas_used_desc", "effective_gas_price_desc" ], "type": "string" }, "response_format": { "description": "Response format: defaults to 'compact' for chat-friendly output, or stays 'full' when inline logs, traces, or state diffs are requested. Use 'summary' for counting or profiling.", "enum": [ "full", "compact", "summary" ], "type": "string" }, "scan_order": { "description": "Which side of the block window to scan first. Normal previews default to latest; transaction_type searches default to earliest, so \"first tx type 0x1 from block N\" scans forward from from_block.", "enum": [ "latest", "earliest" ], "type": "string" }, "sighash": { "description": "FILTER: Function sighash (4-byte hex, e.g., '0xa9059cbb' for transfer). Optional if limit <=100.", "items": { "type": "string" }, "type": "array" }, "timeframe": { "description": "Natural time range such as '5m', '1h', '24h', '7d', or 'past 30 minutes'. Alternative to from_block/to_block. Large ranges are allowed with a low limit (<=100).", "type": "string" }, "to_addresses": { "description": "FILTER: Recipient addresses (typically contracts being called, or wallets receiving ETH). Optional if limit <=100.", "items": { "type": "string" }, "type": "array" }, "to_block": { "description": "Ending block number. RECOMMENDED: <5k blocks for fast (<500ms) responses. Larger ranges may be slow.", "type": "number" }, "to_timestamp": { "anyOf": [ { "type": "number" }, { "type": "string" } ], "description": "Ending timestamp. Accepts Unix seconds, Unix milliseconds, ISO datetime, or relative input like \"now\"." }, "to_token_symbols": { "description": "Resolve token symbols via open token-list data and merge them into to_addresses, e.g. transfer/approve calls to USDC.", "items": { "type": "string" }, "type": "array" }, "transaction_status": { "anyOf": [ { "enum": [ "success", "failed", "succeeded", "reverted" ], "type": "string" }, { "type": "number" }, { "type": "string" } ], "description": "FILTER: Transaction receipt status. Use \"success\"/1 or \"failed\"/0 for failed/reverted transaction searches." }, "transaction_type": { "anyOf": [ { "type": "number" }, { "type": "string" } ], "description": "FILTER: EVM transaction type. Accepts decimal or hex strings such as 0, 1, 2, \"0x0\", \"0x1\", \"0x2\". Applied client-side while streaming Portal results; use with scan_order=\"earliest\" and from_block to find the first typed transaction." } }, "type": "object" }, "name": "portal_evm_query_transactions", "outputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": {}, "properties": { "_app": { "description": "SQD Explorer identity and host-render state." }, "_coverage": { "description": "Window and result completeness." }, "_evidence": { "description": "Replayable arguments, digest, row count, and receipt." }, "_execution": { "description": "Bounded execution and scan details." }, "_freshness": { "description": "Freshness and finality." }, "_llm": { "description": "Hints to locate the primary evidence." }, "_meta": { "description": "Network, block range, timing, and row counts." }, "_notice": { "description": "Limitation or truncation notice.", "type": "string" }, "_notices": { "description": "Limitation or truncation notices.", "items": { "type": "string" }, "type": "array" }, "_ordering": { "description": "Ordering guarantees." }, "_pagination": { "description": "Pagination state and next_cursor." }, "_server": { "additionalProperties": false, "description": "SQD server name, exact version, and git commit.", "properties": { "commit": { "type": "string" }, "name": { "type": "string" }, "version": { "type": "string" } }, "required": [ "name", "version", "commit" ], "type": "object" }, "_summary": { "description": "Human-readable summary.", "type": "string" }, "_tool_contract": { "description": "Tool identity, intent, and chain families." }, "_ui": { "description": "Chart, table, and follow-up presentation metadata." }, "answer": { "description": "Answer grounded in the returned data.", "type": "string" }, "display": { "description": "Labels for presenting the result." }, "error": { "additionalProperties": {}, "description": "Structured failure details.", "properties": { "code": { "type": "string" }, "origin": { "type": "string" }, "retry_after_ms": { "type": "number" }, "retryable": { "type": "boolean" }, "suggestions": { "items": { "type": "string" }, "type": "array" }, "summary": { "type": "string" } }, "required": [ "code", "origin", "summary", "retryable", "suggestions" ], "type": "object" }, "investigation": { "description": "Evidence paths, pivots, and limitations." }, "items": { "description": "Primary rows for list results.", "items": {}, "type": "array" }, "next_steps": { "description": "Safe follow-up actions and continuation guidance." }, "pipes_handoff": { "description": "SQD Pipes guidance for custom data needs." }, "value": { "description": "Primary scalar result." } }, "type": "object" } }, { "description": "Get just the latest indexed head block or slot for a network.\n\nCOMMON USER ASKS:\n- Latest head\n- Finalized head\n\nFIRST CHOICE FOR:\n- getting the current indexed head before building a manual block range\n\nWHEN TO USE:\n- You only need the current block or slot number.\n- You need the current head before building a raw block-range query.\n\nDON'T USE:\n- You want to know if the network is caught up, behind, fresh, or what tables are available.\n\nEXAMPLES:\n- Latest head: {\"network\":\"base-mainnet\"}\n- Finalized head: {\"network\":\"ethereum-mainnet\",\"type\":\"finalized\"}", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "network": { "description": "Network name or alias", "type": "string" }, "type": { "default": "latest", "description": "Block type", "enum": [ "latest", "finalized" ], "type": "string" } }, "required": [ "network" ], "type": "object" }, "name": "portal_get_head", "outputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": {}, "properties": { "_app": { "description": "SQD Explorer identity and host-render state." }, "_coverage": { "description": "Window and result completeness." }, "_evidence": { "description": "Replayable arguments, digest, row count, and receipt." }, "_execution": { "description": "Bounded execution and scan details." }, "_freshness": { "description": "Freshness and finality." }, "_llm": { "description": "Hints to locate the primary evidence." }, "_meta": { "description": "Network, block range, timing, and row counts." }, "_notice": { "description": "Limitation or truncation notice.", "type": "string" }, "_notices": { "description": "Limitation or truncation notices.", "items": { "type": "string" }, "type": "array" }, "_ordering": { "description": "Ordering guarantees." }, "_pagination": { "description": "Pagination state and next_cursor." }, "_server": { "additionalProperties": false, "description": "SQD server name, exact version, and git commit.", "properties": { "commit": { "type": "string" }, "name": { "type": "string" }, "version": { "type": "string" } }, "required": [ "name", "version", "commit" ], "type": "object" }, "_summary": { "description": "Human-readable summary.", "type": "string" }, "_tool_contract": { "description": "Tool identity, intent, and chain families." }, "_ui": { "description": "Chart, table, and follow-up presentation metadata." }, "answer": { "description": "Answer grounded in the returned data.", "type": "string" }, "display": { "description": "Labels for presenting the result." }, "error": { "additionalProperties": {}, "description": "Structured failure details.", "properties": { "code": { "type": "string" }, "origin": { "type": "string" }, "retry_after_ms": { "type": "number" }, "retryable": { "type": "boolean" }, "suggestions": { "items": { "type": "string" }, "type": "array" }, "summary": { "type": "string" } }, "required": [ "code", "origin", "summary", "retryable", "suggestions" ], "type": "object" }, "investigation": { "description": "Evidence paths, pivots, and limitations." }, "items": { "description": "Primary rows for list results.", "items": {}, "type": "array" }, "next_steps": { "description": "Safe follow-up actions and continuation guidance." }, "pipes_handoff": { "description": "SQD Pipes guidance for custom data needs." }, "value": { "description": "Primary scalar result." } }, "type": "object" } }, { "description": "Answer \"is this network caught up?\" with indexing freshness, lag, heads, and available tables.\n\nCOMMON USER ASKS:\n- Is Base caught up?\n\nFIRST CHOICE FOR:\n- checking indexing head, lag, tables, and capabilities for one network\n\nWHEN TO USE:\n- You want to know whether a network is indexed, fresh, caught up, or behind before querying.\n- You need chain family, real-time status, or available tables for a network.\n\nDON'T USE:\n- You only need the latest block or slot number.\n\nEXAMPLES:\n- Is Base caught up?: {\"network\":\"base-mainnet\"}", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "network": { "description": "Network name or alias", "type": "string" } }, "required": [ "network" ], "type": "object" }, "name": "portal_get_network_info", "outputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": {}, "properties": { "_app": { "description": "SQD Explorer identity and host-render state." }, "_coverage": { "description": "Window and result completeness." }, "_evidence": { "description": "Replayable arguments, digest, row count, and receipt." }, "_execution": { "description": "Bounded execution and scan details." }, "_freshness": { "description": "Freshness and finality." }, "_llm": { "description": "Hints to locate the primary evidence." }, "_meta": { "description": "Network, block range, timing, and row counts." }, "_notice": { "description": "Limitation or truncation notice.", "type": "string" }, "_notices": { "description": "Limitation or truncation notices.", "items": { "type": "string" }, "type": "array" }, "_ordering": { "description": "Ordering guarantees." }, "_pagination": { "description": "Pagination state and next_cursor." }, "_server": { "additionalProperties": false, "description": "SQD server name, exact version, and git commit.", "properties": { "commit": { "type": "string" }, "name": { "type": "string" }, "version": { "type": "string" } }, "required": [ "name", "version", "commit" ], "type": "object" }, "_summary": { "description": "Human-readable summary.", "type": "string" }, "_tool_contract": { "description": "Tool identity, intent, and chain families." }, "_ui": { "description": "Chart, table, and follow-up presentation metadata." }, "answer": { "description": "Answer grounded in the returned data.", "type": "string" }, "display": { "description": "Labels for presenting the result." }, "error": { "additionalProperties": {}, "description": "Structured failure details.", "properties": { "code": { "type": "string" }, "origin": { "type": "string" }, "retry_after_ms": { "type": "number" }, "retryable": { "type": "boolean" }, "suggestions": { "items": { "type": "string" }, "type": "array" }, "summary": { "type": "string" } }, "required": [ "code", "origin", "summary", "retryable", "suggestions" ], "type": "object" }, "investigation": { "description": "Evidence paths, pivots, and limitations." }, "items": { "description": "Primary rows for list results.", "items": {}, "type": "array" }, "next_steps": { "description": "Safe follow-up actions and continuation guidance." }, "pipes_handoff": { "description": "SQD Pipes guidance for custom data needs." }, "value": { "description": "Primary scalar result." } }, "type": "object" } }, { "description": "Get a simple recent-activity feed across EVM, Solana, Bitcoin, or Hyperliquid with chronological paging and investigation pivots.\n\nCOMMON USER ASKS:\n- Recent activity on Base\n- Recent Hyperliquid fills\n\nFIRST CHOICE FOR:\n- recent activity on any supported network without manual block math\n- questions like \"what has been happening on Base lately?\"\n- first-pass incident triage when the user asks what happened recently on a network\n\nWHEN TO USE:\n- You want a quick recent-activity feed for a network.\n- You want to ask what has been happening lately on a network and see the newest activity first.\n- You want the simplest starting point before reaching for raw VM-specific query tools.\n- You are investigating an incident and need a bounded, recent evidence timeline before narrowing to wallets, transfers, logs, or fills.\n\nDON'T USE:\n- You need raw logs, instructions, or chain-specific fields that only raw query tools return.\n- You want a chart over time rather than a recent feed.\n\nEXAMPLES:\n- Recent activity on Base: {\"network\":\"base-mainnet\",\"timeframe\":\"1h\",\"limit\":10}\n- Recent Hyperliquid fills: {\"network\":\"hyperliquid-fills\",\"timeframe\":\"1h\",\"limit\":10}", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "cursor": { "description": "Continuation cursor from a previous response", "type": "string" }, "from_addresses": { "description": "Filter by sender addresses", "items": { "type": "string" }, "type": "array" }, "from_timestamp": { "anyOf": [ { "type": "number" }, { "type": "string" } ], "description": "Starting timestamp. Accepts Unix seconds, Unix milliseconds, ISO datetime, or relative input like \"1h ago\"." }, "limit": { "default": 10, "description": "Max activity rows to return (default: 10, max: 25)", "maximum": 25, "minimum": 1, "type": "integer" }, "network": { "description": "Network name (supports short names: 'polygon', 'base', 'ethereum', 'arbitrum', etc.). Optional when continuing with cursor.", "type": "string" }, "timeframe": { "default": "100", "description": "Time period or block count. Examples: '100' (default), '1h', '6h', '24h', '7d', '3d'.", "type": "string" }, "to_addresses": { "description": "Filter by recipient addresses", "items": { "type": "string" }, "type": "array" }, "to_timestamp": { "anyOf": [ { "type": "number" }, { "type": "string" } ], "description": "Ending timestamp. Accepts Unix seconds, Unix milliseconds, ISO datetime, or relative input like \"now\"." } }, "type": "object" }, "name": "portal_get_recent_activity", "outputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": {}, "properties": { "_app": { "description": "SQD Explorer identity and host-render state." }, "_coverage": { "description": "Window and result completeness." }, "_evidence": { "description": "Replayable arguments, digest, row count, and receipt." }, "_execution": { "description": "Bounded execution and scan details." }, "_freshness": { "description": "Freshness and finality." }, "_llm": { "description": "Hints to locate the primary evidence." }, "_meta": { "description": "Network, block range, timing, and row counts." }, "_notice": { "description": "Limitation or truncation notice.", "type": "string" }, "_notices": { "description": "Limitation or truncation notices.", "items": { "type": "string" }, "type": "array" }, "_ordering": { "description": "Ordering guarantees." }, "_pagination": { "description": "Pagination state and next_cursor." }, "_server": { "additionalProperties": false, "description": "SQD server name, exact version, and git commit.", "properties": { "commit": { "type": "string" }, "name": { "type": "string" }, "version": { "type": "string" } }, "required": [ "name", "version", "commit" ], "type": "object" }, "_summary": { "description": "Human-readable summary.", "type": "string" }, "_tool_contract": { "description": "Tool identity, intent, and chain families." }, "_ui": { "description": "Chart, table, and follow-up presentation metadata." }, "answer": { "description": "Answer grounded in the returned data.", "type": "string" }, "display": { "description": "Labels for presenting the result." }, "error": { "additionalProperties": {}, "description": "Structured failure details.", "properties": { "code": { "type": "string" }, "origin": { "type": "string" }, "retry_after_ms": { "type": "number" }, "retryable": { "type": "boolean" }, "suggestions": { "items": { "type": "string" }, "type": "array" }, "summary": { "type": "string" } }, "required": [ "code", "origin", "summary", "retryable", "suggestions" ], "type": "object" }, "investigation": { "description": "Evidence paths, pivots, and limitations." }, "items": { "description": "Primary rows for list results.", "items": {}, "type": "array" }, "next_steps": { "description": "Safe follow-up actions and continuation guidance." }, "pipes_handoff": { "description": "SQD Pipes guidance for custom data needs." }, "value": { "description": "Primary scalar result." } }, "type": "object" } }, { "description": "Build simple activity charts and other time-series views across supported VMs, including compare-previous windows and grouped EVM contract trends.\n\nCOMMON USER ASKS:\n- Base transactions per 15m bucket\n- Compare two periods\n\nFIRST CHOICE FOR:\n- activity over time, compare-current-vs-previous, grouped trends, and simple activity charts\n\nWHEN TO USE:\n- You want chart-ready metric buckets over time.\n- You want a simple activity chart for a network, defaulting to a 6h interactive window unless a longer window is explicitly requested.\n- You want to compare the current period to the previous period.\n\nDON'T USE:\n- You need raw record lists instead of aggregated buckets.\n- You need DEX pool candles or OHLC output.\n\nEXAMPLES:\n- Base transactions per 15m bucket: {\"network\":\"base-mainnet\",\"metric\":\"transaction_count\",\"duration\":\"6h\",\"interval\":\"15m\"}\n- Compare two periods: {\"network\":\"solana-mainnet\",\"metric\":\"transaction_count\",\"duration\":\"1h\",\"interval\":\"5m\",\"compare_previous\":true}", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "address": { "description": "Optional: Filter to specific contract address for contract-specific trends", "type": "string" }, "compare_previous": { "default": false, "description": "Compare the selected window against the immediately previous window", "type": "boolean" }, "duration": { "default": "6h", "description": "Total time period to analyze. Defaults to \"6h\" for interactive use. The bound is in blocks, not time: this tool reads every block in the window and stops at 12,000, so \"24h\" is fine on Bitcoin or Ethereum and refused on a 2-second chain like Base (43,200 blocks). A window over the bound is refused at once and the error names a duration that fits. Accepts compact durations like \"30m\" or natural phrases like \"past 30 minutes\".", "type": "string" }, "from_timestamp": { "anyOf": [ { "type": "number" }, { "type": "string" } ], "description": "Starting timestamp. Accepts Unix seconds, Unix milliseconds, ISO datetime, or relative input like \"24h ago\"." }, "group_by": { "default": "none", "description": "Optional grouping mode. contract is currently supported only for EVM transaction_count", "enum": [ "none", "contract" ], "type": "string" }, "group_limit": { "default": 5, "description": "Maximum number of contract groups when group_by=contract", "type": "number" }, "interval": { "description": "Time bucket interval (5m, 15m, 1h, 6h, 1d)", "enum": [ "5m", "15m", "1h", "6h", "1d" ], "type": "string" }, "metric": { "description": "Metric to aggregate over time. Per chain family: evm: transaction_count, transactions_per_block, avg_gas_price, gas_used, block_utilization, unique_addresses; solana: transaction_count, unique_addresses, tps, avg_fee, success_rate, slots_per_hour; bitcoin: transaction_count, unique_addresses, fees_btc, block_size_bytes; hyperliquid: volume, fill_count, unique_traders. Others are refused.", "enum": [ "transaction_count", "transactions_per_block", "avg_gas_price", "gas_used", "block_utilization", "unique_addresses", "tps", "avg_fee", "success_rate", "slots_per_hour", "fees_btc", "block_size_bytes", "volume", "fill_count", "unique_traders" ], "type": "string" }, "mode": { "default": "deep", "description": "Execution depth. Defaults to complete requested-window analysis; the optional fast value is only for explicitly bounded previews.", "enum": [ "fast", "deep" ], "type": "string" }, "network": { "description": "Network name (supports short names: 'ethereum', 'polygon', 'base', etc.)", "type": "string" }, "to_timestamp": { "anyOf": [ { "type": "number" }, { "type": "string" } ], "description": "Ending timestamp. Accepts Unix seconds, Unix milliseconds, ISO datetime, or relative input like \"now\"." } }, "required": [ "network", "metric", "interval" ], "type": "object" }, "name": "portal_get_time_series", "outputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": {}, "properties": { "_app": { "description": "SQD Explorer identity and host-render state." }, "_coverage": { "description": "Window and result completeness." }, "_evidence": { "description": "Replayable arguments, digest, row count, and receipt." }, "_execution": { "description": "Bounded execution and scan details." }, "_freshness": { "description": "Freshness and finality." }, "_llm": { "description": "Hints to locate the primary evidence." }, "_meta": { "description": "Network, block range, timing, and row counts." }, "_notice": { "description": "Limitation or truncation notice.", "type": "string" }, "_notices": { "description": "Limitation or truncation notices.", "items": { "type": "string" }, "type": "array" }, "_ordering": { "description": "Ordering guarantees." }, "_pagination": { "description": "Pagination state and next_cursor." }, "_server": { "additionalProperties": false, "description": "SQD server name, exact version, and git commit.", "properties": { "commit": { "type": "string" }, "name": { "type": "string" }, "version": { "type": "string" } }, "required": [ "name", "version", "commit" ], "type": "object" }, "_summary": { "description": "Human-readable summary.", "type": "string" }, "_tool_contract": { "description": "Tool identity, intent, and chain families." }, "_ui": { "description": "Chart, table, and follow-up presentation metadata." }, "answer": { "description": "Answer grounded in the returned data.", "type": "string" }, "display": { "description": "Labels for presenting the result." }, "error": { "additionalProperties": {}, "description": "Structured failure details.", "properties": { "code": { "type": "string" }, "origin": { "type": "string" }, "retry_after_ms": { "type": "number" }, "retryable": { "type": "boolean" }, "suggestions": { "items": { "type": "string" }, "type": "array" }, "summary": { "type": "string" } }, "required": [ "code", "origin", "summary", "retryable", "suggestions" ], "type": "object" }, "investigation": { "description": "Evidence paths, pivots, and limitations." }, "items": { "description": "Primary rows for list results.", "items": {}, "type": "array" }, "next_steps": { "description": "Safe follow-up actions and continuation guidance." }, "pipes_handoff": { "description": "SQD Pipes guidance for custom data needs." }, "value": { "description": "Primary scalar result." } }, "type": "object" } }, { "description": "Summarize wallet activity and fund flow with shared overview, asset movement, counterparties, evidence pivots, and follow-up filters across supported networks.\n\nCOMMON USER ASKS:\n- EVM wallet fund-flow triage\n- Solana wallet activity and fee flow\n\nFIRST CHOICE FOR:\n- one-call wallet analysis across supported VMs\n- suspicious wallet triage, fund-flow direction, counterparties, and next evidence pivots before drilling into raw records\n\nWHEN TO USE:\n- You want a single high-level answer about what one wallet has been doing and where value appears to move.\n- You want inbound/outbound flow, activity and asset-movement counterparties, largest movements within each asset, and exact next pivots before drilling into raw transactions or fills.\n- The user asks to investigate a suspicious wallet, stolen-funds path, exploit counterparty, or incident address.\n\nDON'T USE:\n- You need every raw record with full chain-specific fields and no summarization.\n\nEXAMPLES:\n- EVM wallet fund-flow triage: {\"network\":\"base-mainnet\",\"address\":\"0xabc...\",\"timeframe\":\"24h\"}\n- Solana wallet activity and fee flow: {\"network\":\"solana-mainnet\",\"address\":\"Vote111...\",\"timeframe\":\"6h\"}", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "address": { "description": "Wallet address to analyze. Optional when continuing with cursor.", "type": "string" }, "cursor": { "description": "Continuation cursor from a previous response", "type": "string" }, "from_timestamp": { "anyOf": [ { "type": "string" }, { "type": "number" } ], "description": "Starting timestamp. Accepts Unix seconds, Unix milliseconds, ISO datetime, or relative input like \"1h ago\"." }, "include_nfts": { "default": false, "description": "Include NFT transfers (ERC721/1155)", "type": "boolean" }, "include_tokens": { "default": true, "description": "Include ERC20 token transfers", "type": "boolean" }, "limit_per_type": { "default": 5, "description": "Requested items per category (default: 5). Values up to the retained compatibility maximum of 10 are accepted, while each category is safely capped at 4 rows and remains cursorable.", "maximum": 10, "minimum": 1, "type": "integer" }, "mode": { "default": "deep", "description": "Execution depth. Defaults to complete requested-window analysis; the optional fast value is only for explicitly bounded previews.", "enum": [ "fast", "deep" ], "type": "string" }, "network": { "description": "Network name or alias. Optional when continuing with cursor.", "type": "string" }, "response_format": { "description": "Response format: defaults to 'compact' for a readable wallet investigation. Use 'summary' for headline flow only or 'full' for all returned activity rows.", "enum": [ "full", "compact", "summary" ], "type": "string" }, "timeframe": { "default": "1000", "description": "Look-back period as timeframe or block count. Examples: '1h', '24h', '7d', '3d', '1000'.", "type": "string" }, "to_timestamp": { "anyOf": [ { "type": "string" }, { "type": "number" } ], "description": "Ending timestamp. Accepts Unix seconds, Unix milliseconds, ISO datetime, or relative input like \"now\"." } }, "type": "object" }, "name": "portal_get_wallet_summary", "outputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": {}, "properties": { "_app": { "description": "SQD Explorer identity and host-render state." }, "_coverage": { "description": "Window and result completeness." }, "_evidence": { "description": "Replayable arguments, digest, row count, and receipt." }, "_execution": { "description": "Bounded execution and scan details." }, "_freshness": { "description": "Freshness and finality." }, "_llm": { "description": "Hints to locate the primary evidence." }, "_meta": { "description": "Network, block range, timing, and row counts." }, "_notice": { "description": "Limitation or truncation notice.", "type": "string" }, "_notices": { "description": "Limitation or truncation notices.", "items": { "type": "string" }, "type": "array" }, "_ordering": { "description": "Ordering guarantees." }, "_pagination": { "description": "Pagination state and next_cursor." }, "_server": { "additionalProperties": false, "description": "SQD server name, exact version, and git commit.", "properties": { "commit": { "type": "string" }, "name": { "type": "string" }, "version": { "type": "string" } }, "required": [ "name", "version", "commit" ], "type": "object" }, "_summary": { "description": "Human-readable summary.", "type": "string" }, "_tool_contract": { "description": "Tool identity, intent, and chain families." }, "_ui": { "description": "Chart, table, and follow-up presentation metadata." }, "answer": { "description": "Answer grounded in the returned data.", "type": "string" }, "display": { "description": "Labels for presenting the result." }, "error": { "additionalProperties": {}, "description": "Structured failure details.", "properties": { "code": { "type": "string" }, "origin": { "type": "string" }, "retry_after_ms": { "type": "number" }, "retryable": { "type": "boolean" }, "suggestions": { "items": { "type": "string" }, "type": "array" }, "summary": { "type": "string" } }, "required": [ "code", "origin", "summary", "retryable", "suggestions" ], "type": "object" }, "investigation": { "description": "Evidence paths, pivots, and limitations." }, "items": { "description": "Primary rows for list results.", "items": {}, "type": "array" }, "next_steps": { "description": "Safe follow-up actions and continuation guidance." }, "pipes_handoff": { "description": "SQD Pipes guidance for custom data needs." }, "value": { "description": "Primary scalar result." } }, "type": "object" } }, { "description": "Get the big-picture Hyperliquid fill analytics with top traders, volume by coin, fees, and PnL.\n\nCOMMON USER ASKS:\n- Hyperliquid fill snapshot\n- Who traded the most?\n\nWHEN TO USE:\n- You want network-level Hyperliquid fill analytics.\n- You want to know who traded the most, which coins had volume, or how fees and PnL looked.\n- You want grouped aggregate sections without stitching raw fills together yourself.\n\nDON'T USE:\n- You need individual fill records or OHLC candles.\n\nEXAMPLES:\n- Hyperliquid fill snapshot: {\"network\":\"hyperliquid-fills\",\"timeframe\":\"1h\"}\n- Who traded the most?: {\"network\":\"hyperliquid-fills\",\"timeframe\":\"1h\"}", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "coin": { "description": "Filter by asset symbols (e.g., [\"BTC\", \"ETH\"])", "items": { "type": "string" }, "type": "array" }, "cursor": { "description": "Continuation cursor for ranked analytics sections", "type": "string" }, "from_timestamp": { "anyOf": [ { "type": "string" }, { "type": "number" } ], "description": "Starting timestamp. Accepts Unix seconds, Unix milliseconds, ISO datetime, or relative input like \"6h ago\"." }, "mode": { "default": "deep", "description": "Execution depth. Defaults to complete requested-window analysis; the optional fast value is only for explicitly bounded previews.", "enum": [ "fast", "deep" ], "type": "string" }, "network": { "default": "hyperliquid-fills", "description": "Network name (default: 'hyperliquid-fills')", "type": "string" }, "response_format": { "default": "compact", "description": "Response format: 'summary' (smallest snapshot), 'compact' (chat-sized ranked sections, default), 'full' (complete analytics).", "enum": [ "full", "compact", "summary" ], "type": "string" }, "section_limit": { "default": 6, "description": "Per-section page size for ranked sections. Default: 6", "type": "number" }, "timeframe": { "default": "1h", "description": "Time range: '1h', '6h', '24h'. Default: '1h'", "type": "string" }, "to_timestamp": { "anyOf": [ { "type": "string" }, { "type": "number" } ], "description": "Ending timestamp. Accepts Unix seconds, Unix milliseconds, ISO datetime, or relative input like \"now\"." } }, "type": "object" }, "name": "portal_hyperliquid_get_analytics", "outputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": {}, "properties": { "_app": { "description": "SQD Explorer identity and host-render state." }, "_coverage": { "description": "Window and result completeness." }, "_evidence": { "description": "Replayable arguments, digest, row count, and receipt." }, "_execution": { "description": "Bounded execution and scan details." }, "_freshness": { "description": "Freshness and finality." }, "_llm": { "description": "Hints to locate the primary evidence." }, "_meta": { "description": "Network, block range, timing, and row counts." }, "_notice": { "description": "Limitation or truncation notice.", "type": "string" }, "_notices": { "description": "Limitation or truncation notices.", "items": { "type": "string" }, "type": "array" }, "_ordering": { "description": "Ordering guarantees." }, "_pagination": { "description": "Pagination state and next_cursor." }, "_server": { "additionalProperties": false, "description": "SQD server name, exact version, and git commit.", "properties": { "commit": { "type": "string" }, "name": { "type": "string" }, "version": { "type": "string" } }, "required": [ "name", "version", "commit" ], "type": "object" }, "_summary": { "description": "Human-readable summary.", "type": "string" }, "_tool_contract": { "description": "Tool identity, intent, and chain families." }, "_ui": { "description": "Chart, table, and follow-up presentation metadata." }, "answer": { "description": "Answer grounded in the returned data.", "type": "string" }, "display": { "description": "Labels for presenting the result." }, "error": { "additionalProperties": {}, "description": "Structured failure details.", "properties": { "code": { "type": "string" }, "origin": { "type": "string" }, "retry_after_ms": { "type": "number" }, "retryable": { "type": "boolean" }, "suggestions": { "items": { "type": "string" }, "type": "array" }, "summary": { "type": "string" } }, "required": [ "code", "origin", "summary", "retryable", "suggestions" ], "type": "object" }, "investigation": { "description": "Evidence paths, pivots, and limitations." }, "items": { "description": "Primary rows for list results.", "items": {}, "type": "array" }, "next_steps": { "description": "Safe follow-up actions and continuation guidance." }, "pipes_handoff": { "description": "SQD Pipes guidance for custom data needs." }, "value": { "description": "Primary scalar result." } }, "type": "object" } }, { "description": "Build chart-ready Hyperliquid trade OHLC candles with fixed buckets and auto intervals.\n\nCOMMON USER ASKS:\n- BTC candles\n\nWHEN TO USE:\n- You want candles for one coin on Hyperliquid.\n- You need chart-ready OHLC, volume, and VWAP data from fills.\n\nDON'T USE:\n- You want scalar time-series buckets or raw fills.\n\nEXAMPLES:\n- BTC candles: {\"network\":\"hyperliquid-fills\",\"coin\":\"BTC\",\"duration\":\"6h\",\"interval\":\"auto\"}", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "coin": { "description": "Asset symbol to build candles for (for example: \"BTC\", \"ETH\", \"SOL\"). Optional when continuing with cursor.", "type": "string" }, "cursor": { "description": "Continuation cursor from a previous candle page", "type": "string" }, "duration": { "description": "How much recent trading history to cover when exact timestamps are omitted. Defaults to \"1h\". Accepts compact durations like \"1h\" or natural phrases like \"past 30 minutes\".", "type": "string" }, "from_timestamp": { "anyOf": [ { "type": "number" }, { "type": "string" } ], "description": "Exact candle-window start. Use together with to_timestamp. Accepts Unix seconds, Unix milliseconds, ISO datetime, or relative input." }, "interval": { "default": "auto", "description": "Candle interval. Use auto for chart-friendly defaults: 1h→5m, 6h→15m, 12h→30m, 24h→1h.", "enum": [ "auto", "1m", "5m", "15m", "30m", "1h", "4h", "6h", "1d" ], "type": "string" }, "network": { "default": "hyperliquid-fills", "description": "Network name (default: 'hyperliquid-fills')", "type": "string" }, "to_timestamp": { "anyOf": [ { "type": "number" }, { "type": "string" } ], "description": "Exact inclusive candle-window end. Use together with from_timestamp. Accepts Unix seconds, Unix milliseconds, ISO datetime, or relative input." }, "user": { "description": "Optional trader wallet address (0x-prefixed, lowercase)", "type": "string" } }, "type": "object" }, "name": "portal_hyperliquid_get_ohlc", "outputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": {}, "properties": { "_app": { "description": "SQD Explorer identity and host-render state." }, "_coverage": { "description": "Window and result completeness." }, "_evidence": { "description": "Replayable arguments, digest, row count, and receipt." }, "_execution": { "description": "Bounded execution and scan details." }, "_freshness": { "description": "Freshness and finality." }, "_llm": { "description": "Hints to locate the primary evidence." }, "_meta": { "description": "Network, block range, timing, and row counts." }, "_notice": { "description": "Limitation or truncation notice.", "type": "string" }, "_notices": { "description": "Limitation or truncation notices.", "items": { "type": "string" }, "type": "array" }, "_ordering": { "description": "Ordering guarantees." }, "_pagination": { "description": "Pagination state and next_cursor." }, "_server": { "additionalProperties": false, "description": "SQD server name, exact version, and git commit.", "properties": { "commit": { "type": "string" }, "name": { "type": "string" }, "version": { "type": "string" } }, "required": [ "name", "version", "commit" ], "type": "object" }, "_summary": { "description": "Human-readable summary.", "type": "string" }, "_tool_contract": { "description": "Tool identity, intent, and chain families." }, "_ui": { "description": "Chart, table, and follow-up presentation metadata." }, "answer": { "description": "Answer grounded in the returned data.", "type": "string" }, "display": { "description": "Labels for presenting the result." }, "error": { "additionalProperties": {}, "description": "Structured failure details.", "properties": { "code": { "type": "string" }, "origin": { "type": "string" }, "retry_after_ms": { "type": "number" }, "retryable": { "type": "boolean" }, "suggestions": { "items": { "type": "string" }, "type": "array" }, "summary": { "type": "string" } }, "required": [ "code", "origin", "summary", "retryable", "suggestions" ], "type": "object" }, "investigation": { "description": "Evidence paths, pivots, and limitations." }, "items": { "description": "Primary rows for list results.", "items": {}, "type": "array" }, "next_steps": { "description": "Safe follow-up actions and continuation guidance." }, "pipes_handoff": { "description": "SQD Pipes guidance for custom data needs." }, "value": { "description": "Primary scalar result." } }, "type": "object" } }, { "description": "Query raw individual Hyperliquid fills with trader, coin, fee, PnL, and builder context.\n\nCOMMON USER ASKS:\n- Recent BTC fills\n\nWHEN TO USE:\n- You need raw fill records on Hyperliquid.\n- You want to filter by trader, coin, direction, builder, or fee token.\n\nDON'T USE:\n- You want the big picture, top traders, grouped aggregates, or candles instead of raw fill rows.\n\nEXAMPLES:\n- Recent BTC fills: {\"network\":\"hyperliquid-fills\",\"timeframe\":\"1h\",\"coin\":[\"BTC\"],\"limit\":20}", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "builder": { "description": "Builder addresses (0x-prefixed, lowercase)", "items": { "type": "string" }, "type": "array" }, "cloid": { "description": "Client order IDs (0x-prefixed hex)", "items": { "type": "string" }, "type": "array" }, "coin": { "description": "Asset symbols (e.g., \"ETH\", \"BTC\", \"SOL\")", "items": { "type": "string" }, "type": "array" }, "cursor": { "description": "Continuation cursor from a previous response", "type": "string" }, "dir": { "description": "Trade direction: \"Open Long\", \"Close Long\", \"Open Short\", \"Close Short\"", "items": { "type": "string" }, "type": "array" }, "fee_token": { "description": "Fee token symbols", "items": { "type": "string" }, "type": "array" }, "finalized_only": { "default": false, "description": "Only query finalized blocks", "type": "boolean" }, "from_block": { "description": "Starting block number (use this OR timeframe)", "type": "number" }, "from_timestamp": { "anyOf": [ { "type": "number" }, { "type": "string" } ], "description": "Starting timestamp. Accepts Unix seconds, Unix milliseconds, ISO datetime, or relative input like \"1h ago\"." }, "include_builder_info": { "default": false, "description": "Include builder and builderFee fields", "type": "boolean" }, "include_pnl": { "default": true, "description": "Include closedPnl and startPosition fields", "type": "boolean" }, "limit": { "default": 20, "description": "Requested fills per page (default: 20). Values up to the retained compatibility maximum of 200 are accepted, while each response is safely capped at 25 rows and remains cursorable.", "maximum": 200, "minimum": 1, "type": "integer" }, "network": { "default": "hyperliquid-fills", "description": "Network name (default: 'hyperliquid-fills'). Optional when continuing with cursor.", "type": "string" }, "response_format": { "description": "Response format: defaults to 'compact' for chat-friendly output. Use 'summary' for aggregate stats or 'full' when you truly need every fill field.", "enum": [ "full", "compact", "summary" ], "type": "string" }, "timeframe": { "description": "Time range (e.g., '1h', '24h'). Alternative to from_block/to_block.", "type": "string" }, "to_block": { "description": "Ending block number", "type": "number" }, "to_timestamp": { "anyOf": [ { "type": "number" }, { "type": "string" } ], "description": "Ending timestamp. Accepts Unix seconds, Unix milliseconds, ISO datetime, or relative input like \"now\"." }, "user": { "description": "Trader wallet addresses (0x-prefixed, lowercase)", "items": { "type": "string" }, "type": "array" } }, "type": "object" }, "name": "portal_hyperliquid_query_fills", "outputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": {}, "properties": { "_app": { "description": "SQD Explorer identity and host-render state." }, "_coverage": { "description": "Window and result completeness." }, "_evidence": { "description": "Replayable arguments, digest, row count, and receipt." }, "_execution": { "description": "Bounded execution and scan details." }, "_freshness": { "description": "Freshness and finality." }, "_llm": { "description": "Hints to locate the primary evidence." }, "_meta": { "description": "Network, block range, timing, and row counts." }, "_notice": { "description": "Limitation or truncation notice.", "type": "string" }, "_notices": { "description": "Limitation or truncation notices.", "items": { "type": "string" }, "type": "array" }, "_ordering": { "description": "Ordering guarantees." }, "_pagination": { "description": "Pagination state and next_cursor." }, "_server": { "additionalProperties": false, "description": "SQD server name, exact version, and git commit.", "properties": { "commit": { "type": "string" }, "name": { "type": "string" }, "version": { "type": "string" } }, "required": [ "name", "version", "commit" ], "type": "object" }, "_summary": { "description": "Human-readable summary.", "type": "string" }, "_tool_contract": { "description": "Tool identity, intent, and chain families." }, "_ui": { "description": "Chart, table, and follow-up presentation metadata." }, "answer": { "description": "Answer grounded in the returned data.", "type": "string" }, "display": { "description": "Labels for presenting the result." }, "error": { "additionalProperties": {}, "description": "Structured failure details.", "properties": { "code": { "type": "string" }, "origin": { "type": "string" }, "retry_after_ms": { "type": "number" }, "retryable": { "type": "boolean" }, "suggestions": { "items": { "type": "string" }, "type": "array" }, "summary": { "type": "string" } }, "required": [ "code", "origin", "summary", "retryable", "suggestions" ], "type": "object" }, "investigation": { "description": "Evidence paths, pivots, and limitations." }, "items": { "description": "Primary rows for list results.", "items": {}, "type": "array" }, "next_steps": { "description": "Safe follow-up actions and continuation guidance." }, "pipes_handoff": { "description": "SQD Pipes guidance for custom data needs." }, "value": { "description": "Primary scalar result." } }, "type": "object" } }, { "description": "Find the right network or chain name to use across EVM, Solana, Bitcoin, Substrate, and Hyperliquid.\n\nCOMMON USER ASKS:\n- Find Base-like networks\n- Show Solana mainnets\n- Show Substrate mainnets\n\nFIRST CHOICE FOR:\n- finding the correct network before any other query\n\nWHEN TO USE:\n- You are not sure which network name, chain name, or alias to use.\n- You want to filter networks by VM family, network type, or real-time availability.\n\nDON'T USE:\n- You already know the exact network and want live data from that network.\n\nEXAMPLES:\n- Find Base-like networks: {\"query\":\"base\",\"limit\":10}\n- Show Solana mainnets: {\"vm\":\"solana\",\"network_type\":\"mainnet\"}\n- Show Substrate mainnets: {\"vm\":\"substrate\",\"network_type\":\"mainnet\"}", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "cursor": { "description": "Continuation cursor from a previous network catalog page", "type": "string" }, "limit": { "default": 25, "description": "Max results to return (default: 25, max: 100)", "maximum": 100, "type": "number" }, "network_type": { "description": "Filter by network type", "enum": [ "mainnet", "testnet", "devnet" ], "type": "string" }, "query": { "description": "Search by name, alias, or chain ID", "type": "string" }, "real_time_only": { "description": "Only show networks with a real-time indexed head", "type": "boolean" }, "vm": { "description": "Filter by VM family", "enum": [ "evm", "tron", "solana", "bitcoin", "substrate", "hyperliquid" ], "type": "string" } }, "type": "object" }, "name": "portal_list_networks", "outputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": {}, "properties": { "_app": { "description": "SQD Explorer identity and host-render state." }, "_coverage": { "description": "Window and result completeness." }, "_evidence": { "description": "Replayable arguments, digest, row count, and receipt." }, "_execution": { "description": "Bounded execution and scan details." }, "_freshness": { "description": "Freshness and finality." }, "_llm": { "description": "Hints to locate the primary evidence." }, "_meta": { "description": "Network, block range, timing, and row counts." }, "_notice": { "description": "Limitation or truncation notice.", "type": "string" }, "_notices": { "description": "Limitation or truncation notices.", "items": { "type": "string" }, "type": "array" }, "_ordering": { "description": "Ordering guarantees." }, "_pagination": { "description": "Pagination state and next_cursor." }, "_server": { "additionalProperties": false, "description": "SQD server name, exact version, and git commit.", "properties": { "commit": { "type": "string" }, "name": { "type": "string" }, "version": { "type": "string" } }, "required": [ "name", "version", "commit" ], "type": "object" }, "_summary": { "description": "Human-readable summary.", "type": "string" }, "_tool_contract": { "description": "Tool identity, intent, and chain families." }, "_ui": { "description": "Chart, table, and follow-up presentation metadata." }, "answer": { "description": "Answer grounded in the returned data.", "type": "string" }, "display": { "description": "Labels for presenting the result." }, "error": { "additionalProperties": {}, "description": "Structured failure details.", "properties": { "code": { "type": "string" }, "origin": { "type": "string" }, "retry_after_ms": { "type": "number" }, "retryable": { "type": "boolean" }, "suggestions": { "items": { "type": "string" }, "type": "array" }, "summary": { "type": "string" } }, "required": [ "code", "origin", "summary", "retryable", "suggestions" ], "type": "object" }, "investigation": { "description": "Evidence paths, pivots, and limitations." }, "items": { "description": "Primary rows for list results.", "items": {}, "type": "array" }, "next_steps": { "description": "Safe follow-up actions and continuation guidance." }, "pipes_handoff": { "description": "SQD Pipes guidance for custom data needs." }, "value": { "description": "Primary scalar result." } }, "type": "object" } }, { "description": "Resolve user-facing blockchain entities into query-ready identifiers, with ambiguity kept explicit.\n\nCOMMON USER ASKS:\n- Resolve USDC on Base\n- Resolve WETH on Ethereum\n- Resolve BAYC contract\n\nFIRST CHOICE FOR:\n- resolving a token symbol like USDC to token contract addresses\n- resolving EVM contract aliases, protocol names, pool identifiers, or Hyperliquid coin names before querying\n- checking which token-list addresses a symbol maps to before querying logs or transfers\n- turning a user-friendly token name into deterministic EVM filters\n\nWHEN TO USE:\n- The user names a token symbol such as USDC, WETH, DAI, or PEPE and you need contract addresses before querying raw data.\n- The user names a well-known EVM contract, protocol, pool identifier, or Hyperliquid ticker and you need a deterministic follow-up filter.\n- You need to disambiguate bridged token variants on an EVM network.\n- You want a source-backed token address rather than relying on memory or hardcoded constants.\n\nDON'T USE:\n- You already have the exact address, pool id, protocol slug, or coin filter and can pass it directly.\n\nEXAMPLES:\n- Resolve USDC on Base: {\"network\":\"base-mainnet\",\"kind\":\"token\",\"query\":\"USDC\",\"limit\":10}\n- Resolve WETH on Ethereum: {\"network\":\"ethereum-mainnet\",\"kind\":\"token\",\"query\":\"WETH\",\"limit\":5}\n- Resolve BAYC contract: {\"network\":\"ethereum-mainnet\",\"kind\":\"contract\",\"query\":\"bored apes\"}\n- Resolve Hyperliquid coin: {\"kind\":\"hyperliquid_coin\",\"query\":\"bitcoin\"}", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "kind": { "default": "token", "description": "Entity kind to resolve: token, contract alias/address, pool identifier, protocol name, or Hyperliquid coin/ticker.", "enum": [ "token", "contract", "pool", "protocol", "hyperliquid_coin" ], "type": "string" }, "limit": { "default": 10, "description": "Maximum matches to return.", "maximum": 50, "minimum": 1, "type": "number" }, "network": { "description": "Network name or alias when the entity is network-scoped, e.g. \"base\", \"ethereum\", \"arbitrum-one\", or \"hyperliquid-fills\".", "type": "string" }, "query": { "description": "Entity string to resolve, e.g. \"USDC\", \"bayc\", \"uniswap\", \"BTC\", or \"0x...\".", "type": "string" } }, "required": [ "query" ], "type": "object" }, "name": "portal_resolve_entity", "outputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": {}, "properties": { "_app": { "description": "SQD Explorer identity and host-render state." }, "_coverage": { "description": "Window and result completeness." }, "_evidence": { "description": "Replayable arguments, digest, row count, and receipt." }, "_execution": { "description": "Bounded execution and scan details." }, "_freshness": { "description": "Freshness and finality." }, "_llm": { "description": "Hints to locate the primary evidence." }, "_meta": { "description": "Network, block range, timing, and row counts." }, "_notice": { "description": "Limitation or truncation notice.", "type": "string" }, "_notices": { "description": "Limitation or truncation notices.", "items": { "type": "string" }, "type": "array" }, "_ordering": { "description": "Ordering guarantees." }, "_pagination": { "description": "Pagination state and next_cursor." }, "_server": { "additionalProperties": false, "description": "SQD server name, exact version, and git commit.", "properties": { "commit": { "type": "string" }, "name": { "type": "string" }, "version": { "type": "string" } }, "required": [ "name", "version", "commit" ], "type": "object" }, "_summary": { "description": "Human-readable summary.", "type": "string" }, "_tool_contract": { "description": "Tool identity, intent, and chain families." }, "_ui": { "description": "Chart, table, and follow-up presentation metadata." }, "answer": { "description": "Answer grounded in the returned data.", "type": "string" }, "display": { "description": "Labels for presenting the result." }, "error": { "additionalProperties": {}, "description": "Structured failure details.", "properties": { "code": { "type": "string" }, "origin": { "type": "string" }, "retry_after_ms": { "type": "number" }, "retryable": { "type": "boolean" }, "suggestions": { "items": { "type": "string" }, "type": "array" }, "summary": { "type": "string" } }, "required": [ "code", "origin", "summary", "retryable", "suggestions" ], "type": "object" }, "investigation": { "description": "Evidence paths, pivots, and limitations." }, "items": { "description": "Primary rows for list results.", "items": {}, "type": "array" }, "next_steps": { "description": "Safe follow-up actions and continuation guidance." }, "pipes_handoff": { "description": "SQD Pipes guidance for custom data needs." }, "value": { "description": "Primary scalar result." } }, "type": "object" } }, { "description": "Get the big picture for Solana throughput, fees, wallet activity, and optional top-program usage.\n\nCOMMON USER ASKS:\n- Solana network snapshot\n- Include top programs\n\nFIRST CHOICE FOR:\n- the big picture for Solana right now\n\nWHEN TO USE:\n- You want the big picture for Solana right now.\n- You want a network health snapshot for Solana.\n- You want throughput, fee, success-rate, or top-program analytics rather than raw records.\n\nDON'T USE:\n- You want chart buckets or raw transaction/instruction records.\n\nEXAMPLES:\n- Solana network snapshot: {\"network\":\"solana-mainnet\",\"timeframe\":\"1h\"}\n- Include top programs: {\"network\":\"solana-mainnet\",\"timeframe\":\"1h\",\"include_programs\":true}", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "cursor": { "description": "Continuation cursor for paginating top_programs", "type": "string" }, "from_timestamp": { "anyOf": [ { "type": "string" }, { "type": "number" } ], "description": "Starting timestamp. Accepts Unix seconds, Unix milliseconds, ISO datetime, or relative input like \"1h ago\"." }, "include_compute_units": { "default": false, "description": "Include average compute-unit stats across the full range (disabled by default for speed)", "type": "boolean" }, "include_programs": { "default": false, "description": "Include top programs by instruction count (requires an extra instruction scan and is slower)", "type": "boolean" }, "mode": { "default": "deep", "description": "Execution depth. Defaults to complete requested-window analysis; the optional fast value is only for explicitly bounded previews.", "enum": [ "fast", "deep" ], "type": "string" }, "network": { "default": "solana-mainnet", "description": "Network name (default: solana-mainnet)", "type": "string" }, "program_limit": { "default": 20, "description": "Max top-program rows to return per page when include_programs is enabled", "type": "number" }, "response_format": { "default": "full", "description": "Response format: 'summary' (high-level metrics), 'compact' (core sections), 'full' (complete analytics).", "enum": [ "full", "compact", "summary" ], "type": "string" }, "timeframe": { "description": "Time range. Accepts compact durations like '15m' or natural phrases like 'past 30 minutes'. Optional; defaults to a 1h analysis window.", "type": "string" }, "to_timestamp": { "anyOf": [ { "type": "string" }, { "type": "number" } ], "description": "Ending timestamp. Accepts Unix seconds, Unix milliseconds, ISO datetime, or relative input like \"now\"." } }, "type": "object" }, "name": "portal_solana_get_analytics", "outputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": {}, "properties": { "_app": { "description": "SQD Explorer identity and host-render state." }, "_coverage": { "description": "Window and result completeness." }, "_evidence": { "description": "Replayable arguments, digest, row count, and receipt." }, "_execution": { "description": "Bounded execution and scan details." }, "_freshness": { "description": "Freshness and finality." }, "_llm": { "description": "Hints to locate the primary evidence." }, "_meta": { "description": "Network, block range, timing, and row counts." }, "_notice": { "description": "Limitation or truncation notice.", "type": "string" }, "_notices": { "description": "Limitation or truncation notices.", "items": { "type": "string" }, "type": "array" }, "_ordering": { "description": "Ordering guarantees." }, "_pagination": { "description": "Pagination state and next_cursor." }, "_server": { "additionalProperties": false, "description": "SQD server name, exact version, and git commit.", "properties": { "commit": { "type": "string" }, "name": { "type": "string" }, "version": { "type": "string" } }, "required": [ "name", "version", "commit" ], "type": "object" }, "_summary": { "description": "Human-readable summary.", "type": "string" }, "_tool_contract": { "description": "Tool identity, intent, and chain families." }, "_ui": { "description": "Chart, table, and follow-up presentation metadata." }, "answer": { "description": "Answer grounded in the returned data.", "type": "string" }, "display": { "description": "Labels for presenting the result." }, "error": { "additionalProperties": {}, "description": "Structured failure details.", "properties": { "code": { "type": "string" }, "origin": { "type": "string" }, "retry_after_ms": { "type": "number" }, "retryable": { "type": "boolean" }, "suggestions": { "items": { "type": "string" }, "type": "array" }, "summary": { "type": "string" } }, "required": [ "code", "origin", "summary", "retryable", "suggestions" ], "type": "object" }, "investigation": { "description": "Evidence paths, pivots, and limitations." }, "items": { "description": "Primary rows for list results.", "items": {}, "type": "array" }, "next_steps": { "description": "Safe follow-up actions and continuation guidance." }, "pipes_handoff": { "description": "SQD Pipes guidance for custom data needs." }, "value": { "description": "Primary scalar result." } }, "type": "object" } }, { "description": "Query raw Solana instructions with program and account filters.\n\nCOMMON USER ASKS:\n- Token Program instructions\n\nWHEN TO USE:\n- You need program-level or account-level instruction activity.\n- You want to inspect Token Program, Jupiter, System Program, or Anchor discriminator activity.\n\nDON'T USE:\n- You only need transaction-level activity and not individual instructions.\n\nEXAMPLES:\n- Token Program instructions: {\"network\":\"solana-mainnet\",\"timeframe\":\"1h\",\"program_id\":[\"TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA\"],\"limit\":20}", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "a0": { "anyOf": [ { "type": "string" }, { "items": { "type": "string" }, "type": "array" } ], "description": "Account at index 0. You can pass a single string or an array." }, "a1": { "anyOf": [ { "type": "string" }, { "items": { "type": "string" }, "type": "array" } ], "description": "Account at index 1. You can pass a single string or an array." }, "a10": { "anyOf": [ { "type": "string" }, { "items": { "type": "string" }, "type": "array" } ], "description": "Account at index 10. You can pass a single string or an array." }, "a11": { "anyOf": [ { "type": "string" }, { "items": { "type": "string" }, "type": "array" } ], "description": "Account at index 11. You can pass a single string or an array." }, "a12": { "anyOf": [ { "type": "string" }, { "items": { "type": "string" }, "type": "array" } ], "description": "Account at index 12. You can pass a single string or an array." }, "a13": { "anyOf": [ { "type": "string" }, { "items": { "type": "string" }, "type": "array" } ], "description": "Account at index 13. You can pass a single string or an array." }, "a14": { "anyOf": [ { "type": "string" }, { "items": { "type": "string" }, "type": "array" } ], "description": "Account at index 14. You can pass a single string or an array." }, "a15": { "anyOf": [ { "type": "string" }, { "items": { "type": "string" }, "type": "array" } ], "description": "Account at index 15. You can pass a single string or an array." }, "a2": { "anyOf": [ { "type": "string" }, { "items": { "type": "string" }, "type": "array" } ], "description": "Account at index 2. You can pass a single string or an array." }, "a3": { "anyOf": [ { "type": "string" }, { "items": { "type": "string" }, "type": "array" } ], "description": "Account at index 3. You can pass a single string or an array." }, "a4": { "anyOf": [ { "type": "string" }, { "items": { "type": "string" }, "type": "array" } ], "description": "Account at index 4. You can pass a single string or an array." }, "a5": { "anyOf": [ { "type": "string" }, { "items": { "type": "string" }, "type": "array" } ], "description": "Account at index 5. You can pass a single string or an array." }, "a6": { "anyOf": [ { "type": "string" }, { "items": { "type": "string" }, "type": "array" } ], "description": "Account at index 6. You can pass a single string or an array." }, "a7": { "anyOf": [ { "type": "string" }, { "items": { "type": "string" }, "type": "array" } ], "description": "Account at index 7. You can pass a single string or an array." }, "a8": { "anyOf": [ { "type": "string" }, { "items": { "type": "string" }, "type": "array" } ], "description": "Account at index 8. You can pass a single string or an array." }, "a9": { "anyOf": [ { "type": "string" }, { "items": { "type": "string" }, "type": "array" } ], "description": "Account at index 9. You can pass a single string or an array." }, "cursor": { "description": "Continuation cursor from a previous response", "type": "string" }, "d1": { "anyOf": [ { "type": "string" }, { "items": { "type": "string" }, "type": "array" } ], "description": "1-byte discriminator filter (0x-prefixed hex). You can pass a single string or an array." }, "d2": { "anyOf": [ { "type": "string" }, { "items": { "type": "string" }, "type": "array" } ], "description": "2-byte discriminator filter (0x-prefixed hex). You can pass a single string or an array." }, "d4": { "anyOf": [ { "type": "string" }, { "items": { "type": "string" }, "type": "array" } ], "description": "4-byte discriminator filter (0x-prefixed hex). You can pass a single string or an array." }, "d8": { "anyOf": [ { "type": "string" }, { "items": { "type": "string" }, "type": "array" } ], "description": "8-byte discriminator filter - Anchor (0x-prefixed hex). You can pass a single string or an array." }, "finalized_only": { "default": false, "description": "Only query finalized slots", "type": "boolean" }, "from_block": { "description": "Starting slot number (use this OR timeframe)", "type": "number" }, "from_timestamp": { "anyOf": [ { "type": "number" }, { "type": "string" } ], "description": "Starting timestamp. Accepts Unix seconds, Unix milliseconds, ISO datetime, or relative input like \"1h ago\"." }, "include_inner_instructions": { "default": false, "description": "Include inner (CPI) instructions", "type": "boolean" }, "include_logs": { "default": false, "description": "Include program logs", "type": "boolean" }, "include_transaction": { "default": false, "description": "Include transaction data", "type": "boolean" }, "include_transaction_balances": { "default": false, "description": "Include SOL balance changes", "type": "boolean" }, "include_transaction_instructions": { "default": false, "description": "Include all instructions from the parent transaction (sibling instructions)", "type": "boolean" }, "include_transaction_token_balances": { "default": false, "description": "Include token balance changes", "type": "boolean" }, "is_committed": { "description": "Only committed transactions", "type": "boolean" }, "limit": { "default": 20, "description": "Max instructions (default: 20, max: 25)", "maximum": 25, "minimum": 1, "type": "integer" }, "mentions_account": { "anyOf": [ { "type": "string" }, { "items": { "type": "string" }, "type": "array" } ], "description": "Accounts mentioned anywhere in the instruction. You can pass a single string or an array." }, "network": { "description": "Network name or alias. Optional when continuing with cursor.", "type": "string" }, "program_id": { "anyOf": [ { "type": "string" }, { "items": { "type": "string" }, "type": "array" } ], "description": "Program IDs. You can pass a single string or an array." }, "timeframe": { "description": "Time range (e.g., '1h', '24h'). Alternative to from_block/to_block. Solana slots are ~400ms.", "type": "string" }, "to_block": { "description": "Ending slot number. Keep ranges reasonable for performance.", "type": "number" }, "to_timestamp": { "anyOf": [ { "type": "number" }, { "type": "string" } ], "description": "Ending timestamp. Accepts Unix seconds, Unix milliseconds, ISO datetime, or relative input like \"now\"." }, "transaction_fee_payer": { "anyOf": [ { "type": "string" }, { "items": { "type": "string" }, "type": "array" } ], "description": "Fee payer filter. You can pass a single string or an array." } }, "type": "object" }, "name": "portal_solana_query_instructions", "outputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": {}, "properties": { "_app": { "description": "SQD Explorer identity and host-render state." }, "_coverage": { "description": "Window and result completeness." }, "_evidence": { "description": "Replayable arguments, digest, row count, and receipt." }, "_execution": { "description": "Bounded execution and scan details." }, "_freshness": { "description": "Freshness and finality." }, "_llm": { "description": "Hints to locate the primary evidence." }, "_meta": { "description": "Network, block range, timing, and row counts." }, "_notice": { "description": "Limitation or truncation notice.", "type": "string" }, "_notices": { "description": "Limitation or truncation notices.", "items": { "type": "string" }, "type": "array" }, "_ordering": { "description": "Ordering guarantees." }, "_pagination": { "description": "Pagination state and next_cursor." }, "_server": { "additionalProperties": false, "description": "SQD server name, exact version, and git commit.", "properties": { "commit": { "type": "string" }, "name": { "type": "string" }, "version": { "type": "string" } }, "required": [ "name", "version", "commit" ], "type": "object" }, "_summary": { "description": "Human-readable summary.", "type": "string" }, "_tool_contract": { "description": "Tool identity, intent, and chain families." }, "_ui": { "description": "Chart, table, and follow-up presentation metadata." }, "answer": { "description": "Answer grounded in the returned data.", "type": "string" }, "display": { "description": "Labels for presenting the result." }, "error": { "additionalProperties": {}, "description": "Structured failure details.", "properties": { "code": { "type": "string" }, "origin": { "type": "string" }, "retry_after_ms": { "type": "number" }, "retryable": { "type": "boolean" }, "suggestions": { "items": { "type": "string" }, "type": "array" }, "summary": { "type": "string" } }, "required": [ "code", "origin", "summary", "retryable", "suggestions" ], "type": "object" }, "investigation": { "description": "Evidence paths, pivots, and limitations." }, "items": { "description": "Primary rows for list results.", "items": {}, "type": "array" }, "next_steps": { "description": "Safe follow-up actions and continuation guidance." }, "pipes_handoff": { "description": "SQD Pipes guidance for custom data needs." }, "value": { "description": "Primary scalar result." } }, "type": "object" } }, { "description": "Query raw Solana transactions with optional balances, rewards, logs, and instruction context.\n\nCOMMON USER ASKS:\n- Recent Solana transactions\n- Filter by program\n\nWHEN TO USE:\n- You need raw Solana transaction records.\n- You want Solana-specific filters or include flags that convenience tools do not expose.\n\nDON'T USE:\n- You only want recent activity or a compact network summary.\n\nEXAMPLES:\n- Recent Solana transactions: {\"network\":\"solana-mainnet\",\"timeframe\":\"1h\",\"limit\":20}\n- Filter by program: {\"network\":\"solana-mainnet\",\"timeframe\":\"1h\",\"program_id\":[\"TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA\"],\"limit\":20}", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "cursor": { "description": "Continuation cursor from a previous response", "type": "string" }, "fee_payer": { "description": "Fee payer addresses", "items": { "type": "string" }, "type": "array" }, "finalized_only": { "default": false, "description": "Only query finalized slots", "type": "boolean" }, "from_block": { "description": "Starting slot number (use this OR timeframe)", "type": "number" }, "from_timestamp": { "anyOf": [ { "type": "number" }, { "type": "string" } ], "description": "Starting timestamp. Accepts Unix seconds, Unix milliseconds, ISO datetime, or relative input like \"1h ago\"." }, "include_balances": { "default": false, "description": "Include SOL balance changes", "type": "boolean" }, "include_instructions": { "default": false, "description": "Include instruction data", "type": "boolean" }, "include_logs": { "default": false, "description": "Include program logs", "type": "boolean" }, "include_rewards": { "default": false, "description": "Include block rewards (validator staking rewards). Filter by pubkey using mentions_account.", "type": "boolean" }, "include_token_balances": { "default": false, "description": "Include SPL token balance changes", "type": "boolean" }, "limit": { "default": 20, "description": "Max transactions to return (default: 20, max: 25)", "maximum": 25, "minimum": 1, "type": "integer" }, "mentions_account": { "description": "Accounts mentioned anywhere in the transaction", "items": { "type": "string" }, "type": "array" }, "network": { "description": "Network name or alias. Optional when continuing with cursor.", "type": "string" }, "response_format": { "description": "Response format: defaults to 'compact' for chat-friendly output, or stays 'full' when inline instruction, balance, log, or reward context is requested. Use 'summary' for aggregate stats.", "enum": [ "full", "compact", "summary" ], "type": "string" }, "timeframe": { "description": "Time range (e.g., '1h', '24h'). Alternative to from_block/to_block.", "type": "string" }, "to_block": { "description": "Ending slot number", "type": "number" }, "to_timestamp": { "anyOf": [ { "type": "number" }, { "type": "string" } ], "description": "Ending timestamp. Accepts Unix seconds, Unix milliseconds, ISO datetime, or relative input like \"now\"." } }, "type": "object" }, "name": "portal_solana_query_transactions", "outputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": {}, "properties": { "_app": { "description": "SQD Explorer identity and host-render state." }, "_coverage": { "description": "Window and result completeness." }, "_evidence": { "description": "Replayable arguments, digest, row count, and receipt." }, "_execution": { "description": "Bounded execution and scan details." }, "_freshness": { "description": "Freshness and finality." }, "_llm": { "description": "Hints to locate the primary evidence." }, "_meta": { "description": "Network, block range, timing, and row counts." }, "_notice": { "description": "Limitation or truncation notice.", "type": "string" }, "_notices": { "description": "Limitation or truncation notices.", "items": { "type": "string" }, "type": "array" }, "_ordering": { "description": "Ordering guarantees." }, "_pagination": { "description": "Pagination state and next_cursor." }, "_server": { "additionalProperties": false, "description": "SQD server name, exact version, and git commit.", "properties": { "commit": { "type": "string" }, "name": { "type": "string" }, "version": { "type": "string" } }, "required": [ "name", "version", "commit" ], "type": "object" }, "_summary": { "description": "Human-readable summary.", "type": "string" }, "_tool_contract": { "description": "Tool identity, intent, and chain families." }, "_ui": { "description": "Chart, table, and follow-up presentation metadata." }, "answer": { "description": "Answer grounded in the returned data.", "type": "string" }, "display": { "description": "Labels for presenting the result." }, "error": { "additionalProperties": {}, "description": "Structured failure details.", "properties": { "code": { "type": "string" }, "origin": { "type": "string" }, "retry_after_ms": { "type": "number" }, "retryable": { "type": "boolean" }, "suggestions": { "items": { "type": "string" }, "type": "array" }, "summary": { "type": "string" } }, "required": [ "code", "origin", "summary", "retryable", "suggestions" ], "type": "object" }, "investigation": { "description": "Evidence paths, pivots, and limitations." }, "items": { "description": "Primary rows for list results.", "items": {}, "type": "array" }, "next_steps": { "description": "Safe follow-up actions and continuation guidance." }, "pipes_handoff": { "description": "SQD Pipes guidance for custom data needs." }, "value": { "description": "Primary scalar result." } }, "type": "object" } }, { "description": "Analytics snapshot for Substrate or Polkadot activity in an indexed window, with event, call, and extrinsic counts plus top event and call names.\n\nCOMMON USER ASKS:\n- Polkadot activity snapshot\n- Big picture for Polkadot activity\n- How is Polkadot doing?\n\nFIRST CHOICE FOR:\n- Polkadot activity analytics in an indexed window\n- how Polkadot is doing in an indexed window\n- analytics snapshot for Polkadot or another Substrate network in an indexed window\n\nWHEN TO USE:\n- You want Polkadot activity analytics in a selected indexed window.\n- You want to ask \"how is Polkadot doing in this indexed window?\" and get an analytics answer rather than just network freshness metadata.\n- You want a quick Substrate network snapshot or health check.\n- You want top pallet events and calls rather than raw rows.\n- You want to know how a Substrate network is doing in the selected indexed window.\n\nDON'T USE:\n- You need full raw event or call records.\n\nEXAMPLES:\n- Polkadot activity snapshot: {\"network\":\"polkadot\",\"timeframe\":\"1h\"}\n- Big picture for Polkadot activity: {\"network\":\"polkadot\",\"timeframe\":\"1h\"}\n- How is Polkadot doing?: {\"network\":\"polkadot\",\"timeframe\":\"6h\"}", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "from_block": { "description": "Starting block number (use this OR timeframe)", "type": "number" }, "from_timestamp": { "anyOf": [ { "type": "number" }, { "type": "string" } ], "description": "Starting timestamp. Accepts Unix seconds, Unix milliseconds, ISO datetime, or relative input like \"6h ago\"." }, "mode": { "default": "deep", "description": "Execution depth. Defaults to complete requested-window analysis; the optional fast value is only for explicitly bounded previews.", "enum": [ "fast", "deep" ], "type": "string" }, "network": { "default": "polkadot", "description": "Substrate network name (default: polkadot)", "type": "string" }, "response_format": { "default": "full", "description": "Response format: 'summary' (headline metrics only), 'compact' (core sections), 'full' (full dashboard payload)", "enum": [ "full", "compact", "summary" ], "type": "string" }, "section_limit": { "default": 10, "description": "Max rows to keep in ranked event and call sections", "type": "number" }, "timeframe": { "description": "Time range like '1h', '6h', or '24h'. Default: '1h'", "type": "string" }, "to_block": { "description": "Ending block number", "type": "number" }, "to_timestamp": { "anyOf": [ { "type": "number" }, { "type": "string" } ], "description": "Ending timestamp. Accepts Unix seconds, Unix milliseconds, ISO datetime, or relative input like \"now\"." } }, "type": "object" }, "name": "portal_substrate_get_analytics", "outputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": {}, "properties": { "_app": { "description": "SQD Explorer identity and host-render state." }, "_coverage": { "description": "Window and result completeness." }, "_evidence": { "description": "Replayable arguments, digest, row count, and receipt." }, "_execution": { "description": "Bounded execution and scan details." }, "_freshness": { "description": "Freshness and finality." }, "_llm": { "description": "Hints to locate the primary evidence." }, "_meta": { "description": "Network, block range, timing, and row counts." }, "_notice": { "description": "Limitation or truncation notice.", "type": "string" }, "_notices": { "description": "Limitation or truncation notices.", "items": { "type": "string" }, "type": "array" }, "_ordering": { "description": "Ordering guarantees." }, "_pagination": { "description": "Pagination state and next_cursor." }, "_server": { "additionalProperties": false, "description": "SQD server name, exact version, and git commit.", "properties": { "commit": { "type": "string" }, "name": { "type": "string" }, "version": { "type": "string" } }, "required": [ "name", "version", "commit" ], "type": "object" }, "_summary": { "description": "Human-readable summary.", "type": "string" }, "_tool_contract": { "description": "Tool identity, intent, and chain families." }, "_ui": { "description": "Chart, table, and follow-up presentation metadata." }, "answer": { "description": "Answer grounded in the returned data.", "type": "string" }, "display": { "description": "Labels for presenting the result." }, "error": { "additionalProperties": {}, "description": "Structured failure details.", "properties": { "code": { "type": "string" }, "origin": { "type": "string" }, "retry_after_ms": { "type": "number" }, "retryable": { "type": "boolean" }, "suggestions": { "items": { "type": "string" }, "type": "array" }, "summary": { "type": "string" } }, "required": [ "code", "origin", "summary", "retryable", "suggestions" ], "type": "object" }, "investigation": { "description": "Evidence paths, pivots, and limitations." }, "items": { "description": "Primary rows for list results.", "items": {}, "type": "array" }, "next_steps": { "description": "Safe follow-up actions and continuation guidance." }, "pipes_handoff": { "description": "SQD Pipes guidance for custom data needs." }, "value": { "description": "Primary scalar result." } }, "type": "object" } }, { "description": "Query raw Substrate or Polkadot calls with pallet/call-name filters and optional child-call, emitted-event, or extrinsic context.\n\nCOMMON USER ASKS:\n- Recent Balances calls\n- Polkadot calls with emitted events\n\nFIRST CHOICE FOR:\n- raw Substrate or Polkadot call rows, especially when you want the events emitted by those calls\n\nWHEN TO USE:\n- You need raw call records on a Substrate network.\n- You want pallet call activity like Balances.transfer_keep_alive or Ethereum.transact.\n- You want calls plus the events emitted by those calls.\n\nDON'T USE:\n- You want events or aggregate analytics rather than call rows.\n\nEXAMPLES:\n- Recent Balances calls: {\"network\":\"polkadot\",\"timeframe\":\"1h\",\"call_names\":[\"Balances.transfer_keep_alive\"],\"limit\":20}\n- Polkadot calls with emitted events: {\"network\":\"polkadot\",\"timeframe\":\"1h\",\"call_names\":[\"ParaInherent.enter\"],\"include_events\":true,\"limit\":20}", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "call_names": { "description": "Optional qualified call names like Timestamp.set or Balances.transfer_keep_alive", "items": { "type": "string" }, "type": "array" }, "cursor": { "description": "Continuation cursor from a previous response", "type": "string" }, "finalized_only": { "default": false, "description": "Only query finalized blocks", "type": "boolean" }, "from_block": { "description": "Starting block number", "type": "number" }, "from_timestamp": { "anyOf": [ { "type": "number" }, { "type": "string" } ], "description": "Starting timestamp. Accepts Unix seconds, Unix milliseconds, ISO datetime, or relative input like \"6h ago\"." }, "include_events": { "default": false, "description": "Attach events emitted directly by each matching call", "type": "boolean" }, "include_extrinsic": { "default": false, "description": "Attach the parent extrinsic inline for each matching call", "type": "boolean" }, "include_stack": { "default": false, "description": "Attach the parent call stack for each matching call", "type": "boolean" }, "include_subcalls": { "default": false, "description": "Attach direct descendant calls inline for each matching call", "type": "boolean" }, "limit": { "default": 10, "description": "Max calls to return (max: 10; use compact mode for context-rich rows)", "maximum": 10, "minimum": 1, "type": "integer" }, "network": { "description": "Substrate network name or alias. Optional when continuing with cursor.", "type": "string" }, "response_format": { "description": "Response format: defaults to 'compact' for chat-friendly output. Compact mode keeps requested subcalls, events, and extrinsic context in a smaller inline shape.", "enum": [ "full", "compact", "summary" ], "type": "string" }, "timeframe": { "description": "Time range (e.g. '1h', '24h'). Alternative to from_block/to_block.", "type": "string" }, "to_block": { "description": "Ending block number", "type": "number" }, "to_timestamp": { "anyOf": [ { "type": "number" }, { "type": "string" } ], "description": "Ending timestamp. Accepts Unix seconds, Unix milliseconds, ISO datetime, or relative input like \"now\"." } }, "type": "object" }, "name": "portal_substrate_query_calls", "outputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": {}, "properties": { "_app": { "description": "SQD Explorer identity and host-render state." }, "_coverage": { "description": "Window and result completeness." }, "_evidence": { "description": "Replayable arguments, digest, row count, and receipt." }, "_execution": { "description": "Bounded execution and scan details." }, "_freshness": { "description": "Freshness and finality." }, "_llm": { "description": "Hints to locate the primary evidence." }, "_meta": { "description": "Network, block range, timing, and row counts." }, "_notice": { "description": "Limitation or truncation notice.", "type": "string" }, "_notices": { "description": "Limitation or truncation notices.", "items": { "type": "string" }, "type": "array" }, "_ordering": { "description": "Ordering guarantees." }, "_pagination": { "description": "Pagination state and next_cursor." }, "_server": { "additionalProperties": false, "description": "SQD server name, exact version, and git commit.", "properties": { "commit": { "type": "string" }, "name": { "type": "string" }, "version": { "type": "string" } }, "required": [ "name", "version", "commit" ], "type": "object" }, "_summary": { "description": "Human-readable summary.", "type": "string" }, "_tool_contract": { "description": "Tool identity, intent, and chain families." }, "_ui": { "description": "Chart, table, and follow-up presentation metadata." }, "answer": { "description": "Answer grounded in the returned data.", "type": "string" }, "display": { "description": "Labels for presenting the result." }, "error": { "additionalProperties": {}, "description": "Structured failure details.", "properties": { "code": { "type": "string" }, "origin": { "type": "string" }, "retry_after_ms": { "type": "number" }, "retryable": { "type": "boolean" }, "suggestions": { "items": { "type": "string" }, "type": "array" }, "summary": { "type": "string" } }, "required": [ "code", "origin", "summary", "retryable", "suggestions" ], "type": "object" }, "investigation": { "description": "Evidence paths, pivots, and limitations." }, "items": { "description": "Primary rows for list results.", "items": {}, "type": "array" }, "next_steps": { "description": "Safe follow-up actions and continuation guidance." }, "pipes_handoff": { "description": "SQD Pipes guidance for custom data needs." }, "value": { "description": "Primary scalar result." } }, "type": "object" } }, { "description": "Query raw Substrate or Polkadot event rows with pallet/event-name filters and optional parent call or extrinsic context.\n\nCOMMON USER ASKS:\n- Balances.Transfer events on Polkadot\n\nFIRST CHOICE FOR:\n- raw Substrate or Polkadot event rows with optional parent call or extrinsic context\n\nWHEN TO USE:\n- You need raw event records on a Substrate network.\n- You want pallet-level event activity like Balances.Transfer or Contracts.ContractEmitted.\n- You want event rows first, even if the network is a Polkadot-family chain.\n\nDON'T USE:\n- You want calls or aggregate analytics rather than event rows.\n\nEXAMPLES:\n- Balances.Transfer events on Polkadot: {\"network\":\"polkadot\",\"timeframe\":\"1h\",\"event_names\":[\"Balances.Transfer\"],\"limit\":20}", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "cursor": { "description": "Continuation cursor from a previous response", "type": "string" }, "event_names": { "description": "Optional qualified event names like Balances.Transfer or System.ExtrinsicSuccess", "items": { "type": "string" }, "type": "array" }, "finalized_only": { "default": false, "description": "Only query finalized blocks", "type": "boolean" }, "from_block": { "description": "Starting block number", "type": "number" }, "from_timestamp": { "anyOf": [ { "type": "number" }, { "type": "string" } ], "description": "Starting timestamp. Accepts Unix seconds, Unix milliseconds, ISO datetime, or relative input like \"6h ago\"." }, "include_call": { "default": false, "description": "Attach the emitting call inline when the event has call context", "type": "boolean" }, "include_extrinsic": { "default": false, "description": "Attach the parent extrinsic inline for each matching event", "type": "boolean" }, "include_stack": { "default": false, "description": "Attach the parent call stack when the event has nested call context", "type": "boolean" }, "limit": { "default": 10, "description": "Max events to return (max: 10; use compact mode for context-rich rows)", "maximum": 10, "minimum": 1, "type": "integer" }, "network": { "description": "Substrate network name or alias. Optional when continuing with cursor.", "type": "string" }, "response_format": { "description": "Response format: defaults to 'compact' for chat-friendly output. Compact mode keeps requested extrinsic or call context in a smaller inline shape.", "enum": [ "full", "compact", "summary" ], "type": "string" }, "timeframe": { "description": "Time range (e.g. '1h', '24h'). Alternative to from_block/to_block.", "type": "string" }, "to_block": { "description": "Ending block number", "type": "number" }, "to_timestamp": { "anyOf": [ { "type": "number" }, { "type": "string" } ], "description": "Ending timestamp. Accepts Unix seconds, Unix milliseconds, ISO datetime, or relative input like \"now\"." } }, "type": "object" }, "name": "portal_substrate_query_events", "outputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": {}, "properties": { "_app": { "description": "SQD Explorer identity and host-render state." }, "_coverage": { "description": "Window and result completeness." }, "_evidence": { "description": "Replayable arguments, digest, row count, and receipt." }, "_execution": { "description": "Bounded execution and scan details." }, "_freshness": { "description": "Freshness and finality." }, "_llm": { "description": "Hints to locate the primary evidence." }, "_meta": { "description": "Network, block range, timing, and row counts." }, "_notice": { "description": "Limitation or truncation notice.", "type": "string" }, "_notices": { "description": "Limitation or truncation notices.", "items": { "type": "string" }, "type": "array" }, "_ordering": { "description": "Ordering guarantees." }, "_pagination": { "description": "Pagination state and next_cursor." }, "_server": { "additionalProperties": false, "description": "SQD server name, exact version, and git commit.", "properties": { "commit": { "type": "string" }, "name": { "type": "string" }, "version": { "type": "string" } }, "required": [ "name", "version", "commit" ], "type": "object" }, "_summary": { "description": "Human-readable summary.", "type": "string" }, "_tool_contract": { "description": "Tool identity, intent, and chain families." }, "_ui": { "description": "Chart, table, and follow-up presentation metadata." }, "answer": { "description": "Answer grounded in the returned data.", "type": "string" }, "display": { "description": "Labels for presenting the result." }, "error": { "additionalProperties": {}, "description": "Structured failure details.", "properties": { "code": { "type": "string" }, "origin": { "type": "string" }, "retry_after_ms": { "type": "number" }, "retryable": { "type": "boolean" }, "suggestions": { "items": { "type": "string" }, "type": "array" }, "summary": { "type": "string" } }, "required": [ "code", "origin", "summary", "retryable", "suggestions" ], "type": "object" }, "investigation": { "description": "Evidence paths, pivots, and limitations." }, "items": { "description": "Primary rows for list results.", "items": {}, "type": "array" }, "next_steps": { "description": "Safe follow-up actions and continuation guidance." }, "pipes_handoff": { "description": "SQD Pipes guidance for custom data needs." }, "value": { "description": "Primary scalar result." } }, "type": "object" } }, { "description": "Query raw Tron (TVM) event logs by contract address and topics with common event aliases, the parent transaction hash on every row, and optional inline decoding.\n\nCOMMON USER ASKS:\n- Recent USDT transfers on Tron\n- USDT transfers received by one wallet\n\nFIRST CHOICE FOR:\n- TRC-20 token transfer events on Tron such as USDT\n- contract event evidence on Tron with the parent transaction hash\n\nWHEN TO USE:\n- You need TRC-20 Transfer or Approval events for a token such as USDT on Tron.\n- You need event logs from a Tron contract filtered by topic signature or indexed address.\n- You want the exact transaction hash behind each Tron event.\n\nDON'T USE:\n- You want native TRX transfers or contract calls; use portal_tron_query_transactions.\n- You need an Ethereum-compatible network; use portal_evm_query_logs.\n\nEXAMPLES:\n- Recent USDT transfers on Tron: {\"network\":\"tron-mainnet\",\"timeframe\":\"5m\",\"addresses\":[\"TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t\"],\"event\":\"transfer\",\"decode\":true,\"limit\":20}\n- USDT transfers received by one wallet: {\"network\":\"tron-mainnet\",\"from_block\":84000000,\"to_block\":84000100,\"addresses\":[\"TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t\"],\"event\":\"transfer\",\"topic2\":[\"TJLuVi6UhS3UTx5EUXNCoz9VNqP2gnPmyf\"],\"decode\":true,\"limit\":20}", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "addresses": { "description": "FILTER: emitting contract addresses in any form (Base58 T..., 41-prefixed hex, 0x or bare 20-byte hex). Always include this or topic0 for fast queries.", "items": { "type": "string" }, "type": "array" }, "cursor": { "description": "Continuation cursor from a previous response", "type": "string" }, "decode": { "default": false, "description": "Decode known event signatures inline with Base58 addresses", "type": "boolean" }, "event": { "anyOf": [ { "type": "string" }, { "items": { "type": "string" }, "type": "array" } ], "description": "FILTER: common event alias (transfer, approval, swap, mint, burn) or a topic0 hash. Merges with topic0." }, "finalized_only": { "default": false, "description": "Only query finalized blocks", "type": "boolean" }, "from_block": { "description": "Starting block number", "type": "number" }, "from_timestamp": { "anyOf": [ { "type": "number" }, { "type": "string" } ], "description": "Starting timestamp. Accepts Unix seconds, Unix milliseconds, ISO datetime, or relative input like \"1h ago\"." }, "include_transaction": { "default": false, "description": "Attach the parent transaction (type, caller, contract, result, fee). The hash is always attached.", "type": "boolean" }, "limit": { "default": 20, "description": "Max logs to return (default: 20, max: 25)", "maximum": 25, "minimum": 1, "type": "integer" }, "max_scan_blocks": { "description": "Safety cap for filtered latest-first scans. Default: min(window, 50000).", "maximum": 500000, "minimum": 1, "type": "integer" }, "network": { "description": "Network name (default: tron-mainnet). Optional when continuing with cursor.", "type": "string" }, "response_format": { "description": "Response format: defaults to 'compact' for chat-friendly output. Use 'summary' for counts by contract and event.", "enum": [ "full", "compact", "summary" ], "type": "string" }, "timeframe": { "description": "Time range (e.g., '5m', '1h'). Alternative to from_block/to_block.", "type": "string" }, "to_block": { "description": "Ending block number. Tron produces a block every 3 seconds.", "type": "number" }, "to_timestamp": { "anyOf": [ { "type": "number" }, { "type": "string" } ], "description": "Ending timestamp. Accepts Unix seconds, Unix milliseconds, ISO datetime, or relative input like \"now\"." }, "topic0": { "description": "FILTER: event signature hashes, with or without 0x.", "items": { "type": "string" }, "type": "array" }, "topic1": { "description": "FILTER: indexed parameter 1 (often the sender). An address in any form is padded to a topic.", "items": { "type": "string" }, "type": "array" }, "topic2": { "description": "FILTER: indexed parameter 2 (often the recipient). An address in any form is padded to a topic.", "items": { "type": "string" }, "type": "array" }, "topic3": { "description": "FILTER: indexed parameter 3.", "items": { "type": "string" }, "type": "array" } }, "type": "object" }, "name": "portal_tron_query_logs", "outputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": {}, "properties": { "_app": { "description": "SQD Explorer identity and host-render state." }, "_coverage": { "description": "Window and result completeness." }, "_evidence": { "description": "Replayable arguments, digest, row count, and receipt." }, "_execution": { "description": "Bounded execution and scan details." }, "_freshness": { "description": "Freshness and finality." }, "_llm": { "description": "Hints to locate the primary evidence." }, "_meta": { "description": "Network, block range, timing, and row counts." }, "_notice": { "description": "Limitation or truncation notice.", "type": "string" }, "_notices": { "description": "Limitation or truncation notices.", "items": { "type": "string" }, "type": "array" }, "_ordering": { "description": "Ordering guarantees." }, "_pagination": { "description": "Pagination state and next_cursor." }, "_server": { "additionalProperties": false, "description": "SQD server name, exact version, and git commit.", "properties": { "commit": { "type": "string" }, "name": { "type": "string" }, "version": { "type": "string" } }, "required": [ "name", "version", "commit" ], "type": "object" }, "_summary": { "description": "Human-readable summary.", "type": "string" }, "_tool_contract": { "description": "Tool identity, intent, and chain families." }, "_ui": { "description": "Chart, table, and follow-up presentation metadata." }, "answer": { "description": "Answer grounded in the returned data.", "type": "string" }, "display": { "description": "Labels for presenting the result." }, "error": { "additionalProperties": {}, "description": "Structured failure details.", "properties": { "code": { "type": "string" }, "origin": { "type": "string" }, "retry_after_ms": { "type": "number" }, "retryable": { "type": "boolean" }, "suggestions": { "items": { "type": "string" }, "type": "array" }, "summary": { "type": "string" } }, "required": [ "code", "origin", "summary", "retryable", "suggestions" ], "type": "object" }, "investigation": { "description": "Evidence paths, pivots, and limitations." }, "items": { "description": "Primary rows for list results.", "items": {}, "type": "array" }, "next_steps": { "description": "Safe follow-up actions and continuation guidance." }, "pipes_handoff": { "description": "SQD Pipes guidance for custom data needs." }, "value": { "description": "Primary scalar result." } }, "type": "object" } }, { "description": "Query raw Tron transactions: native TRX transfers, TRC-10 asset transfers, TriggerSmartContract calls by contract and method, or any contract type, with optional inline logs and internal transactions.\n\nCOMMON USER ASKS:\n- Recent native TRX transfers\n- USDT transfer calls in a block window\n- TRX sent from one wallet\n\nFIRST CHOICE FOR:\n- native TRX transfers, TRC-10 transfers, and smart-contract calls on Tron\n- who sent TRX to an address on Tron, or which wallets called a Tron contract\n\nWHEN TO USE:\n- You need raw Tron transaction records with sender, recipient, amount in TRX, fee, energy, and success.\n- You want native TRX transfers to or from a wallet in a bounded window.\n- You want calls to a Tron contract such as USDT filtered by method (transfer, approve) or caller.\n- You want TRC-10 asset transfers by asset id.\n\nDON'T USE:\n- You need TRC-20 token events; those are logs, so use portal_tron_query_logs.\n- You need an Ethereum-compatible network; use portal_evm_query_transactions.\n\nEXAMPLES:\n- Recent native TRX transfers: {\"network\":\"tron-mainnet\",\"timeframe\":\"5m\",\"kind\":\"transfer\",\"limit\":20}\n- USDT transfer calls in a block window: {\"network\":\"tron-mainnet\",\"from_block\":84000000,\"to_block\":84000010,\"contract_addresses\":[\"TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t\"],\"method\":\"transfer\",\"limit\":20}\n- TRX sent from one wallet: {\"network\":\"tron-mainnet\",\"timeframe\":\"1h\",\"kind\":\"transfer\",\"from_addresses\":[\"TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t\"],\"limit\":20}", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "asset": { "description": "FILTER (transfer_asset): TRC-10 asset id such as 1005157, or the raw hex asset name.", "items": { "type": "string" }, "type": "array" }, "contract_addresses": { "description": "FILTER (trigger_smart_contract): called contract addresses in any accepted form, e.g. USDT.", "items": { "type": "string" }, "type": "array" }, "cursor": { "description": "Continuation cursor from a previous response", "type": "string" }, "finalized_only": { "default": false, "description": "Only query finalized blocks", "type": "boolean" }, "from_addresses": { "description": "FILTER: sender or caller addresses. Accepts Base58 (T...), 41-prefixed hex, or 0x/bare 20-byte hex.", "items": { "type": "string" }, "type": "array" }, "from_block": { "description": "Starting block number", "type": "number" }, "from_timestamp": { "anyOf": [ { "type": "number" }, { "type": "string" } ], "description": "Starting timestamp. Accepts Unix seconds, Unix milliseconds, ISO datetime, or relative input like \"1h ago\"." }, "include_internal_transactions": { "default": false, "description": "Attach the internal transactions of each transaction", "type": "boolean" }, "include_logs": { "default": false, "description": "Attach the event logs each transaction emitted", "type": "boolean" }, "kind": { "default": "auto", "description": "Which Tron transaction family to query: transfer (native TRX), transfer_asset (TRC-10), trigger_smart_contract (contract calls), all (any contract type, filter by types only). auto picks from the filters you pass.", "enum": [ "auto", "all", "transfer", "transfer_asset", "trigger_smart_contract" ], "type": "string" }, "limit": { "default": 20, "description": "Max transactions to return (default: 20, max: 25)", "maximum": 25, "minimum": 1, "type": "integer" }, "max_scan_blocks": { "description": "Safety cap for filtered latest-first scans. Default: min(window, 50000).", "maximum": 500000, "minimum": 1, "type": "integer" }, "method": { "anyOf": [ { "type": "string" }, { "items": { "type": "string" }, "type": "array" } ], "description": "FILTER (trigger_smart_contract): method alias such as transfer, approve, transferFrom, or a 4-byte sighash." }, "network": { "description": "Network name (default: tron-mainnet). Optional when continuing with cursor.", "type": "string" }, "response_format": { "description": "Response format: defaults to 'compact' for chat-friendly output. Use 'summary' for counts by type, TRX moved, and top callers.", "enum": [ "full", "compact", "summary" ], "type": "string" }, "sighash": { "description": "FILTER (trigger_smart_contract): 4-byte method selectors, with or without 0x. Merges with method.", "items": { "type": "string" }, "type": "array" }, "timeframe": { "description": "Time range (e.g., '5m', '1h'). Alternative to from_block/to_block.", "type": "string" }, "to_addresses": { "description": "FILTER (transfer, transfer_asset): recipient addresses in any accepted form.", "items": { "type": "string" }, "type": "array" }, "to_block": { "description": "Ending block number. Tron produces a block every 3 seconds.", "type": "number" }, "to_timestamp": { "anyOf": [ { "type": "number" }, { "type": "string" } ], "description": "Ending timestamp. Accepts Unix seconds, Unix milliseconds, ISO datetime, or relative input like \"now\"." }, "types": { "description": "FILTER (kind=all): Tron contract types such as TransferContract, TriggerSmartContract, DelegateResourceContract.", "items": { "type": "string" }, "type": "array" } }, "type": "object" }, "name": "portal_tron_query_transactions", "outputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": {}, "properties": { "_app": { "description": "SQD Explorer identity and host-render state." }, "_coverage": { "description": "Window and result completeness." }, "_evidence": { "description": "Replayable arguments, digest, row count, and receipt." }, "_execution": { "description": "Bounded execution and scan details." }, "_freshness": { "description": "Freshness and finality." }, "_llm": { "description": "Hints to locate the primary evidence." }, "_meta": { "description": "Network, block range, timing, and row counts." }, "_notice": { "description": "Limitation or truncation notice.", "type": "string" }, "_notices": { "description": "Limitation or truncation notices.", "items": { "type": "string" }, "type": "array" }, "_ordering": { "description": "Ordering guarantees." }, "_pagination": { "description": "Pagination state and next_cursor." }, "_server": { "additionalProperties": false, "description": "SQD server name, exact version, and git commit.", "properties": { "commit": { "type": "string" }, "name": { "type": "string" }, "version": { "type": "string" } }, "required": [ "name", "version", "commit" ], "type": "object" }, "_summary": { "description": "Human-readable summary.", "type": "string" }, "_tool_contract": { "description": "Tool identity, intent, and chain families." }, "_ui": { "description": "Chart, table, and follow-up presentation metadata." }, "answer": { "description": "Answer grounded in the returned data.", "type": "string" }, "display": { "description": "Labels for presenting the result." }, "error": { "additionalProperties": {}, "description": "Structured failure details.", "properties": { "code": { "type": "string" }, "origin": { "type": "string" }, "retry_after_ms": { "type": "number" }, "retryable": { "type": "boolean" }, "suggestions": { "items": { "type": "string" }, "type": "array" }, "summary": { "type": "string" } }, "required": [ "code", "origin", "summary", "retryable", "suggestions" ], "type": "object" }, "investigation": { "description": "Evidence paths, pivots, and limitations." }, "items": { "description": "Primary rows for list results.", "items": {}, "type": "array" }, "next_steps": { "description": "Safe follow-up actions and continuation guidance." }, "pipes_handoff": { "description": "SQD Pipes guidance for custom data needs." }, "value": { "description": "Primary scalar result." } }, "type": "object" } } ] }
Verify it yourselfcurl -s https://api.teppi.xyz/v1/evidence/sha256:89c5472611a2a9dd826c47ca07779b4b63e488de02eb820e4111c11a1e707be5 | sha256sum