changedOutput schema / (root)
Previous value: -nullNew value: +{
+ "$defs": {
+ "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"
+ },
+ "NftCollectionHolding": {
+ "description": "Represents an address's holding in a single NFT collection.",
+ "properties": {
+ "amount": {
+ "description": "The number of tokens from this collection owned by the address.",
+ "title": "Amount",
+ "type": "string"
+ },
+ "collection": {
+ "$ref": "#/$defs/NftCollectionInfo",
+ "description": "The details of the NFT collection."
+ },
+ "token_instances": {
+ "description": "A list of the specific NFT instances owned by the address.",
+ "items": {
+ "$ref": "#/$defs/NftTokenInstance"
+ },
+ "title": "Token Instances",
+ "type": "array"
+ }
+ },
+ "required": [
+ "collection",
+ "amount",
+ "token_instances"
+ ],
+ "title": "NftCollectionHolding",
+ "type": "object"
+ },
+ "NftCollectionInfo": {
+ "description": "Represents the metadata for an NFT collection.",
+ "properties": {
+ "address": {
+ "description": "The smart contract address of the NFT collection.",
+ "title": "Address",
+ "type": "string"
+ },
+ "holders_count": {
+ "description": "The number of unique addresses that hold a token from this collection.",
+ "title": "Holders Count",
+ "type": "integer"
+ },
+ "name": {
+ "anyOf": [
+ {
+ "type": "string"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "default": null,
+ "description": "The name of the collection.",
+ "title": "Name"
+ },
+ "symbol": {
+ "anyOf": [
+ {
+ "type": "string"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "default": null,
+ "description": "The symbol of the collection.",
+ "title": "Symbol"
+ },
+ "total_supply": {
+ "description": "The total number of tokens in the collection.",
+ "title": "Total Supply",
+ "type": "integer"
+ },
+ "type": {
+ "description": "The token standard of the collection.",
+ "title": "Type",
+ "type": "string"
+ }
+ },
+ "required": [
+ "type",
+ "address",
+ "holders_count",
+ "total_supply"
+ ],
+ "title": "NftCollectionInfo",
+ "type": "object"
+ },
+ "NftTokenInstance": {
+ "description": "Represents a single NFT instance with its metadata.",
+ "properties": {
+ "description": {
+ "anyOf": [
+ {
+ "type": "string"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "default": null,
+ "description": "The description of the NFT, extracted from its metadata.",
+ "title": "Description"
+ },
+ "external_app_url": {
+ "anyOf": [
+ {
+ "type": "string"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "default": null,
+ "description": "A URL to an external site or application related to the NFT.",
+ "title": "External App Url"
+ },
+ "id": {
+ "description": "The unique identifier of the NFT token instance.",
+ "title": "Id",
+ "type": "string"
+ },
+ "image_url": {
+ "anyOf": [
+ {
+ "type": "string"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "default": null,
+ "description": "A URL for the NFT's image, from its metadata.",
+ "title": "Image Url"
+ },
+ "metadata_attributes": {
+ "anyOf": [
+ {
+ "items": {},
+ "type": "array"
+ },
+ {
+ "additionalProperties": true,
+ "type": "object"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "default": null,
+ "description": "The metadata attributes (traits) associated with the NFT.",
+ "title": "Metadata Attributes"
+ },
+ "name": {
+ "anyOf": [
+ {
+ "type": "string"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "default": null,
+ "description": "The name of the NFT, extracted from its metadata.",
+ "title": "Name"
+ }
+ },
+ "required": [
+ "id"
+ ],
+ "title": "NftTokenInstance",
+ "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": {
+ "description": "The main data payload of the tool's response.",
+ "items": {
+ "$ref": "#/$defs/NftCollectionHolding"
+ },
+ "title": "Data",
+ "type": "array"
+ },
+ "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[list[NftCollectionHolding]]",
+ "type": "object"
+}