Blockscout MCP server icon

Blockscout

by Blockscout

Finance16 toolsNo Auth Required

Read blockchain data — balances, tokens, NFTs, transactions and verified contract source — across 101 chains from your AI agent. 16 tools, all annotated read-only, no wallet and no signing.

Verified connector

Listed by Anthropic as a partner connector in its Connectors Directory.

Connection checked by Agentman on .

Anthropic states this reflects the level of review a connector received, not a security audit.

Connect Blockscout via MCP

https://mcp.blockscout.com/mcp

Works in any MCP-compatible client. In Agentman Studio it is one click — no config file to edit.

Blockscout Tools & Capabilities (16)

__unlock_blockchain_analysis__Read-only

Initializes a Blockscout MCP session: returns server reference data, the `blockscout-analysis` skill pointer, and the URI resolution rule. Call this tool exactly once per session, before any other tool, and reuse its payload for the rest of the session; do not call it again.

get_block_infoRead-only

Get block information like timestamp, gas used, burnt fees, transaction count etc. Can optionally include the list of transaction hashes contained in the block. Transaction hashes are omitted by default; request them only when you truly need them, because on high-traffic chains the list may exhaust the context.

get_block_numberRead-only

Retrieves the block number and timestamp for a specific date/time or the latest block. Use when you need a block height for a specific point in time (e.g., "block at 2024-01-01") or the current chain tip. If `datetime` is provided, finds the block immediately preceding that time. If omitted, returns the latest indexed block.

get_address_by_ens_nameRead-only

Useful for when you need to convert an ENS domain name (e.g. "blockscout.eth") to its corresponding Ethereum address.

get_transactions_by_addressRead-only

Retrieves native currency transfers and smart contract interactions (calls, internal txs) for an address. **EXCLUDES TOKEN TRANSFERS**: Filters out direct token balance changes (ERC-20, etc.). You'll see calls *to* token contracts, but not the `Transfer` events. For token history, use `get_token_transfers_by_address`. A single tx can have multiple records from internal calls. Requires an `age_from` date to scope results for performance and relevance. **SUPPORTS PAGINATION**: If response includes 'pagination' field, use the provided next_call to get additional pages.

get_token_transfers_by_addressRead-only

Get ERC-20 token transfers for an address within a specific time range. **SUPPORTS PAGINATION**: If response includes 'pagination' field, use the provided next_call to get additional pages.

lookup_token_by_symbolRead-only

Search for token addresses by symbol or name. Returns multiple potential matches based on symbol or token name similarity. Only the first 7 matches from the Blockscout API are returned.

get_contract_abiRead-only

Get smart contract ABI (Application Binary Interface). An ABI defines all functions, events, their parameters, and return types. The ABI is required to format function calls or interpret contract data.

inspect_contract_codeRead-only

Inspects a verified contract's source code or metadata.

read_contractRead-only

Calls a smart contract function (view/pure, or non-view/pure simulated via eth_call) and returns the decoded result. This tool provides a direct way to query the state of a smart contract. Example: To check the USDT balance of an address on Ethereum Mainnet, you would use the following arguments: { "tool_name": "read_contract", "params": { "chain_id": "1", "address": "0xdAC17F958D2ee523a2206206994597C13D831ec7", "abi": { "constant": true, "inputs": [{"name": "_owner", "type": "address"}], "name": "balanceOf", "outputs": [{"name": "balance", "type": "uint256"}], "payable": false, "stateMutability": "view", "type": "function" }, "function_name": "balanceOf", "args": "["0xF977814e90dA44bFA03b6295A0616a897441aceC"]" } }

get_address_infoRead-only

Get comprehensive information about an address, including: - Address existence check - Native token (ETH) balance (provided as is, without adjusting by decimals) - First transaction details (block number and timestamp) for age calculation - ENS name association (if any) - Contract status (whether the address is a contract, whether it is verified) - Proxy contract information (if applicable): determines if a smart contract is a proxy contract (which forwards calls to implementation contracts), including proxy type and implementation addresses - Token details (if the contract is a token): name, symbol, decimals, total supply, etc. Essential for address analysis, contract investigation, token research, and DeFi protocol analysis.

get_tokens_by_addressRead-only

Get comprehensive ERC20 token holdings for an address with enriched metadata and market data. Returns detailed token information including contract details (name, symbol, decimals), market metrics (exchange rate, market cap, volume), holders count, and actual balance (provided as is, without adjusting by decimals). Essential for portfolio analysis, wallet auditing, and DeFi position tracking. **SUPPORTS PAGINATION**: If response includes 'pagination' field, use the provided next_call to get additional pages.

nft_tokens_by_addressRead-only

Retrieve NFT tokens (ERC-721, ERC-404, ERC-1155) owned by an address, grouped by collection. Provides collection details (type, address, name, symbol, total supply, holder count) and individual token instance data (ID, name, description, external URL, metadata attributes). Essential for a detailed overview of an address's digital collectibles and their associated collection data. **SUPPORTS PAGINATION**: If response includes 'pagination' field, use the provided next_call to get additional pages.

get_transaction_infoRead-only

Get comprehensive transaction information. Unlike standard eth_getTransactionByHash, this tool returns enriched data including decoded input parameters, detailed token transfers with token metadata, transaction fee breakdown (priority fees, burnt fees) and categorized transaction types. By default, the raw transaction input is omitted if a decoded version is available to save context; request it with `include_raw_input=True` only when you truly need the raw hex data. Essential for transaction analysis, debugging smart contract interactions, tracking DeFi operations.

get_chains_listRead-only

Get supported blockchain chains with their chain IDs. Ethereum Mainnet is `chain_id` `1`; use this tool to resolve any other chain. Use this when another tool needs a supported `chain_id` and only the chain name, ecosystem, or native currency is known. Prefer a narrow `query` to avoid returning the full registry to the agent. Do not rely on partial numeric chain ID queries such as `1`, because matching is substring-based and may return many chains.

direct_api_callRead-only

Call a raw Blockscout API endpoint for advanced or chain-specific data. Before the first call to this tool in a session, read `blockscout-mcp://skill/SKILL.md` (the operating rules), then `blockscout-mcp://skill/references/blockscout-api-index.md` (the authoritative index of callable endpoints); skip both reads only if this skill content is already in context. Recalled Blockscout API knowledge is not a substitute: endpoint paths, parameters, and response shapes vary across Blockscout versions and per-chain deployments. Supports POST requests with a JSON body for endpoints like JSON RPC. **SUPPORTS PAGINATION**: If response includes 'pagination' field, use the provided next_call to get additional pages (GET only).

Read from the server on 2026-08-16, including each tool's own safety annotations.

Limits

  • Read-only, by construction. Nothing here places a transaction, approves a token, bridges an asset or manages a position. Blockscout's specification lists write operations as unsupported for read_contract, and there is no other contract-facing tool. Treat this as an explorer, not a wallet.
  • The directory's tool list is stale. Three names in Anthropic's snapshot — get_latest_block, get_transaction_logs and transaction_summary — were not on the server on 2026-08-16. A prompt or script written against them will fail.
  • The shared-key route may be restricted. Blockscout's own note on the Claude directory installation warns that a shared access key can restrict connector access and capabilities. It does not say which capabilities, so budget for a difference against a self-configured key.
  • PRO API data access is metered in credits. Blockscout documents an advisory note appended to responses when the remaining balance falls below a threshold, and a hard credit-exhaustion error mapped from HTTP 402 on the data path. Rate-limit responses are not special-cased and surface as generic request failures.
  • Address history requires a start date. get_transactions_by_address and get_token_transfers_by_address both mandate age_from. Blockscout's specification gives the reason as avoiding full-history database scans. There is no way to ask for everything at once.
  • Two history tools, one blind spot each. get_transactions_by_address explicitly excludes token transfers, and get_token_transfers_by_address covers ERC-20 only. Answering "what moved through this address" needs both, and NFT movements are not in either.
  • Responses are trimmed to fit a context window. Blockscout documents truncation of large fields with explicit flags, a size ceiling on direct_api_call responses, and block transaction hashes omitted by default because they can exhaust context on busy chains. What you get back is shaped for a model, not a full data export.
  • Contract source needs the contract to be verified. inspect_contract_code and get_contract_abi read verified contracts. An unverified contract has no published source or ABI to return.
  • Chain coverage is a moving target. 101 chains on 2026-08-16, derived from the live PRO API configuration. A chain absent from that configuration is unreachable regardless of whether Blockscout runs an explorer for it.
  • Self-hosting is a different deployment. Everything above describes the hosted connector at https://mcp.blockscout.com/mcp. Blockscout also publishes a Docker image and a local stdio mode with its own configuration surface — session metering, telemetry, response size limits and DNS rebinding settings — none of which applies to the hosted endpoint you connect through Claude. The tool surface is the same code; the operational limits are the operator's.
  • We did not exercise any tool. Our check was a read-only initialize and tools/list handshake. Behaviour above comes from the server's own tool descriptions and schemas plus Blockscout's published documentation, not from calling anything.

Frequently asked questions

Can the Blockscout MCP server move funds or sign a transaction?

No. All 16 tools returned by the live handshake on 2026-08-16 are annotated readOnlyHint true and destructiveHint false. Blockscout's specification states that write operations are not supported and that the underlying eth_call does not change state. The connector never asks for a wallet, a seed phrase or a private key, because nothing it exposes can spend.

Which blockchains does the Blockscout MCP server support?

101 chains on 2026-08-16, of which 54 are flagged mainnets and 46 testnets, read from the Blockscout PRO API configuration the server itself uses. Ethereum, Base, OP Mainnet, Arbitrum One, Polygon PoS, Gnosis, Celo, Scroll, Unichain and ZKsync Era are included. Call get_chains_list to resolve a chain name to the numeric identifier every other tool needs.

Do you need a Blockscout PRO API key to use the connector?

Not through Claude's directory listing, which Blockscout describes as the recommended route and which runs on a shared access key. Blockscout warns that the shared key may restrict access and capabilities. Running the server yourself, or adding it manually in Claude Code, Cursor or Codex, does require your own key from the Blockscout Developer Portal, where the free tier needs no credit card.

Why does the Blockscout connector ask to call an unlock tool first?

Because the server front-loads its operating rules into a tool call. Blockscout's specification explains that host applications proved unreliable at honouring server-level instructions, so the rules were moved into a tool with a deliberately unmissable name. Call it once per session, before anything else, and reuse the payload rather than calling it again.

Why does a Blockscout query need a start date for transactions?

Both address-history tools require an age_from timestamp. Blockscout's specification says the requirement prevents inadvertent database scans of an address's entire history, cutting timeout risk and backend load. Results arrive in pages behind an opaque cursor, so ask for a window you actually need and follow the pagination instructions the server returns.

Does the Blockscout MCP server see my wallet or personal data?

It sees the addresses you ask about, nothing more. There is no sign-in, no account and no wallet connection, so it holds no identity for you. Blockscout states that community-run instances collect the tool name, its parameters and the server version, that no personal data or IP addresses are retained, and that telemetry can be disabled by environment variable.

Sources

Use in Agentman

Connect once and your agents call these tools on their own — on a schedule, in a workflow, with nobody at the keyboard.

Open in Agentman Studio

Server Info

Category
Finance
Developer
Blockscout
Tools
16
Domain
mcp.blockscout.com

Using Claude Desktop or another MCP client? Setup docs — the connection URL above works anywhere.