{ "$comment": "MCP tool definitions for the core tier of the Ethereum JSON-RPC profile. Generated by scripts/build-artifacts.py \u2014 do not hand-edit. SPDX-License-Identifier: CC-BY-NC-SA-4.0", "standard": "eth-jsonrpc", "tier": "core", "tools": [ { "name": "eth_accounts", "description": "Returns a list of addresses owned by client. Core-tier method: served by 85.7% of probed public endpoints.", "inputSchema": { "type": "object", "properties": { "endpoint": { "type": "string", "format": "uri", "description": "The JSON-RPC endpoint to call." }, "params": { "type": "array", "title": "eth_accounts params", "description": "Returns a list of addresses owned by client.", "minItems": 0, "maxItems": 0, "prefixItems": [], "items": false } }, "required": [ "endpoint" ] }, "_meta": { "apicommons.org/standard": "eth-jsonrpc", "apicommons.org/tier": "core", "apicommons.org/method": "eth_accounts" } }, { "name": "eth_blobBaseFee", "description": "Returns the base fee per blob gas in wei. Core-tier method: served by 52.4% of probed public endpoints.", "inputSchema": { "type": "object", "properties": { "endpoint": { "type": "string", "format": "uri", "description": "The JSON-RPC endpoint to call." }, "params": { "type": "array", "title": "eth_blobBaseFee params", "description": "Returns the base fee per blob gas in wei.", "minItems": 0, "maxItems": 0, "prefixItems": [], "items": false } }, "required": [ "endpoint" ] }, "_meta": { "apicommons.org/standard": "eth-jsonrpc", "apicommons.org/tier": "core", "apicommons.org/method": "eth_blobBaseFee" } }, { "name": "eth_blockNumber", "description": "Returns the number of most recent block. Core-tier method: served by 95.2% of probed public endpoints.", "inputSchema": { "type": "object", "properties": { "endpoint": { "type": "string", "format": "uri", "description": "The JSON-RPC endpoint to call." }, "params": { "type": "array", "title": "eth_blockNumber params", "description": "Returns the number of most recent block.", "minItems": 0, "maxItems": 0, "prefixItems": [], "items": false } }, "required": [ "endpoint" ] }, "_meta": { "apicommons.org/standard": "eth-jsonrpc", "apicommons.org/tier": "core", "apicommons.org/method": "eth_blockNumber" } }, { "name": "eth_call", "description": "Executes a new message call immediately without creating a transaction on the block chain. Core-tier method: served by 90.5% of probed public endpoints.", "inputSchema": { "type": "object", "properties": { "endpoint": { "type": "string", "format": "uri", "description": "The JSON-RPC endpoint to call." }, "params": { "type": "array", "title": "eth_call params", "description": "Executes a new message call immediately without creating a transaction on the block chain.", "minItems": 1, "maxItems": 2, "prefixItems": [ { "additionalProperties": false, "properties": { "accessList": { "description": "EIP-2930 access list", "items": { "additionalProperties": false, "properties": { "address": { "pattern": "^0x[0-9a-fA-F]{40}$", "title": "hex encoded address", "type": "string" }, "storageKeys": { "items": { "pattern": "^0x[0-9a-f]{64}$", "title": "32 byte hex value", "type": "string" }, "type": "array" } }, "required": [ "address", "storageKeys" ], "title": "Access list entry", "type": "object" }, "title": "accessList", "type": "array" }, "authorizationList": { "description": "EIP-7702 authorization list", "items": { "properties": { "address": { "pattern": "^0x[0-9a-fA-F]{40}$", "title": "hex encoded address", "type": "string" }, "chainId": { "description": "Chain ID on which this transaction is valid", "pattern": "^0x(0|[1-9a-f][0-9a-f]*)$", "title": "chainId", "type": "string" }, "nonce": { "pattern": "^0x(0|[1-9a-f][0-9a-f]*)$", "title": "nonce", "type": "string" }, "r": { "pattern": "^0x(0|[1-9a-f][0-9a-f]{0,63})$", "title": "r", "type": "string" }, "s": { "pattern": "^0x(0|[1-9a-f][0-9a-f]{0,63})$", "title": "s", "type": "string" }, "yParity": { "description": "The parity (0 for even, 1 for odd) of the y-value of the secp256k1 signature", "pattern": "^0x([0-9a-fA-F]?){1,2}$", "title": "yParity", "type": "string" } }, "required": [ "chainId", "nonce", "address", "yParity", "r", "s" ], "type": "object" }, "title": "authorizationList", "type": "array" }, "blobVersionedHashes": { "description": "List of versioned blob hashes associated with the transaction's EIP-4844 data blobs.", "items": { "pattern": "^0x[0-9a-f]{64}$", "title": "32 byte hex value", "type": "string" }, "title": "blobVersionedHashes", "type": "array" }, "blobs": { "description": "Raw blob data.", "items": { "pattern": "^0x[0-9a-f]*$", "title": "hex encoded bytes", "type": "string" }, "title": "blobs", "type": "array" }, "chainId": { "description": "Chain ID that this transaction is valid on.", "pattern": "^0x(0|[1-9a-f][0-9a-f]*)$", "title": "chainId", "type": "string" }, "from": { "pattern": "^0x[0-9a-fA-F]{40}$", "title": "from address", "type": "string" }, "gas": { "pattern": "^0x(0|[1-9a-f][0-9a-f]*)$", "title": "gas limit", "type": "string" }, "gasPrice": { "description": "The gas price willing to be paid by the sender in wei", "pattern": "^0x(0|[1-9a-f][0-9a-f]*)$", "title": "gas price", "type": "string" }, "input": { "pattern": "^0x[0-9a-f]*$", "title": "input data", "type": "string" }, "maxFeePerBlobGas": { "description": "The maximum total fee per gas the sender is willing to pay for blob gas in wei", "pattern": "^0x(0|[1-9a-f][0-9a-f]*)$", "title": "max fee per blob gas", "type": "string" }, "maxFeePerGas": { "description": "The maximum total fee per gas the sender is willing to pay (includes the network / base fee and miner / priority fee) in wei", "pattern": "^0x(0|[1-9a-f][0-9a-f]*)$", "title": "max fee per gas", "type": "string" }, "maxPriorityFeePerGas": { "description": "Maximum fee per gas the sender is willing to pay to miners in wei", "pattern": "^0x(0|[1-9a-f][0-9a-f]*)$", "title": "max priority fee per gas", "type": "string" }, "nonce": { "pattern": "^0x(0|[1-9a-f][0-9a-f]*)$", "title": "nonce", "type": "string" }, "to": { "oneOf": [ { "title": "Contract Creation (null)", "type": "null" }, { "pattern": "^0x[0-9a-fA-F]{40}$", "title": "Address", "type": "string" } ], "title": "to address" }, "type": { "pattern": "^0x([0-9a-fA-F]?){1,2}$", "title": "type", "type": "string" }, "value": { "pattern": "^0x(0|[1-9a-f][0-9a-f]*)$", "title": "value", "type": "string" } }, "title": "Transaction", "type": "object" }, { "anyOf": [ { "pattern": "^0x(0|[1-9a-f][0-9a-f]*)$", "title": "Block number", "type": "string" }, { "description": "`earliest`: The lowest numbered block the client has available; `finalized`: The most recent crypto-economically secure block, cannot be re-orged outside of manual intervention driven by community coordination; `safe`: The most recent block that is safe from re-orgs under honest majority and certain synchronicity assumptions; `latest`: The most recent block in the canonical chain observed by the client, this block may be re-orged out of the canonical chain even under healthy/normal conditions; `pending`: A sample next block built by the client on top of `latest` and containing the set of transactions usually taken from local mempool. Before the merge transition is finalized, any call querying for `finalized` or `safe` block MUST be responded to with `-39001: Unknown block` error", "enum": [ "earliest", "finalized", "safe", "latest", "pending" ], "title": "Block tag", "type": "string" }, { "pattern": "^0x[0-9a-f]{64}$", "title": "Block hash", "type": "string" } ], "title": "Block" } ], "items": false } }, "required": [ "endpoint" ] }, "_meta": { "apicommons.org/standard": "eth-jsonrpc", "apicommons.org/tier": "core", "apicommons.org/method": "eth_call" } }, { "name": "eth_chainId", "description": "Returns the chain ID of the current network. Core-tier method: served by 95.2% of probed public endpoints.", "inputSchema": { "type": "object", "properties": { "endpoint": { "type": "string", "format": "uri", "description": "The JSON-RPC endpoint to call." }, "params": { "type": "array", "title": "eth_chainId params", "description": "Returns the chain ID of the current network.", "minItems": 0, "maxItems": 0, "prefixItems": [], "items": false } }, "required": [ "endpoint" ] }, "_meta": { "apicommons.org/standard": "eth-jsonrpc", "apicommons.org/tier": "core", "apicommons.org/method": "eth_chainId" } }, { "name": "eth_createAccessList", "description": "Generates an access list for a transaction. Core-tier method: served by 57.1% of probed public endpoints.", "inputSchema": { "type": "object", "properties": { "endpoint": { "type": "string", "format": "uri", "description": "The JSON-RPC endpoint to call." }, "params": { "type": "array", "title": "eth_createAccessList params", "description": "Generates an access list for a transaction.", "minItems": 1, "maxItems": 2, "prefixItems": [ { "additionalProperties": false, "properties": { "accessList": { "description": "EIP-2930 access list", "items": { "additionalProperties": false, "properties": { "address": { "pattern": "^0x[0-9a-fA-F]{40}$", "title": "hex encoded address", "type": "string" }, "storageKeys": { "items": { "pattern": "^0x[0-9a-f]{64}$", "title": "32 byte hex value", "type": "string" }, "type": "array" } }, "required": [ "address", "storageKeys" ], "title": "Access list entry", "type": "object" }, "title": "accessList", "type": "array" }, "authorizationList": { "description": "EIP-7702 authorization list", "items": { "properties": { "address": { "pattern": "^0x[0-9a-fA-F]{40}$", "title": "hex encoded address", "type": "string" }, "chainId": { "description": "Chain ID on which this transaction is valid", "pattern": "^0x(0|[1-9a-f][0-9a-f]*)$", "title": "chainId", "type": "string" }, "nonce": { "pattern": "^0x(0|[1-9a-f][0-9a-f]*)$", "title": "nonce", "type": "string" }, "r": { "pattern": "^0x(0|[1-9a-f][0-9a-f]{0,63})$", "title": "r", "type": "string" }, "s": { "pattern": "^0x(0|[1-9a-f][0-9a-f]{0,63})$", "title": "s", "type": "string" }, "yParity": { "description": "The parity (0 for even, 1 for odd) of the y-value of the secp256k1 signature", "pattern": "^0x([0-9a-fA-F]?){1,2}$", "title": "yParity", "type": "string" } }, "required": [ "chainId", "nonce", "address", "yParity", "r", "s" ], "type": "object" }, "title": "authorizationList", "type": "array" }, "blobVersionedHashes": { "description": "List of versioned blob hashes associated with the transaction's EIP-4844 data blobs.", "items": { "pattern": "^0x[0-9a-f]{64}$", "title": "32 byte hex value", "type": "string" }, "title": "blobVersionedHashes", "type": "array" }, "blobs": { "description": "Raw blob data.", "items": { "pattern": "^0x[0-9a-f]*$", "title": "hex encoded bytes", "type": "string" }, "title": "blobs", "type": "array" }, "chainId": { "description": "Chain ID that this transaction is valid on.", "pattern": "^0x(0|[1-9a-f][0-9a-f]*)$", "title": "chainId", "type": "string" }, "from": { "pattern": "^0x[0-9a-fA-F]{40}$", "title": "from address", "type": "string" }, "gas": { "pattern": "^0x(0|[1-9a-f][0-9a-f]*)$", "title": "gas limit", "type": "string" }, "gasPrice": { "description": "The gas price willing to be paid by the sender in wei", "pattern": "^0x(0|[1-9a-f][0-9a-f]*)$", "title": "gas price", "type": "string" }, "input": { "pattern": "^0x[0-9a-f]*$", "title": "input data", "type": "string" }, "maxFeePerBlobGas": { "description": "The maximum total fee per gas the sender is willing to pay for blob gas in wei", "pattern": "^0x(0|[1-9a-f][0-9a-f]*)$", "title": "max fee per blob gas", "type": "string" }, "maxFeePerGas": { "description": "The maximum total fee per gas the sender is willing to pay (includes the network / base fee and miner / priority fee) in wei", "pattern": "^0x(0|[1-9a-f][0-9a-f]*)$", "title": "max fee per gas", "type": "string" }, "maxPriorityFeePerGas": { "description": "Maximum fee per gas the sender is willing to pay to miners in wei", "pattern": "^0x(0|[1-9a-f][0-9a-f]*)$", "title": "max priority fee per gas", "type": "string" }, "nonce": { "pattern": "^0x(0|[1-9a-f][0-9a-f]*)$", "title": "nonce", "type": "string" }, "to": { "oneOf": [ { "title": "Contract Creation (null)", "type": "null" }, { "pattern": "^0x[0-9a-fA-F]{40}$", "title": "Address", "type": "string" } ], "title": "to address" }, "type": { "pattern": "^0x([0-9a-fA-F]?){1,2}$", "title": "type", "type": "string" }, "value": { "pattern": "^0x(0|[1-9a-f][0-9a-f]*)$", "title": "value", "type": "string" } }, "title": "Transaction", "type": "object" }, { "oneOf": [ { "pattern": "^0x(0|[1-9a-f][0-9a-f]*)$", "title": "Block number", "type": "string" }, { "description": "`earliest`: The lowest numbered block the client has available; `finalized`: The most recent crypto-economically secure block, cannot be re-orged outside of manual intervention driven by community coordination; `safe`: The most recent block that is safe from re-orgs under honest majority and certain synchronicity assumptions; `latest`: The most recent block in the canonical chain observed by the client, this block may be re-orged out of the canonical chain even under healthy/normal conditions; `pending`: A sample next block built by the client on top of `latest` and containing the set of transactions usually taken from local mempool. Before the merge transition is finalized, any call querying for `finalized` or `safe` block MUST be responded to with `-39001: Unknown block` error", "enum": [ "earliest", "finalized", "safe", "latest", "pending" ], "title": "Block tag", "type": "string" } ], "title": "Block" } ], "items": false } }, "required": [ "endpoint" ] }, "_meta": { "apicommons.org/standard": "eth-jsonrpc", "apicommons.org/tier": "core", "apicommons.org/method": "eth_createAccessList" } }, { "name": "eth_estimateGas", "description": "Generates and returns an estimate of how much gas is necessary to allow the transaction to complete. Core-tier method: served by 95.2% of probed public endpoints.", "inputSchema": { "type": "object", "properties": { "endpoint": { "type": "string", "format": "uri", "description": "The JSON-RPC endpoint to call." }, "params": { "type": "array", "title": "eth_estimateGas params", "description": "Generates and returns an estimate of how much gas is necessary to allow the transaction to complete.", "minItems": 1, "maxItems": 2, "prefixItems": [ { "additionalProperties": false, "properties": { "accessList": { "description": "EIP-2930 access list", "items": { "additionalProperties": false, "properties": { "address": { "pattern": "^0x[0-9a-fA-F]{40}$", "title": "hex encoded address", "type": "string" }, "storageKeys": { "items": { "pattern": "^0x[0-9a-f]{64}$", "title": "32 byte hex value", "type": "string" }, "type": "array" } }, "required": [ "address", "storageKeys" ], "title": "Access list entry", "type": "object" }, "title": "accessList", "type": "array" }, "authorizationList": { "description": "EIP-7702 authorization list", "items": { "properties": { "address": { "pattern": "^0x[0-9a-fA-F]{40}$", "title": "hex encoded address", "type": "string" }, "chainId": { "description": "Chain ID on which this transaction is valid", "pattern": "^0x(0|[1-9a-f][0-9a-f]*)$", "title": "chainId", "type": "string" }, "nonce": { "pattern": "^0x(0|[1-9a-f][0-9a-f]*)$", "title": "nonce", "type": "string" }, "r": { "pattern": "^0x(0|[1-9a-f][0-9a-f]{0,63})$", "title": "r", "type": "string" }, "s": { "pattern": "^0x(0|[1-9a-f][0-9a-f]{0,63})$", "title": "s", "type": "string" }, "yParity": { "description": "The parity (0 for even, 1 for odd) of the y-value of the secp256k1 signature", "pattern": "^0x([0-9a-fA-F]?){1,2}$", "title": "yParity", "type": "string" } }, "required": [ "chainId", "nonce", "address", "yParity", "r", "s" ], "type": "object" }, "title": "authorizationList", "type": "array" }, "blobVersionedHashes": { "description": "List of versioned blob hashes associated with the transaction's EIP-4844 data blobs.", "items": { "pattern": "^0x[0-9a-f]{64}$", "title": "32 byte hex value", "type": "string" }, "title": "blobVersionedHashes", "type": "array" }, "blobs": { "description": "Raw blob data.", "items": { "pattern": "^0x[0-9a-f]*$", "title": "hex encoded bytes", "type": "string" }, "title": "blobs", "type": "array" }, "chainId": { "description": "Chain ID that this transaction is valid on.", "pattern": "^0x(0|[1-9a-f][0-9a-f]*)$", "title": "chainId", "type": "string" }, "from": { "pattern": "^0x[0-9a-fA-F]{40}$", "title": "from address", "type": "string" }, "gas": { "pattern": "^0x(0|[1-9a-f][0-9a-f]*)$", "title": "gas limit", "type": "string" }, "gasPrice": { "description": "The gas price willing to be paid by the sender in wei", "pattern": "^0x(0|[1-9a-f][0-9a-f]*)$", "title": "gas price", "type": "string" }, "input": { "pattern": "^0x[0-9a-f]*$", "title": "input data", "type": "string" }, "maxFeePerBlobGas": { "description": "The maximum total fee per gas the sender is willing to pay for blob gas in wei", "pattern": "^0x(0|[1-9a-f][0-9a-f]*)$", "title": "max fee per blob gas", "type": "string" }, "maxFeePerGas": { "description": "The maximum total fee per gas the sender is willing to pay (includes the network / base fee and miner / priority fee) in wei", "pattern": "^0x(0|[1-9a-f][0-9a-f]*)$", "title": "max fee per gas", "type": "string" }, "maxPriorityFeePerGas": { "description": "Maximum fee per gas the sender is willing to pay to miners in wei", "pattern": "^0x(0|[1-9a-f][0-9a-f]*)$", "title": "max priority fee per gas", "type": "string" }, "nonce": { "pattern": "^0x(0|[1-9a-f][0-9a-f]*)$", "title": "nonce", "type": "string" }, "to": { "oneOf": [ { "title": "Contract Creation (null)", "type": "null" }, { "pattern": "^0x[0-9a-fA-F]{40}$", "title": "Address", "type": "string" } ], "title": "to address" }, "type": { "pattern": "^0x([0-9a-fA-F]?){1,2}$", "title": "type", "type": "string" }, "value": { "pattern": "^0x(0|[1-9a-f][0-9a-f]*)$", "title": "value", "type": "string" } }, "title": "Transaction", "type": "object" }, { "oneOf": [ { "pattern": "^0x(0|[1-9a-f][0-9a-f]*)$", "title": "Block number", "type": "string" }, { "description": "`earliest`: The lowest numbered block the client has available; `finalized`: The most recent crypto-economically secure block, cannot be re-orged outside of manual intervention driven by community coordination; `safe`: The most recent block that is safe from re-orgs under honest majority and certain synchronicity assumptions; `latest`: The most recent block in the canonical chain observed by the client, this block may be re-orged out of the canonical chain even under healthy/normal conditions; `pending`: A sample next block built by the client on top of `latest` and containing the set of transactions usually taken from local mempool. Before the merge transition is finalized, any call querying for `finalized` or `safe` block MUST be responded to with `-39001: Unknown block` error", "enum": [ "earliest", "finalized", "safe", "latest", "pending" ], "title": "Block tag", "type": "string" } ], "title": "Block" } ], "items": false } }, "required": [ "endpoint" ] }, "_meta": { "apicommons.org/standard": "eth-jsonrpc", "apicommons.org/tier": "core", "apicommons.org/method": "eth_estimateGas" } }, { "name": "eth_feeHistory", "description": "Transaction fee history Core-tier method: served by 90.5% of probed public endpoints.", "inputSchema": { "type": "object", "properties": { "endpoint": { "type": "string", "format": "uri", "description": "The JSON-RPC endpoint to call." }, "params": { "type": "array", "title": "eth_feeHistory params", "description": "Transaction fee history", "minItems": 3, "maxItems": 3, "prefixItems": [ { "pattern": "^0x(0|[1-9a-f][0-9a-f]*)$", "title": "blockCount", "type": "string", "description": "Requested range of blocks. Clients will return less than the requested range if not all blocks are available." }, { "oneOf": [ { "pattern": "^0x(0|[1-9a-f][0-9a-f]*)$", "title": "Block number", "type": "string" }, { "description": "`earliest`: The lowest numbered block the client has available; `finalized`: The most recent crypto-economically secure block, cannot be re-orged outside of manual intervention driven by community coordination; `safe`: The most recent block that is safe from re-orgs under honest majority and certain synchronicity assumptions; `latest`: The most recent block in the canonical chain observed by the client, this block may be re-orged out of the canonical chain even under healthy/normal conditions; `pending`: A sample next block built by the client on top of `latest` and containing the set of transactions usually taken from local mempool. Before the merge transition is finalized, any call querying for `finalized` or `safe` block MUST be responded to with `-39001: Unknown block` error", "enum": [ "earliest", "finalized", "safe", "latest", "pending" ], "title": "Block tag", "type": "string" } ], "title": "newestBlock", "description": "Highest block of the requested range." }, { "items": { "description": "Floating point value between 0 and 100.", "title": "rewardPercentile", "type": "number" }, "title": "rewardPercentiles", "type": "array", "description": "A monotonically increasing list of percentile values. For each block in the requested range, the transactions will be sorted in ascending order by effective tip per gas and the corresponding effective tip for the percentile will be determined, accounting for gas consumed." } ], "items": false } }, "required": [ "endpoint" ] }, "_meta": { "apicommons.org/standard": "eth-jsonrpc", "apicommons.org/tier": "core", "apicommons.org/method": "eth_feeHistory" } }, { "name": "eth_gasPrice", "description": "Returns the current price per gas in wei. Core-tier method: served by 95.2% of probed public endpoints.", "inputSchema": { "type": "object", "properties": { "endpoint": { "type": "string", "format": "uri", "description": "The JSON-RPC endpoint to call." }, "params": { "type": "array", "title": "eth_gasPrice params", "description": "Returns the current price per gas in wei.", "minItems": 0, "maxItems": 0, "prefixItems": [], "items": false } }, "required": [ "endpoint" ] }, "_meta": { "apicommons.org/standard": "eth-jsonrpc", "apicommons.org/tier": "core", "apicommons.org/method": "eth_gasPrice" } }, { "name": "eth_getBalance", "description": "Returns the balance of the account of given address. Core-tier method: served by 90.5% of probed public endpoints.", "inputSchema": { "type": "object", "properties": { "endpoint": { "type": "string", "format": "uri", "description": "The JSON-RPC endpoint to call." }, "params": { "type": "array", "title": "eth_getBalance params", "description": "Returns the balance of the account of given address.", "minItems": 2, "maxItems": 2, "prefixItems": [ { "pattern": "^0x[0-9a-fA-F]{40}$", "title": "Address", "type": "string" }, { "anyOf": [ { "pattern": "^0x(0|[1-9a-f][0-9a-f]*)$", "title": "Block number", "type": "string" }, { "description": "`earliest`: The lowest numbered block the client has available; `finalized`: The most recent crypto-economically secure block, cannot be re-orged outside of manual intervention driven by community coordination; `safe`: The most recent block that is safe from re-orgs under honest majority and certain synchronicity assumptions; `latest`: The most recent block in the canonical chain observed by the client, this block may be re-orged out of the canonical chain even under healthy/normal conditions; `pending`: A sample next block built by the client on top of `latest` and containing the set of transactions usually taken from local mempool. Before the merge transition is finalized, any call querying for `finalized` or `safe` block MUST be responded to with `-39001: Unknown block` error", "enum": [ "earliest", "finalized", "safe", "latest", "pending" ], "title": "Block tag", "type": "string" }, { "pattern": "^0x[0-9a-f]{64}$", "title": "Block hash", "type": "string" } ], "title": "Block" } ], "items": false } }, "required": [ "endpoint" ] }, "_meta": { "apicommons.org/standard": "eth-jsonrpc", "apicommons.org/tier": "core", "apicommons.org/method": "eth_getBalance" } }, { "name": "eth_getBlockByNumber", "description": "Returns information about a block by number. Core-tier method: served by 95.2% of probed public endpoints.", "inputSchema": { "type": "object", "properties": { "endpoint": { "type": "string", "format": "uri", "description": "The JSON-RPC endpoint to call." }, "params": { "type": "array", "title": "eth_getBlockByNumber params", "description": "Returns information about a block by number.", "minItems": 2, "maxItems": 2, "prefixItems": [ { "oneOf": [ { "pattern": "^0x(0|[1-9a-f][0-9a-f]*)$", "title": "Block number", "type": "string" }, { "description": "`earliest`: The lowest numbered block the client has available; `finalized`: The most recent crypto-economically secure block, cannot be re-orged outside of manual intervention driven by community coordination; `safe`: The most recent block that is safe from re-orgs under honest majority and certain synchronicity assumptions; `latest`: The most recent block in the canonical chain observed by the client, this block may be re-orged out of the canonical chain even under healthy/normal conditions; `pending`: A sample next block built by the client on top of `latest` and containing the set of transactions usually taken from local mempool. Before the merge transition is finalized, any call querying for `finalized` or `safe` block MUST be responded to with `-39001: Unknown block` error", "enum": [ "earliest", "finalized", "safe", "latest", "pending" ], "title": "Block tag", "type": "string" } ], "title": "Block" }, { "title": "Hydrated transactions", "type": "boolean" } ], "items": false } }, "required": [ "endpoint" ] }, "_meta": { "apicommons.org/standard": "eth-jsonrpc", "apicommons.org/tier": "core", "apicommons.org/method": "eth_getBlockByNumber" } }, { "name": "eth_getBlockTransactionCountByNumber", "description": "Returns the number of transactions in a block matching the given block number. Core-tier method: served by 95.2% of probed public endpoints.", "inputSchema": { "type": "object", "properties": { "endpoint": { "type": "string", "format": "uri", "description": "The JSON-RPC endpoint to call." }, "params": { "type": "array", "title": "eth_getBlockTransactionCountByNumber params", "description": "Returns the number of transactions in a block matching the given block number.", "minItems": 0, "maxItems": 1, "prefixItems": [ { "oneOf": [ { "pattern": "^0x(0|[1-9a-f][0-9a-f]*)$", "title": "Block number", "type": "string" }, { "description": "`earliest`: The lowest numbered block the client has available; `finalized`: The most recent crypto-economically secure block, cannot be re-orged outside of manual intervention driven by community coordination; `safe`: The most recent block that is safe from re-orgs under honest majority and certain synchronicity assumptions; `latest`: The most recent block in the canonical chain observed by the client, this block may be re-orged out of the canonical chain even under healthy/normal conditions; `pending`: A sample next block built by the client on top of `latest` and containing the set of transactions usually taken from local mempool. Before the merge transition is finalized, any call querying for `finalized` or `safe` block MUST be responded to with `-39001: Unknown block` error", "enum": [ "earliest", "finalized", "safe", "latest", "pending" ], "title": "Block tag", "type": "string" } ], "title": "Block" } ], "items": false } }, "required": [ "endpoint" ] }, "_meta": { "apicommons.org/standard": "eth-jsonrpc", "apicommons.org/tier": "core", "apicommons.org/method": "eth_getBlockTransactionCountByNumber" } }, { "name": "eth_getCode", "description": "Returns code at a given address. Core-tier method: served by 90.5% of probed public endpoints.", "inputSchema": { "type": "object", "properties": { "endpoint": { "type": "string", "format": "uri", "description": "The JSON-RPC endpoint to call." }, "params": { "type": "array", "title": "eth_getCode params", "description": "Returns code at a given address.", "minItems": 2, "maxItems": 2, "prefixItems": [ { "pattern": "^0x[0-9a-fA-F]{40}$", "title": "Address", "type": "string" }, { "anyOf": [ { "pattern": "^0x(0|[1-9a-f][0-9a-f]*)$", "title": "Block number", "type": "string" }, { "description": "`earliest`: The lowest numbered block the client has available; `finalized`: The most recent crypto-economically secure block, cannot be re-orged outside of manual intervention driven by community coordination; `safe`: The most recent block that is safe from re-orgs under honest majority and certain synchronicity assumptions; `latest`: The most recent block in the canonical chain observed by the client, this block may be re-orged out of the canonical chain even under healthy/normal conditions; `pending`: A sample next block built by the client on top of `latest` and containing the set of transactions usually taken from local mempool. Before the merge transition is finalized, any call querying for `finalized` or `safe` block MUST be responded to with `-39001: Unknown block` error", "enum": [ "earliest", "finalized", "safe", "latest", "pending" ], "title": "Block tag", "type": "string" }, { "pattern": "^0x[0-9a-f]{64}$", "title": "Block hash", "type": "string" } ], "title": "Block" } ], "items": false } }, "required": [ "endpoint" ] }, "_meta": { "apicommons.org/standard": "eth-jsonrpc", "apicommons.org/tier": "core", "apicommons.org/method": "eth_getCode" } }, { "name": "eth_getFilterChanges", "description": "Polling method for the filter with the given ID (created using `eth_newFilter`). Returns an array of logs, block hashes, or transaction hashes since last poll, depending on the installed filter. Core-tier method: served by 85.7% of probed public endpoints.", "inputSchema": { "type": "object", "properties": { "endpoint": { "type": "string", "format": "uri", "description": "The JSON-RPC endpoint to call." }, "params": { "type": "array", "title": "eth_getFilterChanges params", "description": "Polling method for the filter with the given ID (created using `eth_newFilter`). Returns an array of logs, block hashes, or transaction hashes since last poll, depending on the installed filter.", "minItems": 1, "maxItems": 1, "prefixItems": [ { "pattern": "^0x(0|[1-9a-f][0-9a-f]*)$", "title": "Filter identifier", "type": "string" } ], "items": false } }, "required": [ "endpoint" ] }, "_meta": { "apicommons.org/standard": "eth-jsonrpc", "apicommons.org/tier": "core", "apicommons.org/method": "eth_getFilterChanges" } }, { "name": "eth_getLogs", "description": "Returns an array of all logs matching the specified filter. Core-tier method: served by 90.5% of probed public endpoints.", "inputSchema": { "type": "object", "properties": { "endpoint": { "type": "string", "format": "uri", "description": "The JSON-RPC endpoint to call." }, "params": { "type": "array", "title": "eth_getLogs params", "description": "Returns an array of all logs matching the specified filter.", "minItems": 1, "maxItems": 1, "prefixItems": [ { "oneOf": [ { "not": { "required": [ "blockHash" ] }, "properties": { "address": { "oneOf": [ { "title": "Any Address", "type": "null" }, { "pattern": "^0x[0-9a-fA-F]{40}$", "title": "Address", "type": "string" }, { "items": { "pattern": "^0x[0-9a-fA-F]{40}$", "title": "hex encoded address", "type": "string" }, "title": "Addresses", "type": "array" } ], "title": "Address(es)" }, "fromBlock": { "pattern": "^0x(0|[1-9a-f][0-9a-f]*)$", "title": "from block", "type": "string" }, "toBlock": { "pattern": "^0x(0|[1-9a-f][0-9a-f]*)$", "title": "to block", "type": "string" }, "topics": { "oneOf": [ { "title": "Any Topic Match", "type": "null" }, { "items": { "oneOf": [ { "pattern": "^0x[0-9a-f]{64}$", "title": "Single Topic Match", "type": "string" }, { "items": { "pattern": "^0x[0-9a-f]{64}$", "title": "32 hex encoded bytes", "type": "string" }, "title": "Multiple Topic Match", "type": "array" } ], "title": "Filter Topic List Entry" }, "title": "Specified Filter Topics", "type": "array" } ], "title": "Topics" } }, "title": "Filter by block range", "type": "object" }, { "properties": { "address": { "oneOf": [ { "title": "Any Address", "type": "null" }, { "pattern": "^0x[0-9a-fA-F]{40}$", "title": "Address", "type": "string" }, { "items": { "pattern": "^0x[0-9a-fA-F]{40}$", "title": "hex encoded address", "type": "string" }, "title": "Addresses", "type": "array" } ], "title": "Address(es)" }, "blockHash": { "pattern": "^0x[0-9a-f]{64}$", "title": "block hash", "type": "string" }, "topics": { "oneOf": [ { "title": "Any Topic Match", "type": "null" }, { "items": { "oneOf": [ { "pattern": "^0x[0-9a-f]{64}$", "title": "Single Topic Match", "type": "string" }, { "items": { "pattern": "^0x[0-9a-f]{64}$", "title": "32 hex encoded bytes", "type": "string" }, "title": "Multiple Topic Match", "type": "array" } ], "title": "Filter Topic List Entry" }, "title": "Specified Filter Topics", "type": "array" } ], "title": "Topics" } }, "required": [ "blockHash" ], "title": "Filter by block hash", "type": "object" } ], "title": "Filter" } ], "items": false } }, "required": [ "endpoint" ] }, "_meta": { "apicommons.org/standard": "eth-jsonrpc", "apicommons.org/tier": "core", "apicommons.org/method": "eth_getLogs" } }, { "name": "eth_getProof", "description": "Returns the merkle proof for a given account and optionally some storage keys. Core-tier method: served by 66.7% of probed public endpoints.", "inputSchema": { "type": "object", "properties": { "endpoint": { "type": "string", "format": "uri", "description": "The JSON-RPC endpoint to call." }, "params": { "type": "array", "title": "eth_getProof params", "description": "Returns the merkle proof for a given account and optionally some storage keys.", "minItems": 3, "maxItems": 3, "prefixItems": [ { "pattern": "^0x[0-9a-fA-F]{40}$", "title": "Address", "type": "string" }, { "items": { "pattern": "^0x[0-9a-f]{0,64}$", "title": "32 hex encoded bytes", "type": "string" }, "title": "StorageKeys", "type": "array" }, { "anyOf": [ { "pattern": "^0x(0|[1-9a-f][0-9a-f]*)$", "title": "Block number", "type": "string" }, { "description": "`earliest`: The lowest numbered block the client has available; `finalized`: The most recent crypto-economically secure block, cannot be re-orged outside of manual intervention driven by community coordination; `safe`: The most recent block that is safe from re-orgs under honest majority and certain synchronicity assumptions; `latest`: The most recent block in the canonical chain observed by the client, this block may be re-orged out of the canonical chain even under healthy/normal conditions; `pending`: A sample next block built by the client on top of `latest` and containing the set of transactions usually taken from local mempool. Before the merge transition is finalized, any call querying for `finalized` or `safe` block MUST be responded to with `-39001: Unknown block` error", "enum": [ "earliest", "finalized", "safe", "latest", "pending" ], "title": "Block tag", "type": "string" }, { "pattern": "^0x[0-9a-f]{64}$", "title": "Block hash", "type": "string" } ], "title": "Block" } ], "items": false } }, "required": [ "endpoint" ] }, "_meta": { "apicommons.org/standard": "eth-jsonrpc", "apicommons.org/tier": "core", "apicommons.org/method": "eth_getProof" } }, { "name": "eth_getTransactionCount", "description": "Returns the nonce of an account in the state. NOTE: The name eth_getTransactionCount reflects the historical fact that an account's nonce and sent transaction count were the same. After the Pectra fork, with the inclusion of EIP-7702, this is no longer true. Core-tier method: served by 95.2% of probed public endpoints.", "inputSchema": { "type": "object", "properties": { "endpoint": { "type": "string", "format": "uri", "description": "The JSON-RPC endpoint to call." }, "params": { "type": "array", "title": "eth_getTransactionCount params", "description": "Returns the nonce of an account in the state. NOTE: The name eth_getTransactionCount reflects the historical fact that an account's nonce and sent transaction count were the same. After the Pectra fork, with the inclusion of EIP-7702, this is no longer true.", "minItems": 2, "maxItems": 2, "prefixItems": [ { "pattern": "^0x[0-9a-fA-F]{40}$", "title": "Address", "type": "string" }, { "anyOf": [ { "pattern": "^0x(0|[1-9a-f][0-9a-f]*)$", "title": "Block number", "type": "string" }, { "description": "`earliest`: The lowest numbered block the client has available; `finalized`: The most recent crypto-economically secure block, cannot be re-orged outside of manual intervention driven by community coordination; `safe`: The most recent block that is safe from re-orgs under honest majority and certain synchronicity assumptions; `latest`: The most recent block in the canonical chain observed by the client, this block may be re-orged out of the canonical chain even under healthy/normal conditions; `pending`: A sample next block built by the client on top of `latest` and containing the set of transactions usually taken from local mempool. Before the merge transition is finalized, any call querying for `finalized` or `safe` block MUST be responded to with `-39001: Unknown block` error", "enum": [ "earliest", "finalized", "safe", "latest", "pending" ], "title": "Block tag", "type": "string" }, { "pattern": "^0x[0-9a-f]{64}$", "title": "Block hash", "type": "string" } ], "title": "Block" } ], "items": false } }, "required": [ "endpoint" ] }, "_meta": { "apicommons.org/standard": "eth-jsonrpc", "apicommons.org/tier": "core", "apicommons.org/method": "eth_getTransactionCount" } }, { "name": "eth_maxPriorityFeePerGas", "description": "Returns the current maxPriorityFeePerGas per gas in wei. Core-tier method: served by 85.7% of probed public endpoints.", "inputSchema": { "type": "object", "properties": { "endpoint": { "type": "string", "format": "uri", "description": "The JSON-RPC endpoint to call." }, "params": { "type": "array", "title": "eth_maxPriorityFeePerGas params", "description": "Returns the current maxPriorityFeePerGas per gas in wei.", "minItems": 0, "maxItems": 0, "prefixItems": [], "items": false } }, "required": [ "endpoint" ] }, "_meta": { "apicommons.org/standard": "eth-jsonrpc", "apicommons.org/tier": "core", "apicommons.org/method": "eth_maxPriorityFeePerGas" } }, { "name": "eth_newBlockFilter", "description": "Creates a filter in the node, allowing for later polling. Registers client interest in new blocks, and returns an identifier. Core-tier method: served by 81.0% of probed public endpoints.", "inputSchema": { "type": "object", "properties": { "endpoint": { "type": "string", "format": "uri", "description": "The JSON-RPC endpoint to call." }, "params": { "type": "array", "title": "eth_newBlockFilter params", "description": "Creates a filter in the node, allowing for later polling. Registers client interest in new blocks, and returns an identifier.", "minItems": 0, "maxItems": 0, "prefixItems": [], "items": false } }, "required": [ "endpoint" ] }, "_meta": { "apicommons.org/standard": "eth-jsonrpc", "apicommons.org/tier": "core", "apicommons.org/method": "eth_newBlockFilter" } }, { "name": "eth_syncing", "description": "Returns an object with data about the sync status or false. Core-tier method: served by 76.2% of probed public endpoints.", "inputSchema": { "type": "object", "properties": { "endpoint": { "type": "string", "format": "uri", "description": "The JSON-RPC endpoint to call." }, "params": { "type": "array", "title": "eth_syncing params", "description": "Returns an object with data about the sync status or false.", "minItems": 0, "maxItems": 0, "prefixItems": [], "items": false } }, "required": [ "endpoint" ] }, "_meta": { "apicommons.org/standard": "eth-jsonrpc", "apicommons.org/tier": "core", "apicommons.org/method": "eth_syncing" } }, { "name": "eth_uninstallFilter", "description": "Uninstalls a filter with given id. Core-tier method: served by 81.0% of probed public endpoints.", "inputSchema": { "type": "object", "properties": { "endpoint": { "type": "string", "format": "uri", "description": "The JSON-RPC endpoint to call." }, "params": { "type": "array", "title": "eth_uninstallFilter params", "description": "Uninstalls a filter with given id.", "minItems": 1, "maxItems": 1, "prefixItems": [ { "pattern": "^0x(0|[1-9a-f][0-9a-f]*)$", "title": "Filter identifier", "type": "string" } ], "items": false } }, "required": [ "endpoint" ] }, "_meta": { "apicommons.org/standard": "eth-jsonrpc", "apicommons.org/tier": "core", "apicommons.org/method": "eth_uninstallFilter" } }, { "name": "net_version", "description": "Returns the current network ID. This is usually equivalent to the chainID, but may differ from it for some legacy networks or special testnets. Core-tier method: served by 95.2% of probed public endpoints.", "inputSchema": { "type": "object", "properties": { "endpoint": { "type": "string", "format": "uri", "description": "The JSON-RPC endpoint to call." }, "params": { "type": "array", "title": "net_version params", "description": "Returns the current network ID. This is usually equivalent to the chainID, but may differ from it for some legacy networks or special testnets.", "minItems": 0, "maxItems": 0, "prefixItems": [], "items": false } }, "required": [ "endpoint" ] }, "_meta": { "apicommons.org/standard": "eth-jsonrpc", "apicommons.org/tier": "core", "apicommons.org/method": "net_version" } } ] }