Etherscan数据工具
通过Etherscan的API提供以太坊区块链数据工具,使用户能够查看ETH余额、浏览交易、追踪代币转账、获取合约ABIs、监控Gas价格以及解析ENS名称。
可用工具 (6 个)
该服务在 MCP 协议中暴露的工具,AI 可按需调用
check-balance 1 个参数 需填 1 项
Check the ETH balance of an Ethereum address
必填参数:address
get-transactions 2 个参数 需填 1 项
Get recent transactions for an Ethereum address
必填参数:address
get-token-transfers 2 个参数 需填 1 项
Get ERC20 token transfers for an Ethereum address
必填参数:address
get-contract-abi 1 个参数 需填 1 项
Get the ABI for a smart contract
必填参数:address
get-gas-prices
Get current gas prices in Gwei
该工具无需必填参数,直接调用即可
get-ens-name 1 个参数 需填 1 项
Get the ENS name for an Ethereum address
必填参数:address
服务介绍
MCP Etherscan 服务器
一个通过 Etherscan 的 API 提供以太坊区块链数据工具的 MCP(Model Context Protocol)服务器。功能包括检查 ETH 余额、查看交易历史、跟踪 ERC20 转账、获取合约 ABI、监控 gas 价格以及解析 ENS 名称。
功能
- 余额查询:获取任何以太坊地址的 ETH 余额
- 交易历史:查看带有详细信息的最近交易
- 代币转账:跟踪带有代币详情的 ERC20 代币转账
- 合约 ABI:为开发获取智能合约的 ABI
- Gas 价格:监控当前的 gas 价格(安全低、标准、快速)
- ENS 解析:将以太坊地址解析为 ENS 名称
前提条件
- Node.js >= 18
- 一个 Etherscan API 密钥(在 https://etherscan.io/apis 获取)
安装
- 克隆仓库:
git clone [your-repo-url]
cd mcp-etherscan-server
- 安装依赖项:
npm install
- 在根目录下创建一个
.env文件:
ETHERSCAN_API_KEY=your_api_key_here
- 构建项目:
npm run build
运行服务器
启动服务器:
npm start
服务器将在 stdio 上运行,使其与像 Claude Desktop 这样的 MCP 客户端兼容。
工作原理
该服务器实现了 Model Context Protocol (MCP),通过 Etherscan 的 API 提供与以太坊区块链数据交互的工具。每个工具都作为 MCP 端点暴露,可以由兼容的客户端调用。
可用工具
-
check-balance- 输入:以太坊地址
- 输出:以 Wei 和 ETH 形式表示的 ETH 余额
-
get-transactions- 输入:以太坊地址,可选限制
- 输出:带有时间戳、金额和地址的最近交易
-
get-token-transfers- 输入:以太坊地址,可选限制
- 输出:带有代币详情的最近 ERC20 代币转账
-
get-contract-abi- 输入:合约地址
- 输出:JSON 格式的合约 ABI
-
get-gas-prices- 输入:无
- 输出:以 Gwei 表示的当前 gas 价格
-
get-ens-name- 输入:以太坊地址
- 输出:如果可用,则返回关联的 ENS 名称
与 Claude Desktop 结合使用
要将此服务器添加到 Claude Desktop:
-
使用
npm start启动服务器 -
在 Claude Desktop 中:
- 进入设置
- 导航到 MCP 服务器部分
- 点击“添加服务器”
- 输入以下配置:
{ "name": "Etherscan Tools", "transport": "stdio", "command": "node /path/to/mcp-etherscan-server/build/index.js" } - 保存配置
-
Etherscan 工具现在可以在您的 Claude 对话中使用了
在 Claude 中的示例用法
您可以使用如下命令:
Check the balance of 0x742d35Cc6634C0532925a3b844Bc454e4438f44e
或
Show me recent transactions for vitalik.eth
开发
要添加新功能或修改现有功能:
- 主服务器逻辑在
src/server.ts中 - Etherscan API 交互在
src/services/etherscanService.ts中处理 - 修改后构建:
npm run build
许可证
MIT 许可证 - 详情请参阅 LICENSE 文件