Labsco
MCP SERVER

Ankr API MCP Server

by akki91

Read a wallet's tokens and NFTs, a token's price and its holders, and raw blocks, logs and transactions across chains, with the chain named per call.

Chain State, Explorers & Contract ToolingVerified
Summary
The read surface splits along Ankr's plan line, and the history and holder-list questions — the ones an audit starts with — sit on the paid side of it.

Balances, current prices, NFT ownership and metadata, block data, event logs and single-transaction lookups are on the plain path; the tools marked Premium API are the ones that answer "who held this" and "what did it do over time". Worth knowing before you plan a workflow around it: nothing in this list signs or sends anything — every call is a get_ — so ANKR_API_TOKEN is an API credential and no wallet key goes near the server. Chain selection is per call rather than per session, through `blockchain` or `network`, which is what lets get_nfts_by_owner and get_token_transfers work across blockchains rather than a chain at a time.

What it is

A read-only chain-data server over the Ankr API: balances and NFT holdings for an address, token prices and their derivation, holder lists, transfer history, and block, log and transaction reads, each scoped by a `blockchain` or `network` argument.

What you get
  • Holdings for an address: get_token_balances returns coin and token balances with USD values on a given network, and get_nfts_by_owner returns the NFTs a wallet holds across blockchains.
  • Pricing with its derivation attached: get_token_price returns the current USD price and falls back to the native coin when contractAddress is omitted, get_token_price_history returns prices over an `interval` between fromTimestamp and toTimestamp, and explain_token_price breaks a price down into the liquidity pools and pairs behind it at a given blockHeight.
  • Holder-side views: get_token_holders lists holder addresses for a token, get_token_holders_count returns the holder count with historical data, and get_nft_holders lists the wallets holding a collection.
  • Transfer history paged by block or by time: get_token_transfers and get_nft_transfers take fromBlock/toBlock or fromTimestamp/toTimestamp with descOrder, and page through pageSize and pageToken.
  • Raw chain reads: get_blocks returns full block data for a range with includeTxs, includeLogs, decodeTxData and decodeLogs; get_logs filters event logs by address and topics; get_transactions_by_hash resolves a hash and can search across blockchains.
  • Address forensics: get_interactions lists the blockchains an address has touched, get_account_balance_historical returns a wallet's balance at a blockHeight, and get_internal_transactions_by_block and get_internal_transactions_by_parent_hash surface contract-to-contract calls.
  • Chain-level context: get_blockchain_stats returns total transactions, block time and native coin price, and get_currencies lists the tokens available on a blockchain.
Requirements

An Ankr API token, supplied as ANKR_API_TOKEN. The calls whose descriptions are marked Premium API additionally need a plan that covers them: get_token_holders, get_token_holders_count, get_token_transfers, get_token_price_history, explain_token_price, get_nft_holders, get_nft_transfers, get_transactions_by_address, get_internal_transactions_by_block and get_internal_transactions_by_parent_hash, with get_account_balance_historical marked Premium/Early Access.

Setup effort

One command plus a key — npm install @akki91/ankr-mcp, then supply credentials