Etherscan
io.etherscan/etherscan-mcpVersion 2.3.0Read-only Etherscan V2 blockchain data: balances, transactions, transfers, tokens, contracts, logs.
Status
Responds419 msAnswered our handshake without sign-in.- Last checked
- Nov 14, 2026, 14:34 UTC
- Latency
- 419 ms
- Remotes responding
- 1 of 2
- Sign-in
- API key, No sign-in
- Hosting
- Hosted outside the EU (detected)
- Registry data as of
- Nov 14, 2026, 21:12 UTC
Data from the official MCP Registry, checked by run.zero. How we check
Connect
Streamable HTTP
https://mcp-keyless.etherscan.io/mcpResponds419 msNo sign-in
Claude Code
claude mcp add --transport http etherscan-mcp https://mcp-keyless.etherscan.io/mcpClaude Desktop and claude.ai
Settings > Connectors > Add custom connector
Name: etherscan-mcp
Remote MCP server URL: https://mcp-keyless.etherscan.io/mcpCursor
{
"mcpServers": {
"etherscan-mcp": {
"url": "https://mcp-keyless.etherscan.io/mcp"
}
}
}VS Code
code --add-mcp '{"name":"etherscan-mcp","type":"http","url":"https://mcp-keyless.etherscan.io/mcp"}'Streamable HTTP
https://mcp.etherscan.io/mcpResponds with errorsNo sign-in
Claude Code
claude mcp add --transport http etherscan-mcp https://mcp.etherscan.io/mcp --header 'Authorization: Bearer <YOUR_TOKEN>'Replace <YOUR_TOKEN> before running.
Claude Desktop and claude.ai
Settings > Connectors > Add custom connector
Name: etherscan-mcp
Remote MCP server URL: https://mcp.etherscan.io/mcp
This server expects the header Authorization.Cursor
{
"mcpServers": {
"etherscan-mcp": {
"url": "https://mcp.etherscan.io/mcp",
"headers": {
"Authorization": "Bearer <YOUR_TOKEN>"
}
}
}
}Replace <YOUR_TOKEN> before running.
VS Code
code --add-mcp '{"name":"etherscan-mcp","type":"http","url":"https://mcp.etherscan.io/mcp","headers":{"Authorization":"Bearer <YOUR_TOKEN>"}}'Replace <YOUR_TOKEN> before running.
Built your own server? run.zero hosts MCP servers on European infrastructure.
Tools
17 tools
Read-only | Idempotent | Open world | ||
|---|---|---|---|---|
get_block_by_timestampGet the block number closest to a given Unix timestamp (seconds). | No | Yes | Yes | Yes |
get_contract_abiGet the verified ABI (JSON) for a contract address. | No | Yes | Yes | Yes |
get_contract_creationGet the creator address and creation transaction hash for up to 5 contract addresses. The multi-kilobyte creation bytecode is omitted by default to keep responses small; set include_creation_bytecode=true to include it. | No | Yes | Yes | Yes |
get_contract_sourceGet the verified source code and metadata for a contract address. | No | Yes | Yes | Yes |
get_gas_oracleGet current gas price recommendations (safe / propose / fast) from the gas tracker. | No | Yes | Yes | Yes |
get_internal_transactionsGet internal transactions for an address, or by a specific parent transaction hash. | No | Yes | Yes | Yes |
get_logsSearch event logs by contract address and/or topics over a block range. Topics are 32-byte hex values; topic0 is usually the keccak256 event-signature hash. Adjacent-topic operators (and/or) combine multiple topic filters. Provide 'address' and/or at least one topic. | No | Yes | Yes | Yes |
get_native_balanceGet the native coin (e.g. ETH) balance of an address, in wei. | No | Yes | Yes | Yes |
get_supported_chainsGet the chains / chain IDs supported by the Etherscan V2 API. In the hosted (proxy) deployment this returns a bundled snapshot shipped with the server, refreshed when the package is updated; in direct/stdio mode it queries the live chain-list endpoint. A chain's absence from the returned list is not proof that it lacks live support. | No | Yes | Yes | Yes |
get_token_transfersGet token transfer events for an address, optionally filtered by token contract. Select the token standard: erc20 (fungible, default), erc721 (NFT), or erc1155 (multi-token). | No | Yes | Yes | Yes |
get_transaction_by_hashGet the full transaction object for a transaction hash (from, to, value, input data, gas, gas price, nonce, block number/hash, transaction index). Returns null if the hash is unknown. | No | Yes | Yes | Yes |
get_transaction_receiptGet the transaction receipt for a transaction hash (execution status, gas used, cumulative gas used, effective gas price, logs, and the created contract address for deployments). Returns null if the hash is unknown or the transaction is still pending. | No | Yes | Yes | Yes |
get_transaction_receipt_statusGet the receipt status of a transaction (1 = success, 0 = failed). Post-Byzantium only. | No | Yes | Yes | Yes |
get_transaction_statusGet the contract execution status of a transaction (detects failed/erroring executions). | No | Yes | Yes | Yes |
get_transactionsGet the list of normal (external) transactions for an address. | No | Yes | Yes | Yes |
render_etherscan_widgetPresent exact facts returned by Etherscan data tools in a fast explorer-style card. Call the relevant Etherscan data tool first and copy only supported values into this tool. Never invent scores, risk labels, historical prices, forecasts, or audit conclusions. | No | Yes | Yes | No |
resolve_ens_nameResolve an ENS name (or onchain subdomain, e.g. etherscan.eth or gm.etherscan.eth) to its Ethereum address. Ethereum mainnet only. Offchain names that require CCIP Read / wildcard resolution (e.g. *.base.eth) are not supported. A name that does not resolve returns ok:true with a null result. | No | Yes | Yes | Yes |
Details
- Registry status
- Active
- Published
- Sep 4, 2026
- Updated
- Sep 4, 2026
- Repository
- Not given
- Categories (suggested)
- Finance and paymentsSuggested categories are assigned automatically from the registry text and may be wrong. Verified operators can correct them.
- GDPR
- Not declared