changedOutput schema / (root)
Previous value: -nullNew value: +{
+ "$defs": {
+ "ChainIdGuidance": {
+ "description": "A structured representation of chain ID guidance combining rules and recommendations.",
+ "properties": {
+ "recommended_chains": {
+ "description": "A list of popular chains with their names and IDs, useful for quick lookups.",
+ "items": {
+ "$ref": "#/$defs/ChainInfo"
+ },
+ "title": "Recommended Chains",
+ "type": "array"
+ },
+ "rules": {
+ "description": "Rules for chain ID selection and usage.",
+ "title": "Rules",
+ "type": "string"
+ }
+ },
+ "required": [
+ "rules",
+ "recommended_chains"
+ ],
+ "title": "ChainIdGuidance",
+ "type": "object"
+ },
+ "ChainInfo": {
+ "description": "Represents a blockchain with its essential identifiers.",
+ "properties": {
+ "chain_id": {
+ "description": "The unique identifier for the chain.",
+ "title": "Chain Id",
+ "type": "string"
+ },
+ "ecosystem": {
+ "anyOf": [
+ {
+ "type": "string"
+ },
+ {
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "description": "The ecosystem the chain belongs to, if applicable (e.g., 'Ethereum').",
+ "title": "Ecosystem"
+ },
+ "is_testnet": {
+ "description": "Indicates if the chain is a testnet.",
+ "title": "Is Testnet",
+ "type": "boolean"
+ },
+ "name": {
+ "description": "The common name of the blockchain (e.g., 'Ethereum').",
+ "title": "Name",
+ "type": "string"
+ },
+ "native_currency": {
+ "anyOf": [
+ {
+ "type": "string"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "description": "The native currency symbol of the chain (e.g., 'ETH').",
+ "title": "Native Currency"
+ },
+ "settlement_layer_chain_id": {
+ "anyOf": [
+ {
+ "type": "string"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "default": null,
+ "description": "The L1 chain ID where this rollup settles, if applicable.",
+ "title": "Settlement Layer Chain Id"
+ }
+ },
+ "required": [
+ "name",
+ "chain_id",
+ "is_testnet",
+ "native_currency",
+ "ecosystem"
+ ],
+ "title": "ChainInfo",
+ "type": "object"
+ },
+ "DirectApiCommonGroup": {
+ "description": "Represents a group of common endpoints available on all chains.",
+ "properties": {
+ "endpoints": {
+ "description": "List of endpoints in this group.",
+ "items": {
+ "$ref": "#/$defs/DirectApiEndpoint"
+ },
+ "title": "Endpoints",
+ "type": "array"
+ },
+ "group": {
+ "description": "The functional group name (e.g., 'Stats', 'Tokens & NFTs').",
+ "title": "Group",
+ "type": "string"
+ }
+ },
+ "required": [
+ "group",
+ "endpoints"
+ ],
+ "title": "DirectApiCommonGroup",
+ "type": "object"
+ },
+ "DirectApiEndpoint": {
+ "description": "Represents a single direct API endpoint.",
+ "properties": {
+ "description": {
+ "description": "A description of what this endpoint returns.",
+ "title": "Description",
+ "type": "string"
+ },
+ "path": {
+ "description": "The API endpoint path (e.g., '/api/v2/stats').",
+ "title": "Path",
+ "type": "string"
+ }
+ },
+ "required": [
+ "path",
+ "description"
+ ],
+ "title": "DirectApiEndpoint",
+ "type": "object"
+ },
+ "DirectApiEndpointList": {
+ "description": "Contains the complete curated list of endpoints for direct_api_call tool.",
+ "properties": {
+ "common": {
+ "description": "Endpoint groups available on all supported chains.",
+ "items": {
+ "$ref": "#/$defs/DirectApiCommonGroup"
+ },
+ "title": "Common",
+ "type": "array"
+ },
+ "specific": {
+ "description": "Endpoint groups specific to certain chain families.",
+ "items": {
+ "$ref": "#/$defs/DirectApiSpecificGroup"
+ },
+ "title": "Specific",
+ "type": "array"
+ }
+ },
+ "required": [
+ "common",
+ "specific"
+ ],
+ "title": "DirectApiEndpointList",
+ "type": "object"
+ },
+ "DirectApiSpecificGroup": {
+ "description": "Represents a group of endpoints specific to certain chain families.",
+ "properties": {
+ "chain_family": {
+ "description": "The chain family this group applies to (e.g., 'Arbitrum', 'Optimism').",
+ "title": "Chain Family",
+ "type": "string"
+ },
+ "endpoints": {
+ "description": "List of chain-specific endpoints.",
+ "items": {
+ "$ref": "#/$defs/DirectApiEndpoint"
+ },
+ "title": "Endpoints",
+ "type": "array"
+ }
+ },
+ "required": [
+ "chain_family",
+ "endpoints"
+ ],
+ "title": "DirectApiSpecificGroup",
+ "type": "object"
+ },
+ "InstructionsData": {
+ "description": "A structured representation of the server's operational instructions.",
+ "properties": {
+ "binary_search_rules": {
+ "description": "Rules for using binary search for historical blockchain data.",
+ "title": "Binary Search Rules",
+ "type": "string"
+ },
+ "chain_id_guidance": {
+ "$ref": "#/$defs/ChainIdGuidance",
+ "description": "Comprehensive guidance for chain ID selection and usage."
+ },
+ "data_ordering_and_resumption_rules": {
+ "description": "Rules for understanding data ordering and resuming searches from anchor points.",
+ "title": "Data Ordering And Resumption Rules",
+ "type": "string"
+ },
+ "direct_api_call_rules": {
+ "description": "Rules and guidance for using the direct_api_call tool.",
+ "title": "Direct Api Call Rules",
+ "type": "string"
+ },
+ "direct_api_endpoints": {
+ "$ref": "#/$defs/DirectApiEndpointList",
+ "description": "Curated list of endpoints available for direct API calls."
+ },
+ "error_handling_rules": {
+ "description": "Rules for handling network errors and retries.",
+ "title": "Error Handling Rules",
+ "type": "string"
+ },
+ "funds_movement_rules": {
+ "description": "Rules for analyzing funds movement and transfer activity.",
+ "title": "Funds Movement Rules",
+ "type": "string"
+ },
+ "pagination_rules": {
+ "description": "Rules for handling paginated responses and data retrieval.",
+ "title": "Pagination Rules",
+ "type": "string"
+ },
+ "portfolio_analysis_rules": {
+ "description": "Rules for conducting comprehensive portfolio analysis.",
+ "title": "Portfolio Analysis Rules",
+ "type": "string"
+ },
+ "time_based_query_rules": {
+ "description": "Rules for executing time-based blockchain queries efficiently.",
+ "title": "Time Based Query Rules",
+ "type": "string"
+ },
+ "version": {
+ "description": "The version of the Blockscout MCP server.",
+ "title": "Version",
+ "type": "string"
+ }
+ },
+ "required": [
+ "version",
+ "error_handling_rules",
+ "chain_id_guidance",
+ "pagination_rules",
+ "time_based_query_rules",
+ "binary_search_rules",
+ "portfolio_analysis_rules",
+ "funds_movement_rules",
+ "data_ordering_and_resumption_rules",
+ "direct_api_call_rules",
+ "direct_api_endpoints"
+ ],
+ "title": "InstructionsData",
+ "type": "object"
+ },
+ "NextCallInfo": {
+ "description": "A structured representation of the tool call required to get the next page.",
+ "properties": {
+ "params": {
+ "additionalProperties": true,
+ "description": "A complete dictionary of parameters for the next tool call, including the new cursor.",
+ "title": "Params",
+ "type": "object"
+ },
+ "tool_name": {
+ "description": "The name of the tool to call for the next page.",
+ "title": "Tool Name",
+ "type": "string"
+ }
+ },
+ "required": [
+ "tool_name",
+ "params"
+ ],
+ "title": "NextCallInfo",
+ "type": "object"
+ },
+ "PaginationInfo": {
+ "description": "Contains the structured information needed to retrieve the next page of results.",
+ "properties": {
+ "next_call": {
+ "$ref": "#/$defs/NextCallInfo",
+ "description": "The structured tool call required to fetch the subsequent page."
+ }
+ },
+ "required": [
+ "next_call"
+ ],
+ "title": "PaginationInfo",
+ "type": "object"
+ }
+ },
+ "properties": {
+ "content_text": {
+ "anyOf": [
+ {
+ "type": "string"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "default": null,
+ "description": "Optional human-readable summary used for MCP content responses.",
+ "title": "Content Text"
+ },
+ "data": {
+ "$ref": "#/$defs/InstructionsData",
+ "description": "The main data payload of the tool's response."
+ },
+ "data_description": {
+ "anyOf": [
+ {
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "default": null,
+ "description": "A list of notes explaining the structure, fields, or conventions of the 'data' payload.",
+ "title": "Data Description"
+ },
+ "instructions": {
+ "anyOf": [
+ {
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "default": null,
+ "description": "A list of suggested follow-up actions or instructions for the LLM to plan its next steps.",
+ "title": "Instructions"
+ },
+ "notes": {
+ "anyOf": [
+ {
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "default": null,
+ "description": "A list of important contextual notes, such as warnings about data truncation or data quality issues.",
+ "title": "Notes"
+ },
+ "pagination": {
+ "anyOf": [
+ {
+ "$ref": "#/$defs/PaginationInfo"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "default": null,
+ "description": "Pagination information, present only if the 'data' is a single page of a larger result set."
+ }
+ },
+ "required": [
+ "data"
+ ],
+ "title": "ToolResponse[InstructionsData]",
+ "type": "object"
+}