Skip to main content
Glama

Server Details

MCP server for Blockscout

Status
Healthy
Last Tested
Transport
Streamable HTTP
URL
Repository
blockscout/mcp-server
GitHub Stars
27
Server Listing
Blockscout MCP Server

Available Tools

16 tools
direct_api_callTry in Inspector

Call a raw Blockscout API endpoint for advanced or chain-specific data.

Do not include query strings in ``endpoint_path``; pass all query parameters via ``query_params`` to avoid double-encoding. **SUPPORTS PAGINATION**: If response includes 'pagination' field, use the provided next_call to get additional pages. Returns: ToolResponse[Any]: Must return ToolResponse[Any] (not ToolResponse[BaseModel]) because specialized handlers can return lists or other types that don't inherit from BaseModel. The dispatcher system supports flexible data structures.
ParametersJSON Schema
NameRequiredDescriptionDefault
cursorNoThe pagination cursor from a previous response to get the next page of results.
chain_idYesThe ID of the blockchain
query_paramsNoOptional query parameters forwarded to the Blockscout API.
endpoint_pathYesThe Blockscout API path to call (e.g., '/api/v2/stats'); do not include query strings.
get_address_by_ens_nameTry in Inspector

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

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesENS domain name to resolve
get_address_infoTry in Inspector
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.
ParametersJSON Schema
NameRequiredDescriptionDefault
addressYesAddress to get information about
chain_idYesThe ID of the blockchain
get_block_infoTry in Inspector

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
chain_idYesThe ID of the blockchain
number_or_hashYesBlock number or hash
include_transactionsNoIf true, includes a list of transaction hashes from the block.
get_block_numberTry in Inspector
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.
ParametersJSON Schema
NameRequiredDescriptionDefault
chain_idYesThe ID of the blockchain
datetimeNoThe date and time (ISO 8601 format, e.g. 2025-05-22T23:00:00.00Z) to find the block for. If omitted, returns the latest block.
get_chains_listTry in Inspector

Get the list of known blockchain chains with their IDs. Useful for getting a chain ID when the chain name is known. This information can be used in other tools that require a chain ID to request information.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

get_contract_abiTry in Inspector

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
addressYesSmart contract address
chain_idYesThe ID of the blockchain
get_tokens_by_addressTry in Inspector
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.
ParametersJSON Schema
NameRequiredDescriptionDefault
cursorNoThe pagination cursor from a previous response to get the next page of results.
addressYesWallet address
chain_idYesThe ID of the blockchain
get_token_transfers_by_addressTry in Inspector
Get ERC-20 token transfers for an address within a specific time range. Use cases: - `get_token_transfers_by_address(address, age_from)` - get all transfers of any ERC-20 token to/from the address since the given date up to the current time - `get_token_transfers_by_address(address, age_from, age_to)` - get all transfers of any ERC-20 token to/from the address between the given dates - `get_token_transfers_by_address(address, age_from, age_to, token)` - get all transfers of the given ERC-20 token to/from the address between the given dates **SUPPORTS PAGINATION**: If response includes 'pagination' field, use the provided next_call to get additional pages.
ParametersJSON Schema
NameRequiredDescriptionDefault
tokenNoAn ERC-20 token contract address to filter transfers by a specific token. If omitted, returns transfers of all tokens.
age_toNoEnd date and time (e.g 2025-05-22T22:30:00.00Z). Can be omitted to get all transfers up to the current time.
cursorNoThe pagination cursor from a previous response to get the next page of results.
addressYesAddress which either transfer initiator or transfer receiver
age_fromYesStart date and time (e.g 2025-05-22T23:00:00.00Z).
chain_idYesThe ID of the blockchain
get_transaction_infoTry in Inspector
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.
ParametersJSON Schema
NameRequiredDescriptionDefault
chain_idYesThe ID of the blockchain
transaction_hashYesTransaction hash
include_raw_inputNoIf true, includes the raw transaction input data.
get_transactions_by_addressTry in Inspector
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; use `internal_transaction_index` for execution order. Requires an `age_from` date to scope results for performance and relevance. Use cases: - `get_transactions_by_address(address, age_from)` - get all txs to/from the address since a given date. - `get_transactions_by_address(address, age_from, age_to)` - get all txs to/from the address between given dates. - `get_transactions_by_address(address, age_from, age_to, methods)` - get all txs to/from the address between given dates, filtered by method. **SUPPORTS PAGINATION**: If response includes 'pagination' field, use the provided next_call to get additional pages.
ParametersJSON Schema
NameRequiredDescriptionDefault
age_toNoEnd date and time (e.g 2025-05-22T22:30:00.00Z).
cursorNoThe pagination cursor from a previous response to get the next page of results.
addressYesAddress which either sender or receiver of the transaction
methodsNoA method signature to filter transactions by (e.g 0x304e6ade)
age_fromYesStart date and time (e.g 2025-05-22T23:00:00.00Z).
chain_idYesThe ID of the blockchain
inspect_contract_codeTry in Inspector

Inspects a verified contract's source code or metadata.

ParametersJSON Schema
NameRequiredDescriptionDefault
addressYesThe address of the smart contract.
chain_idYesThe ID of the blockchain.
file_nameNoThe name of the source file to inspect. If omitted, returns contract metadata and the list of source files.
lookup_token_by_symbolTry in Inspector
Search for token addresses by symbol or name. Returns multiple potential matches based on symbol or token name similarity. Only the first ``TOKEN_RESULTS_LIMIT`` matches from the Blockscout API are returned.
ParametersJSON Schema
NameRequiredDescriptionDefault
symbolYesToken symbol or name to search for
chain_idYesThe ID of the blockchain
nft_tokens_by_addressTry in Inspector
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.
ParametersJSON Schema
NameRequiredDescriptionDefault
cursorNoThe pagination cursor from a previous response to get the next page of results.
addressYesNFT owner address
chain_idYesThe ID of the blockchain
read_contractTry in Inspector
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"]" } }
ParametersJSON Schema
NameRequiredDescriptionDefault
abiYesThe JSON ABI for the specific function being called. This should be a dictionary that defines the function's name, inputs, and outputs. The function ABI can be obtained using the `get_contract_abi` tool.
argsNoA JSON string containing an array of arguments. Example: "["0xabc..."]" for a single address argument, or "[]" for no arguments. Order and types must match ABI inputs. Addresses: use 0x-prefixed strings; Numbers: prefer integers (not quoted); numeric strings like "1" are also accepted and coerced to integers. Bytes: keep as 0x-hex strings.[]
blockNoThe block identifier to read the contract state from. Can be a block number (e.g., 19000000) or a string tag (e.g., 'latest'). Defaults to 'latest'.latest
addressYesSmart contract address
chain_idYesThe ID of the blockchain
function_nameYesThe symbolic name of the function to be called. This must match the `name` field in the provided ABI.
__unlock_blockchain_analysis__Try in Inspector

Unlocks access to other MCP tools.

All tools remain locked with a "Session Not Initialized" error until this function is successfully called. Skipping this explicit initialization step will cause all subsequent tool calls to fail. MANDATORY FOR AI AGENTS: The returned instructions contain ESSENTIAL rules that MUST govern ALL blockchain data interactions. Failure to integrate these rules will result in incorrect data retrieval, tool failures and invalid responses. Always apply these guidelines when planning queries, processing responses or recommending blockchain actions. COMPREHENSIVE DATA SOURCES: Provides an extensive catalog of specialized blockchain endpoints to unlock sophisticated, multi-dimensional blockchain investigations across all supported networks.
ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

FAQ

How do I claim this server?

To claim this server, publish a /.well-known/glama.json file on your server's domain with the following structure:

{ "$schema": "https://glama.ai/mcp/schemas/connector.json", "maintainers": [ { "email": "your-email@example.com" } ] }

The email address must match the email associated with your Glama account. Once verified, the server will appear as claimed by you.

What are the benefits of claiming a server?
  • Control your server's listing on Glama, including description and metadata
  • Receive usage reports showing how your server is being used
  • Get monitoring and health status updates for your server
Try in Browser

Your Connectors

Sign in to create a connector for this server.