Avalanche AVAX MCP
Search and retrieve Avalanche blockchain documentation for building on AVAX.
我该使用它吗
质量与安全性
发现(8)
- HIGH
- MEDIUM在 onchain_query 中
- LOW在 cli_lookup_command 中
- LOW在 rpc_lookup_method 中
- LOW在 blockchain_lookup_subnet 中
- LOW在 blockchain_get_contract_info 中
- LOW在 platform_get_current_validators 中
- LOW在 platform_get_pending_validators 中
基于对工具定义和协议合规性的自动分析。
上下文开销
这是每次将服务器的工具加载到模型上下文窗口时所消耗的大致 token 数。数值越高,可用于其他任务的注意力就越少。
安装
一键安装
将以下内容添加到你的 `claude_desktop_config.json` 文件中:
{
"mcpServers": {
"avalanche-docs": {
"url": "https://build.avax.network/api/mcp"
}
}
}远程端点
https://build.avax.network/api/mcpstreamable-http它能做什么
工具清单
工具(48)
🟢docs_search(query, source, limit)
Search body-level chunks across Avalanche documentation, academy courses, integrations, and blog posts. Returns source citations and matching excerpts.
输入模式
{
"type": "object",
"properties": {
"query": {
"type": "string",
"description": "The search query"
},
"source": {
"type": "string",
"enum": [
"docs",
"academy",
"integrations",
"blog"
],
"description": "Filter by documentation source (optional)"
},
"limit": {
"type": "number",
"minimum": 1,
"maximum": 50,
"description": "Maximum number of chunk results (default: 10)"
}
},
"required": [
"query"
]
}🟢docs_fetch(url)
Fetch a specific documentation page as markdown
输入模式
{
"type": "object",
"properties": {
"url": {
"type": "string",
"description": "The page URL path (e.g., /docs/primary-network/overview)"
}
},
"required": [
"url"
]
}🟢docs_list_sections
List available documentation sections and their page counts
输入模式
{
"type": "object",
"properties": {},
"required": []
}⚪cli_lookup_command(query, cli, limit)
Look up Avalanche CLI, Platform CLI, and tmpnet command guidance in the docs. Returns cited command references and task docs.
输入模式
{
"type": "object",
"properties": {
"query": {
"type": "string",
"description": "Command, flag, or task to look up"
},
"cli": {
"type": "string",
"enum": [
"platform-cli",
"tmpnet",
"all"
],
"description": "CLI surface to search. Defaults to all."
},
"limit": {
"type": "number",
"minimum": 1,
"maximum": 20,
"description": "Maximum number of results (default: 8)"
}
},
"required": [
"query"
]
}⚪rpc_lookup_method(query, chain, limit)
Look up Avalanche RPC methods and API guides across C-Chain, P-Chain, X-Chain, Subnet-EVM, and node RPC docs.
输入模式
{
"type": "object",
"properties": {
"query": {
"type": "string",
"description": "RPC method, namespace, or task to look up"
},
"chain": {
"type": "string",
"enum": [
"p-chain",
"c-chain",
"x-chain",
"subnet-evm",
"other",
"all"
],
"description": "RPC area to search. Defaults to all."
},
"limit": {
"type": "number",
"minimum": 1,
"maximum": 20,
"description": "Maximum number of results (default: 8)"
}
},
"required": [
"query"
]
}⚪acp_lookup(query, number, limit)
Look up Avalanche Community Proposals (ACPs) by number, title, or topic. When a number is provided the structured ACP record is returned (title, status, track, authors, cross-references).
输入模式
{
"type": "object",
"properties": {
"query": {
"type": "string",
"description": "ACP title, topic, or keyword"
},
"number": {
"type": "number",
"description": "ACP number, if known"
},
"limit": {
"type": "number",
"minimum": 1,
"maximum": 20,
"description": "Maximum number of results (default: 8)"
}
},
"required": []
}🟢acp_list(status, track, limit)
List Avalanche Community Proposals with structured fields, optionally filtered by status (Activated, Implementable, Proposed, Stale, Withdrawn) or track (Standards, Best Practices, Meta, Subnet).
输入模式
{
"type": "object",
"properties": {
"status": {
"type": "string",
"enum": [
"Proposed",
"Implementable",
"Activated",
"Stale",
"Withdrawn",
"Unknown"
],
"description": "Filter by ACP status (case-insensitive)"
},
"track": {
"type": "string",
"enum": [
"Standards",
"Best Practices",
"Meta",
"Subnet"
],
"description": "Filter by ACP track. Matches Standards, Best Practices, Meta, or Subnet."
},
"limit": {
"type": "number",
"minimum": 1,
"maximum": 100,
"description": "Maximum number of ACPs to return (default: 50)"
}
},
"required": []
}🟢avalanche_docs_search(query, source, limit)
Compatibility alias for docs_search. Prefer docs_search for new clients.
输入模式
{
"type": "object",
"properties": {
"query": {
"type": "string",
"description": "The search query"
},
"source": {
"type": "string",
"enum": [
"docs",
"academy",
"integrations",
"blog"
],
"description": "Filter by documentation source (optional)"
},
"limit": {
"type": "number",
"minimum": 1,
"maximum": 50,
"description": "Maximum number of chunk results (default: 10)"
}
},
"required": [
"query"
]
}🟢avalanche_docs_fetch(url)
Compatibility alias for docs_fetch. Prefer docs_fetch for new clients.
输入模式
{
"type": "object",
"properties": {
"url": {
"type": "string",
"description": "The page URL path (e.g., /docs/primary-network/overview)"
}
},
"required": [
"url"
]
}🟢avalanche_docs_list_sections
Compatibility alias for docs_list_sections. Prefer docs_list_sections for new clients.
输入模式
{
"type": "object",
"properties": {},
"required": []
}⚪blockchain_lookup_transaction(txHash, network)
Look up a transaction by hash on Avalanche (C-Chain, P-Chain, or X-Chain). Supports 0x format (C-Chain) and CB58 format (P/X-Chain).
输入模式
{
"type": "object",
"properties": {
"txHash": {
"type": "string",
"description": "Transaction hash (0x... for C-Chain, CB58 for P/X-Chain)"
},
"network": {
"type": "string",
"enum": [
"mainnet",
"fuji"
],
"default": "mainnet",
"description": "Network to search"
}
},
"required": [
"txHash"
]
}⚪blockchain_lookup_subnet(subnetId, network)
Look up a Subnet / L1 by its ID — validators, chains, and configuration.
输入模式
{
"type": "object",
"properties": {
"subnetId": {
"type": "string",
"description": "The Subnet ID"
},
"network": {
"type": "string",
"enum": [
"mainnet",
"fuji"
],
"default": "mainnet"
}
},
"required": [
"subnetId"
]
}⚪blockchain_lookup_chain(chainId, network)
Look up a blockchain by its ID — name, VM type, and Subnet/L1.
输入模式
{
"type": "object",
"properties": {
"chainId": {
"type": "string",
"description": "The blockchain ID"
},
"network": {
"type": "string",
"enum": [
"mainnet",
"fuji"
],
"default": "mainnet"
}
},
"required": [
"chainId"
]
}⚪blockchain_lookup_validator(nodeId, subnetId, network)
Look up a validator by node ID — stake, uptime, delegation info.
输入模式
{
"type": "object",
"properties": {
"nodeId": {
"type": "string",
"description": "Node ID (e.g. NodeID-...)"
},
"subnetId": {
"type": "string",
"default": "11111111111111111111111111111111LpoYY",
"description": "Subnet ID (default: Primary Network)"
},
"network": {
"type": "string",
"enum": [
"mainnet",
"fuji"
],
"default": "mainnet"
}
},
"required": [
"nodeId"
]
}🟢platform_get_height(network)
Get the current P-Chain block height
输入模式
{
"type": "object",
"properties": {
"network": {
"type": "string",
"enum": [
"mainnet",
"fuji"
],
"description": "Avalanche network to query (default: mainnet)"
}
}
}🟢platform_get_block(blockID, encoding, network)
Get a P-Chain block by its block ID
输入模式
{
"type": "object",
"properties": {
"blockID": {
"type": "string",
"description": "The CB58-encoded block ID"
},
"encoding": {
"type": "string",
"enum": [
"json",
"hex"
],
"description": "Encoding format for the block (default: json)"
},
"network": {
"type": "string",
"enum": [
"mainnet",
"fuji"
],
"description": "Avalanche network to query (default: mainnet)"
}
},
"required": [
"blockID"
]
}🟢platform_get_block_by_height(height, encoding, network)
Get a P-Chain block by its height
输入模式
{
"type": "object",
"properties": {
"height": {
"type": "string",
"description": "The block height as a string"
},
"encoding": {
"type": "string",
"enum": [
"json",
"hex"
],
"description": "Encoding format for the block (default: json)"
},
"network": {
"type": "string",
"enum": [
"mainnet",
"fuji"
],
"description": "Avalanche network to query (default: mainnet)"
}
},
"required": [
"height"
]
}🟢platform_get_blockchains(network, limit, offset)
Get all blockchains that exist on the P-Chain (paginated; use limit/offset)
输入模式
{
"type": "object",
"properties": {
"network": {
"type": "string",
"enum": [
"mainnet",
"fuji"
],
"description": "Avalanche network to query (default: mainnet)"
},
"limit": {
"type": "number",
"minimum": 1,
"maximum": 200,
"description": "Max items to return (default: 50). Use with \"offset\" to page."
},
"offset": {
"type": "number",
"minimum": 0,
"description": "Number of items to skip from the start (default: 0)."
}
}
}🟢platform_get_subnets(ids, network, limit, offset)
Get information about Subnets/L1s on the P-Chain
输入模式
{
"type": "object",
"properties": {
"ids": {
"type": "array",
"items": {
"type": "string"
},
"description": "Optional list of Subnet IDs to filter by"
},
"network": {
"type": "string",
"enum": [
"mainnet",
"fuji"
],
"description": "Avalanche network to query (default: mainnet)"
},
"limit": {
"type": "number",
"minimum": 1,
"maximum": 200,
"description": "Max items to return (default: 50). Use with \"offset\" to page."
},
"offset": {
"type": "number",
"minimum": 0,
"description": "Number of items to skip from the start (default: 0)."
}
}
}🟢platform_get_current_validators(subnetID, nodeIDs, network, limit, offset)
Get the current validators of a Subnet/L1 (paginated; use limit/offset)
输入模式
{
"type": "object",
"properties": {
"subnetID": {
"type": "string",
"description": "The Subnet ID to query validators for (default: Primary Network)"
},
"nodeIDs": {
"type": "array",
"items": {
"type": "string"
},
"description": "Optional list of node IDs to filter by"
},
"network": {
"type": "string",
"enum": [
"mainnet",
"fuji"
],
"description": "Avalanche network to query (default: mainnet)"
},
"limit": {
"type": "number",
"minimum": 1,
"maximum": 200,
"description": "Max items to return (default: 50). Use with \"offset\" to page."
},
"offset": {
"type": "number",
"minimum": 0,
"description": "Number of items to skip from the start (default: 0)."
}
}
}🟢platform_get_pending_validators(subnetID, nodeIDs, network, limit, offset)
Get the pending validators of a Subnet/L1 (paginated; use limit/offset)
输入模式
{
"type": "object",
"properties": {
"subnetID": {
"type": "string",
"description": "The Subnet ID to query pending validators for (default: Primary Network)"
},
"nodeIDs": {
"type": "array",
"items": {
"type": "string"
},
"description": "Optional list of node IDs to filter by"
},
"network": {
"type": "string",
"enum": [
"mainnet",
"fuji"
],
"description": "Avalanche network to query (default: mainnet)"
},
"limit": {
"type": "number",
"minimum": 1,
"maximum": 200,
"description": "Max items to return (default: 50). Use with \"offset\" to page."
},
"offset": {
"type": "number",
"minimum": 0,
"description": "Number of items to skip from the start (default: 0)."
}
}
}🟢platform_get_staking_asset_id(subnetID, network)
Get the asset ID of the token used for staking on a Subnet/L1
输入模式
{
"type": "object",
"properties": {
"subnetID": {
"type": "string",
"description": "The Subnet ID to query the staking asset for (default: Primary Network)"
},
"network": {
"type": "string",
"enum": [
"mainnet",
"fuji"
],
"description": "Avalanche network to query (default: mainnet)"
}
}
}🟢platform_get_min_stake(subnetID, network)
Get the minimum staking amounts for validators and delegators on a Subnet/L1
输入模式
{
"type": "object",
"properties": {
"subnetID": {
"type": "string",
"description": "The Subnet ID to query minimum stake for (default: Primary Network)"
},
"network": {
"type": "string",
"enum": [
"mainnet",
"fuji"
],
"description": "Avalanche network to query (default: mainnet)"
}
}
}🟢platform_get_total_stake(subnetID, network)
Get the total amount staked on a Subnet/L1
输入模式
{
"type": "object",
"properties": {
"subnetID": {
"type": "string",
"description": "The Subnet ID to query total stake for (default: Primary Network)"
},
"network": {
"type": "string",
"enum": [
"mainnet",
"fuji"
],
"description": "Avalanche network to query (default: mainnet)"
}
}
}🟢platform_get_balance(addresses, network)
Get the AVAX balance of one or more P-Chain addresses
输入模式
{
"type": "object",
"properties": {
"addresses": {
"type": "array",
"items": {
"type": "string"
},
"description": "List of P-Chain addresses to query (e.g. P-avax1...)"
},
"network": {
"type": "string",
"enum": [
"mainnet",
"fuji"
],
"description": "Avalanche network to query (default: mainnet)"
}
},
"required": [
"addresses"
]
}🟡platform_get_utxos(addresses, limit, sourceChain, network)
Get UTXOs that reference a given set of P-Chain addresses
输入模式
{
"type": "object",
"properties": {
"addresses": {
"type": "array",
"items": {
"type": "string"
},
"description": "List of P-Chain addresses to get UTXOs for"
},
"limit": {
"type": "number",
"description": "Maximum number of UTXOs to return"
},
"sourceChain": {
"type": "string",
"description": "If fetching atomic UTXOs, the chain they were exported from"
},
"network": {
"type": "string",
"enum": [
"mainnet",
"fuji"
],
"description": "Avalanche network to query (default: mainnet)"
}
},
"required": [
"addresses"
]
}🟢platform_get_tx(txID, encoding, network)
Get a P-Chain transaction by its transaction ID
输入模式
{
"type": "object",
"properties": {
"txID": {
"type": "string",
"description": "The CB58-encoded transaction ID"
},
"encoding": {
"type": "string",
"enum": [
"json",
"hex"
],
"description": "Encoding format for the transaction (default: json)"
},
"network": {
"type": "string",
"enum": [
"mainnet",
"fuji"
],
"description": "Avalanche network to query (default: mainnet)"
}
},
"required": [
"txID"
]
}🟢platform_get_tx_status(txID, network)
Get the status of a P-Chain transaction
输入模式
{
"type": "object",
"properties": {
"txID": {
"type": "string",
"description": "The CB58-encoded transaction ID"
},
"network": {
"type": "string",
"enum": [
"mainnet",
"fuji"
],
"description": "Avalanche network to query (default: mainnet)"
}
},
"required": [
"txID"
]
}🟢platform_get_current_supply(subnetID, network)
Get the current total supply of AVAX on a Subnet/L1
输入模式
{
"type": "object",
"properties": {
"subnetID": {
"type": "string",
"description": "The Subnet ID to query current supply for (default: Primary Network)"
},
"network": {
"type": "string",
"enum": [
"mainnet",
"fuji"
],
"description": "Avalanche network to query (default: mainnet)"
}
}
}🟢platform_get_validators_at(height, subnetID, network)
Get the validators and their weights of a Subnet/L1 at a given P-Chain height
输入模式
{
"type": "object",
"properties": {
"height": {
"oneOf": [
{
"type": "number",
"description": "A specific P-Chain block height"
},
{
"type": "string",
"enum": [
"proposed"
],
"description": "Use \"proposed\" for the proposed height"
}
],
"description": "The P-Chain height to query validators at, or \"proposed\""
},
"subnetID": {
"type": "string",
"description": "The Subnet ID to query validators for (default: Primary Network)"
},
"network": {
"type": "string",
"enum": [
"mainnet",
"fuji"
],
"description": "Avalanche network to query (default: mainnet)"
}
},
"required": [
"height"
]
}🟢info_get_node_version(network)
Get the version of the node, including the database version, git commit, and API compatibility info.
输入模式
{
"type": "object",
"properties": {
"network": {
"type": "string",
"enum": [
"mainnet",
"fuji"
],
"description": "The Avalanche network to query (default: mainnet)"
}
},
"required": []
}🟢info_get_network_id(network)
Get the numeric ID of the Avalanche network this node is participating in.
输入模式
{
"type": "object",
"properties": {
"network": {
"type": "string",
"enum": [
"mainnet",
"fuji"
],
"description": "The Avalanche network to query (default: mainnet)"
}
},
"required": []
}🟢info_get_network_name(network)
Get the human-readable name of the Avalanche network this node is participating in.
输入模式
{
"type": "object",
"properties": {
"network": {
"type": "string",
"enum": [
"mainnet",
"fuji"
],
"description": "The Avalanche network to query (default: mainnet)"
}
},
"required": []
}🟢info_get_blockchain_id(alias, network)
Get the CB58-encoded blockchain ID for a given blockchain alias (e.g., "X", "P", "C").
输入模式
{
"type": "object",
"properties": {
"alias": {
"type": "string",
"description": "The blockchain alias (e.g., \"X\", \"P\", \"C\", or a full blockchain name)"
},
"network": {
"type": "string",
"enum": [
"mainnet",
"fuji"
],
"description": "The Avalanche network to query (default: mainnet)"
}
},
"required": [
"alias"
]
}🟢info_is_bootstrapped(chain, network)
Check whether a given chain has finished bootstrapping on the node.
输入模式
{
"type": "object",
"properties": {
"chain": {
"type": "string",
"description": "The chain ID or alias to check (e.g., \"X\", \"P\", \"C\")"
},
"network": {
"type": "string",
"enum": [
"mainnet",
"fuji"
],
"description": "The Avalanche network to query (default: mainnet)"
}
},
"required": [
"chain"
]
}🟢info_get_tx_fee(network)
Get the current transaction fees for the network, returned in both nAVAX and AVAX.
输入模式
{
"type": "object",
"properties": {
"network": {
"type": "string",
"enum": [
"mainnet",
"fuji"
],
"description": "The Avalanche network to query (default: mainnet)"
}
},
"required": []
}🟢info_peers(nodeIDs, network)
Get a list of peers this node is connected to. Optionally filter by specific NodeIDs.
输入模式
{
"type": "object",
"properties": {
"nodeIDs": {
"type": "array",
"items": {
"type": "string"
},
"description": "Optional list of NodeIDs to filter peers by (e.g., [\"NodeID-AbC...\"]). If omitted, all peers are returned."
},
"network": {
"type": "string",
"enum": [
"mainnet",
"fuji"
],
"description": "The Avalanche network to query (default: mainnet)"
}
},
"required": []
}🟢info_acps(network)
Get information about Avalanche Community Proposals (ACPs), including their status and vote counts.
输入模式
{
"type": "object",
"properties": {
"network": {
"type": "string",
"enum": [
"mainnet",
"fuji"
],
"description": "The Avalanche network to query (default: mainnet)"
}
},
"required": []
}🟢blockchain_get_native_balance(address, chainId)
Compatibility alias for onchain_lookup address balances. Prefer onchain_lookup for new clients.
输入模式
{
"type": "object",
"properties": {
"address": {
"type": "string",
"description": "EVM address (0x...)"
},
"chainId": {
"type": "string",
"default": "43114",
"description": "43114 for C-Chain mainnet, 43113 for Fuji"
}
},
"required": [
"address"
]
}🟢blockchain_get_contract_info(address, chainId)
Compatibility alias for onchain_lookup contract metadata. Prefer onchain_lookup for new clients.
输入模式
{
"type": "object",
"properties": {
"address": {
"type": "string",
"description": "Contract address (0x...)"
},
"chainId": {
"type": "string",
"default": "43114",
"description": "43114 for C-Chain mainnet, 43113 for Fuji"
}
},
"required": [
"address"
]
}⚪blockchain_lookup_address(address, chainId)
Compatibility alias for onchain_lookup address details. Prefer onchain_lookup for new clients.
输入模式
{
"type": "object",
"properties": {
"address": {
"type": "string",
"description": "EVM address (0x...)"
},
"chainId": {
"type": "string",
"default": "43114",
"description": "43114 for C-Chain mainnet, 43113 for Fuji"
}
},
"required": [
"address"
]
}⚪onchain_lookup(value, kind, network, chainId, tokenId, ...)
PRIMARY lookup tool — use this (not raw RPC) to resolve/describe any on-chain identifier in one call: an EVM address (native + token balances, recent txs, contract metadata + isContract), a contract/token (metadata + deployment + recent transfers), an NFT (collection + tokenId), a tx hash, a subnet ID, a NodeID validator, a P-/X-Chain account (P-…/X-… → P-Chain balance), or a chain name/id. Use this for any address balance / contract-info / token / identity question. `kind` auto-detects; network is inferred from P-/X-Chain prefixes. Backed by Glacier + P-Chain RPC.
输入模式
{
"type": "object",
"properties": {
"value": {
"type": "string",
"description": "The identifier: 0x address / 0x tx hash / NodeID-… / subnetId / chain name or id"
},
"kind": {
"type": "string",
"enum": [
"auto",
"address",
"contract",
"token",
"nft",
"transaction",
"subnet",
"validator",
"chain",
"pchain"
],
"description": "Entity kind (default: auto-detect from value)"
},
"network": {
"type": "string",
"enum": [
"mainnet",
"fuji"
],
"description": "Network (default: mainnet)"
},
"chainId": {
"type": "string",
"description": "EVM chain ID for EVM kinds (default: C-Chain for the network)"
},
"tokenId": {
"type": "string",
"description": "NFT token ID (kind=nft)"
},
"include": {
"type": "array",
"items": {
"type": "string",
"enum": [
"balances",
"nfts"
]
},
"description": "Extra data for an address (e.g. [\"nfts\"])"
}
},
"required": [
"value"
]
}🟢onchain_activity(scope, value, feed, network, chainId, ...)
Time-windowed on-chain activity. scope=chain/address returns the transaction COUNT over the last `hours` (max 720h = 30 days; for longer windows use chain_stats series or onchain_query day-based ops) plus a recent sample. For a token/contract use scope=token (transfers). scope=primary covers P/X-chain and DEFAULTS to P-Chain when no blockchainId is given (so "last N P-chain transactions" just works). A value with no scope defaults to address.
输入模式
{
"type": "object",
"properties": {
"scope": {
"type": "string",
"enum": [
"address",
"chain",
"token",
"contract",
"primary"
],
"description": "address | chain | token | contract | primary"
},
"value": {
"type": "string",
"description": "Address/contract/token (omit for scope=chain)"
},
"feed": {
"type": "string",
"enum": [
"transactions",
"transfers",
"erc20Transfers",
"nftTransfers"
],
"description": "transactions (default) | transfers | erc20Transfers | nftTransfers"
},
"network": {
"type": "string",
"enum": [
"mainnet",
"fuji"
],
"description": "Network (default: mainnet)"
},
"chainId": {
"type": "string",
"description": "EVM chain ID (default: C-Chain for the network)"
},
"blockchainId": {
"type": "string",
"description": "Blockchain ID for scope=primary (default: P-Chain)"
},
"hours": {
"type": "number",
"description": "Look-back window in hours for EVM transaction feeds (default: 2 for chain, max 720)"
},
"fromTimestamp": {
"type": "number",
"description": "Unix start time (scope=primary)"
},
"toTimestamp": {
"type": "number",
"description": "Unix end time (scope=primary)"
},
"pageSize": {
"type": "number",
"minimum": 1,
"maximum": 100,
"description": "Max rows (default: 25)"
}
},
"required": [
"scope"
]
}🟢chain_stats(target, window, chainId, value, timeInterval, ...)
On-chain statistics via the query gateway, which picks the most accurate live source PER FIELD and stamps it (sources/warnings in the response). target=chain: tx count/gas/fees/active senders/avg gas price over a recent window (window=recent, `hours`, max 720h = 30 days) OR a time-series (window=series, `days`, max 365). target=contract: per-contract tx/sender/gas totals (`days`, max 365 — use this for contract activity beyond 30 days). target=network: current P-chain validator snapshot. IMPORTANT: relay any `warnings` notes to the user verbatim-in-substance (e.g. gas coverage windows or accuracy caveats) — never present a flagged value as exact. Note: C-Chain gasUsed is gas-target-regulated, so daily gas is ~stable even as tx count varies — expected, not an error.
输入模式
{
"type": "object",
"properties": {
"target": {
"type": "string",
"enum": [
"chain",
"contract",
"network"
],
"description": "chain (default) | contract | network"
},
"window": {
"type": "string",
"enum": [
"series",
"recent"
],
"description": "chain: recent aggregate (default) or series"
},
"chainId": {
"type": "string",
"description": "EVM chain ID (default: C-Chain for the network)"
},
"value": {
"type": "string",
"description": "Contract address (target=contract)"
},
"timeInterval": {
"type": "string",
"enum": [
"hour",
"day",
"week",
"month"
],
"description": "Bucket size for window=series (default: day)"
},
"hours": {
"type": "number",
"description": "Look-back hours for window=recent (default: 24, max 720)"
},
"days": {
"type": "number",
"description": "Look-back days for series / contract (default: 30, max 365)"
},
"network": {
"type": "string",
"enum": [
"mainnet",
"fuji"
],
"description": "Network (default: mainnet)"
}
},
"required": []
}🟡onchain_query(op, params)
PRIMARY tool for indexed on-chain stats/activity/totals — prefer this over raw RPC for chain data. Each `op` is a backend-agnostic intent: the query gateway selects the most accurate live source per field (indexed DB / pre-aggregated metrics / Data API), stamps every field (`sources`), and flags any caveat (`warnings`) — relay warnings to the user, never present a flagged value as exact. Pick an `op` and pass its `params`; `chainId` is an allowlisted EVM chain (43114 C-Chain, 43113 Fuji, + L1s). Lookback: hour-based ops (chainStatsRecent/chainActivity/addressActivity) max 720h (30 days); day-based ops (chainStatsSeries/contractStats/chainGasTotal/protocolRanking/contractGasFlow/topUnknownContracts) max 365 days — use a day-based op for windows over 30 days. Ops: chainStatsRecent {chainId, hours≤720} — tx count/gas/fees/active senders/avg gas price over the last N hours; chainStatsSeries {chainId, days≤365, bucket: hour|day|week|month} — bucketed time-series of the same; addressActivity {chainId, address, hours≤720, limit≤100} — tx count + recent sample for an address in a window; chainActivity {chainId, hours≤720, limit≤100} — tx count + recent sample chain-wide in a window; contractStats {chainId, contract, days≤365} — tx/unique-sender/gas totals for a contract; protocolRanking {chainId, contracts[≤25], days≤365, orderBy: txCount|gasUsed|uniqueSenders|feesPaidAvax, dir: asc|desc, limit≤100} — rank a set of contracts; contractGasFlow {chainId, contract, days≤365, limit≤100} — gas received/given per counterparty; topUnknownContracts {chainId, exclude[≤25], days≤365, limit≤100} — top contracts by gas excluding a set; chainGasTotal {chainId, days≤365} OR {chainId, fromDate, toDate} — total tx/gas/fees over N days or a YYYY-MM-DD range (≤365d). Note: C-Chain gasUsed is gas-target-regulated → ~stable day-to-day even as txCount varies (expected, not a bug).
输入模式
{
"type": "object",
"properties": {
"op": {
"type": "string",
"enum": [
"chainStatsRecent",
"chainStatsSeries",
"addressActivity",
"chainActivity",
"contractStats",
"protocolRanking",
"contractGasFlow",
"topUnknownContracts",
"chainGasTotal"
],
"description": "The query operation"
},
"params": {
"type": "object",
"description": "Op-specific parameters (see description); validated server-side."
}
},
"required": [
"op",
"params"
]
}🟡build_plan(operation, network, name, vm, validatorManager, ...)
Generate a step-by-step, copy-pasteable runbook for an Avalanche operation — Builder Console (no-code) path plus the equivalent platform-cli / SDK / interchain-kit commands. Read-only: never signs. operation: create-l1 (launch an L1); use ictt or interchain-kit for any CROSS-CHAIN / interoperability work — bridging tokens, sending cross-chain (ICM / Teleporter / Warp) messages, or connecting your L1 to C-Chain or other L1s (interchain-kit also lets you iterate locally first); validator-manager; staking; transfer.
输入模式
{
"type": "object",
"properties": {
"operation": {
"type": "string",
"enum": [
"create-l1",
"ictt",
"validator-manager",
"staking",
"transfer",
"interchain-kit"
],
"description": "Which runbook to generate"
},
"network": {
"type": "string",
"enum": [
"fuji",
"mainnet"
],
"description": "Target network (default: fuji)"
},
"name": {
"type": "string",
"description": "create-l1: L1 name (default: myL1)"
},
"vm": {
"type": "string",
"enum": [
"subnet-evm",
"custom"
],
"description": "create-l1: VM type (default: subnet-evm)"
},
"validatorManager": {
"type": "string",
"enum": [
"poa",
"pos-native",
"pos-erc20"
],
"description": "create-l1 / validator-manager: model (default: poa)"
},
"chainId": {
"type": "string",
"description": "create-l1: EVM chain ID"
},
"tokenSymbol": {
"type": "string",
"description": "create-l1: native token symbol"
},
"type": {
"type": "string",
"enum": [
"poa",
"pos-native",
"pos-erc20"
],
"description": "validator-manager: manager type (alias of validatorManager)"
},
"token": {
"type": "string",
"description": "ictt: token contract address (or \"native\")"
},
"tokenType": {
"type": "string",
"enum": [
"erc20",
"native"
],
"description": "ictt: token type (default: erc20)"
},
"homeChain": {
"type": "string",
"description": "ictt: home chain (where the token originates)"
},
"remoteChain": {
"type": "string",
"description": "ictt: destination chain (required for operation=ictt)"
},
"stake": {
"type": "string",
"description": "staking: stake amount"
},
"duration": {
"type": "string",
"description": "staking: staking period (e.g. 336h)"
},
"nodeId": {
"type": "string",
"description": "staking: NodeID-…"
},
"transferKind": {
"type": "string",
"enum": [
"send",
"p-to-c",
"c-to-p"
],
"description": "transfer: kind (default: send)"
},
"amount": {
"type": "string",
"description": "transfer: amount"
},
"to": {
"type": "string",
"description": "transfer: destination address (transferKind=send)"
},
"example": {
"type": "string",
"enum": [
"send-message",
"transfer-token",
"validator-manager-setup",
"add-validator"
],
"description": "interchain-kit: which example to run"
}
},
"required": [
"operation"
]
}⚪console_link(flow, network, validatorManager)
Return a deep-link into a specific Builder Console flow (create-l1, convert-to-l1, validator-manager, ictt, faucet, multisig, staking, transfers, interchain-kit-local). For faucet on mainnet, returns a note that there is no mainnet faucet.
输入模式
{
"type": "object",
"properties": {
"flow": {
"type": "string",
"enum": [
"create-l1",
"convert-to-l1",
"validator-manager",
"ictt",
"faucet",
"multisig",
"staking",
"transfers",
"interchain-kit-local"
],
"description": "The console flow to link to"
},
"network": {
"type": "string",
"enum": [
"fuji",
"mainnet"
],
"description": "Network (only affects faucet; default: fuji)"
},
"validatorManager": {
"type": "string",
"enum": [
"poa",
"pos-native",
"pos-erc20"
],
"description": "Validator-manager variant (default: poa)"
}
},
"required": [
"flow"
]
}🟡console_flow(flow)
Builder Console flow knowledge. Call with NO `flow` to list every flow (summaries + deep-links); call with a `flow` key to explain it (ordered steps, equivalent CLI, whether it signs transactions, deep-link). Flows: create-l1, convert-to-l1, validator-manager, ictt, faucet, multisig, staking, transfers, interchain-kit-local.
输入模式
{
"type": "object",
"properties": {
"flow": {
"type": "string",
"enum": [
"create-l1",
"convert-to-l1",
"validator-manager",
"ictt",
"faucet",
"multisig",
"staking",
"transfers",
"interchain-kit-local"
],
"description": "Flow key to explain. Omit to list all flows."
}
},
"required": []
}社区
证据