{"name":"avalanche-mcp","version":"2.1.0","protocolVersion":"2024-11-05","description":"Unified read-only MCP server for Avalanche docs, CLI/RPC/ACP lookup, GitHub code search, blockchain lookups, P-Chain, and Info API","tools":[{"name":"docs_search","description":"Search body-level chunks across Avalanche documentation, academy courses, integrations, and blog posts. Returns source citations and matching excerpts.","inputSchema":{"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"]}},{"name":"docs_fetch","description":"Fetch a specific documentation page as markdown","inputSchema":{"type":"object","properties":{"url":{"type":"string","description":"The page URL path (e.g., /docs/primary-network/overview)"}},"required":["url"]}},{"name":"docs_list_sections","description":"List available documentation sections and their page counts","inputSchema":{"type":"object","properties":{},"required":[]}},{"name":"cli_lookup_command","description":"Look up Avalanche CLI, Platform CLI, and tmpnet command guidance in the docs. Returns cited command references and task docs.","inputSchema":{"type":"object","properties":{"query":{"type":"string","description":"Command, flag, or task to look up"},"cli":{"type":"string","enum":["avalanche-cli","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"]}},{"name":"rpc_lookup_method","description":"Look up Avalanche RPC methods and API guides across C-Chain, P-Chain, X-Chain, Subnet-EVM, and node RPC docs.","inputSchema":{"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"]}},{"name":"acp_lookup","description":"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).","inputSchema":{"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":[]}},{"name":"acp_list","description":"List Avalanche Community Proposals with structured fields, optionally filtered by status (Activated, Implementable, Proposed, Stale, Withdrawn) or track (Standards, Best Practices, Meta, Subnet).","inputSchema":{"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":[]}},{"name":"avalanche_docs_search","description":"Compatibility alias for docs_search. Prefer docs_search for new clients.","inputSchema":{"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"]}},{"name":"avalanche_docs_fetch","description":"Compatibility alias for docs_fetch. Prefer docs_fetch for new clients.","inputSchema":{"type":"object","properties":{"url":{"type":"string","description":"The page URL path (e.g., /docs/primary-network/overview)"}},"required":["url"]}},{"name":"avalanche_docs_list_sections","description":"Compatibility alias for docs_list_sections. Prefer docs_list_sections for new clients.","inputSchema":{"type":"object","properties":{},"required":[]}},{"name":"blockchain_get_native_balance","description":"Get the native AVAX balance of an address on C-Chain","inputSchema":{"type":"object","properties":{"address":{"type":"string","description":"EVM address (0x...)"},"chainId":{"type":"string","description":"Chain ID — \"43114\" for C-Chain mainnet, \"43113\" for Fuji testnet","default":"43114"}},"required":["address"]}},{"name":"blockchain_get_contract_info","description":"Check if an address is a contract and get its ERC20 name/symbol if applicable","inputSchema":{"type":"object","properties":{"address":{"type":"string","description":"EVM address (0x...)"},"chainId":{"type":"string","description":"Chain ID — \"43114\" for C-Chain mainnet, \"43113\" for Fuji testnet","default":"43114"}},"required":["address"]}},{"name":"blockchain_lookup_transaction","description":"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).","inputSchema":{"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"]}},{"name":"blockchain_lookup_address","description":"Look up an address — balance, contract info. Use when users paste an 0x address.","inputSchema":{"type":"object","properties":{"address":{"type":"string","description":"The address to look up (0x format)"},"chainId":{"type":"string","default":"43114","description":"Chain ID — \"43114\" for C-Chain mainnet, \"43113\" for Fuji testnet"}},"required":["address"]}},{"name":"blockchain_lookup_subnet","description":"Look up a Subnet / L1 by its ID — validators, chains, and configuration.","inputSchema":{"type":"object","properties":{"subnetId":{"type":"string","description":"The Subnet ID"},"network":{"type":"string","enum":["mainnet","fuji"],"default":"mainnet"}},"required":["subnetId"]}},{"name":"blockchain_lookup_chain","description":"Look up a blockchain by its ID — name, VM type, and subnet.","inputSchema":{"type":"object","properties":{"chainId":{"type":"string","description":"The blockchain ID"},"network":{"type":"string","enum":["mainnet","fuji"],"default":"mainnet"}},"required":["chainId"]}},{"name":"blockchain_lookup_validator","description":"Look up a validator by node ID — stake, uptime, delegation info.","inputSchema":{"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"]}},{"name":"github_search_code","description":"Search for code across core Avalanche GitHub repositories including avalanchego, subnet-evm, coreth, libevm, avalanche-cli, platform-cli, icm-services, icm-contracts, avalanche-network-runner, hypersdk, and builders-hub.","inputSchema":{"type":"object","properties":{"query":{"type":"string","description":"The search query string to find relevant code."},"repo":{"type":"string","enum":["avalanchego","subnet-evm","coreth","avalanche-cli","platform-cli","icm-services","avalanche-network-runner","icm-contracts","hypersdk","libevm","builders-hub","all"],"description":"The repository to search in. Defaults to \"all\"."},"language":{"type":"string","enum":["go","solidity","typescript","javascript","python","rust","shell","markdown","yaml","json","any"],"description":"Filter results by programming language. Defaults to \"any\"."},"perPage":{"type":"number","minimum":1,"maximum":10,"description":"Maximum number of GitHub results to return (default: 10)."}},"required":["query"]}},{"name":"github_get_file","description":"Retrieve the contents of a specific file from an Avalanche GitHub repository.","inputSchema":{"type":"object","properties":{"repo":{"type":"string","enum":["avalanchego","subnet-evm","coreth","avalanche-cli","platform-cli","icm-services","avalanche-network-runner","icm-contracts","hypersdk","libevm","builders-hub"],"description":"The repository to fetch the file from (owner is always ava-labs)."},"path":{"type":"string","description":"The path to the file within the repository."},"ref":{"type":"string","description":"The git ref (branch, tag, or commit SHA) to fetch from. Defaults to \"HEAD\"."}},"required":["repo","path"]}},{"name":"github_list_repositories","description":"List the Avalanche GitHub repositories covered by github_search_code and github_get_file.","inputSchema":{"type":"object","properties":{},"required":[]}},{"name":"platform_get_height","description":"Get the current P-Chain block height","inputSchema":{"type":"object","properties":{"network":{"type":"string","enum":["mainnet","fuji"],"description":"Avalanche network to query (default: mainnet)"}}}},{"name":"platform_get_block","description":"Get a P-Chain block by its block ID","inputSchema":{"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"]}},{"name":"platform_get_block_by_height","description":"Get a P-Chain block by its height","inputSchema":{"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"]}},{"name":"platform_get_blockchains","description":"Get all blockchains that exist on the P-Chain","inputSchema":{"type":"object","properties":{"network":{"type":"string","enum":["mainnet","fuji"],"description":"Avalanche network to query (default: mainnet)"}}}},{"name":"platform_get_subnets","description":"Get information about subnets on the P-Chain","inputSchema":{"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)"}}}},{"name":"platform_get_current_validators","description":"Get the current validators of a subnet","inputSchema":{"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)"}}}},{"name":"platform_get_pending_validators","description":"Get the pending validators of a subnet (validators not yet validating)","inputSchema":{"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)"}}}},{"name":"platform_get_staking_asset_id","description":"Get the asset ID of the token used for staking on a subnet","inputSchema":{"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)"}}}},{"name":"platform_get_min_stake","description":"Get the minimum staking amounts for validators and delegators on a subnet","inputSchema":{"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)"}}}},{"name":"platform_get_total_stake","description":"Get the total amount staked on a subnet","inputSchema":{"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)"}}}},{"name":"platform_get_balance","description":"Get the AVAX balance of one or more P-Chain addresses","inputSchema":{"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"]}},{"name":"platform_get_utxos","description":"Get UTXOs that reference a given set of P-Chain addresses","inputSchema":{"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"]}},{"name":"platform_get_tx","description":"Get a P-Chain transaction by its transaction ID","inputSchema":{"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"]}},{"name":"platform_get_tx_status","description":"Get the status of a P-Chain transaction","inputSchema":{"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"]}},{"name":"platform_get_current_supply","description":"Get the current total supply of AVAX on a subnet","inputSchema":{"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)"}}}},{"name":"platform_get_validators_at","description":"Get the validators and their weights of a subnet at a given P-Chain height","inputSchema":{"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"]}},{"name":"info_get_node_version","description":"Get the version of the node, including the database version, git commit, and API compatibility info.","inputSchema":{"type":"object","properties":{"network":{"type":"string","enum":["mainnet","fuji"],"description":"The Avalanche network to query (default: mainnet)"}},"required":[]}},{"name":"info_get_network_id","description":"Get the numeric ID of the Avalanche network this node is participating in.","inputSchema":{"type":"object","properties":{"network":{"type":"string","enum":["mainnet","fuji"],"description":"The Avalanche network to query (default: mainnet)"}},"required":[]}},{"name":"info_get_network_name","description":"Get the human-readable name of the Avalanche network this node is participating in.","inputSchema":{"type":"object","properties":{"network":{"type":"string","enum":["mainnet","fuji"],"description":"The Avalanche network to query (default: mainnet)"}},"required":[]}},{"name":"info_get_blockchain_id","description":"Get the CB58-encoded blockchain ID for a given blockchain alias (e.g., \"X\", \"P\", \"C\").","inputSchema":{"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"]}},{"name":"info_is_bootstrapped","description":"Check whether a given chain has finished bootstrapping on the node.","inputSchema":{"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"]}},{"name":"info_get_tx_fee","description":"Get the current transaction fees for the network, returned in both nAVAX and AVAX.","inputSchema":{"type":"object","properties":{"network":{"type":"string","enum":["mainnet","fuji"],"description":"The Avalanche network to query (default: mainnet)"}},"required":[]}},{"name":"info_peers","description":"Get a list of peers this node is connected to. Optionally filter by specific NodeIDs.","inputSchema":{"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":[]}},{"name":"info_acps","description":"Get information about Avalanche Community Proposals (ACPs), including their status and vote counts.","inputSchema":{"type":"object","properties":{"network":{"type":"string","enum":["mainnet","fuji"],"description":"The Avalanche network to query (default: mainnet)"}},"required":[]}}],"resources":[{"uri":"docs://index","name":"Documentation Index","description":"Index of all Avalanche documentation pages","mimeType":"text/markdown"},{"uri":"academy://index","name":"Academy Index","description":"Index of all Avalanche Academy courses","mimeType":"text/markdown"},{"uri":"integrations://index","name":"Integrations Index","description":"Index of all Avalanche integrations","mimeType":"text/markdown"},{"uri":"blog://index","name":"Blog Index","description":"Index of all Avalanche Builders Hub blog posts","mimeType":"text/markdown"},{"uri":"rpcs://index","name":"RPC Documentation Index","description":"Index of Avalanche RPC method and API documentation","mimeType":"text/markdown"},{"uri":"cli://index","name":"CLI Documentation Index","description":"Index of Avalanche CLI, Platform CLI, and tmpnet documentation","mimeType":"text/markdown"},{"uri":"acps://index","name":"ACP Index","description":"Index of Avalanche Community Proposal documentation","mimeType":"text/markdown"}],"endpoints":{"rpc":"/api/mcp","docs":"https://build.avax.network"}}