Skip to main content
Glama

@xiaok/etherscan-mcp

A dynamic MCP server for interacting with Etherscan's API and services.

Running Your Server

Test with mcp-cli

The fastest way to test and debug your server is with fastmcp dev:

npx fastmcp dev src/index.ts

This will run your server with mcp-cli for testing and debugging your MCP server in the terminal.

Inspect with MCP Inspector

Another way is to use the official MCP Inspector to inspect your server with a Web UI:

npx npx fastmcp inspect src/index.ts

Related MCP server: MCP Etherscan Server

FAQ

How to use with Claude Desktop?

Follow the guide https://modelcontextprotocol.io/quickstart/user and add the following configuration:

{
  "mcpServers": {
    "etherscan_mcp": {
      "command": "npx",
      "args": ["tsx", "/PATH/TO/YOUR_PROJECT/src/index.ts"],
      "env": {
        "ETHERSCAN_API_KEY": "********"
      }
    }
  }
}

API Doc

https://docs.etherscan.io/etherscan-v2

support chain list: https://docs.etherscan.io/etherscan-v2/getting-started/supported-chains

Please note that not all endpoints are supported by all chains. Please find support list here: https://forms.blockscan.com/public/grid/3E9QiN00NLhCQVibiP3Z-Bpqhmd7zGXsgapEKJupxiI

TODO

  1. support pro api

Available Tools

6 tools
get_chain_idB

Get the chain ID for a given chain name

Inputs: chain_name (required).

get_filtered_rpc_listC

Get a filtered list of RPC endpoints for a given chain ID

Inputs: chain_id (required), isOpenSource, tracking.

get_token_balanceC

Get the balance of a specific token for a specific address

Inputs: chain_id (required), token_address (required), address (required).

get_token_holdersC

Get the token holders for a given token address

Inputs: chain_id (required), token_address (required).

get_token_holders_countC

Get the number of token holders for a given token address

Inputs: chain_id (required), token_address (required).

get_total_supplyB

Get the total supply of a token given its address

Inputs: chain_id (required), token_address (required).

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    B3.3/5.0

    Scored across 6 tools

    Disambiguation4/5

    Most tools have distinct purposes targeting different token-related queries, but get_token_holders and get_token_holders_count could be confused as they both retrieve holder information. The descriptions clarify the difference (list vs count), but the overlap in naming might cause misselection.

    Naming Consistency5/5

    All tool names follow a consistent verb_noun pattern using snake_case (e.g., get_chain_id, get_token_balance). The naming is highly predictable and readable throughout the set, with no deviations in style or convention.

    Tool Count4/5

    With 6 tools, the count is reasonable for an Etherscan-focused server, covering chain info, RPC endpoints, and token data. It feels slightly thin for a full blockchain explorer, but it's well-scoped for the provided token and chain utilities.

    Completeness3/5

    The tools cover token balances, holders, and supply, plus chain and RPC info, but there are notable gaps for a broader Etherscan domain. Missing operations include transaction lookups, contract interactions, and gas/price queries, which are common in blockchain tools, limiting coverage to a narrow subset.

    Related MCP Connectors

    Related MCP Servers