返回市场
以太坊扫描服务器

以太坊扫描服务器

作者:crazyrabbitLTC27 星标更新:2025-01-01

项目介绍

MCP Etherscan 服务器

这是一个通过 Etherscan 的 API 提供以太坊区块链数据工具的 MCP(模型上下文协议)服务器。功能包括检查 ETH 余额、查看交易历史、跟踪 ERC20 转移、获取合约 ABI、监控 Gas 价格以及解析 ENS 名称。

功能

  • 余额检查:获取任何以太坊地址的 ETH 余额
  • 交易历史:查看带有详细信息的最近交易
  • 代币转移:跟踪带有代币详情的 ERC20 代币转移
  • 合约 ABI:获取智能合约 ABI 用于开发
  • Gas 价格:监控当前 Gas 价格(安全低、标准、快速)
  • ENS 解析:将以太坊地址解析为 ENS 名称

预备条件

安装

  1. 克隆仓库:
git clone [your-repo-url]
cd mcp-etherscan-server
  1. 安装依赖:
npm install
  1. 在根目录创建一个 .env 文件:
ETHERSCAN_API_KEY=your_api_key_here
  1. 构建项目:
npm run build

运行服务器

启动服务器:

npm start

该服务器将在 stdio 上运行,使其与如 Claude Desktop 等 MCP 客户端兼容。

工作原理

此服务器实现了 Model Context Protocol (MCP),通过 Etherscan 的 API 提供与以太坊区块链数据交互的工具。每个工具都作为 MCP 端点暴露出来,可以被兼容客户端调用。

可用工具

  1. check-balance

    • 输入:以太坊地址
    • 输出:ETH 余额(以 Wei 和 ETH 表示)
  2. get-transactions

    • 输入:以太坊地址,可选限制
    • 输出:带有时间戳、金额和地址的最近交易
  3. get-token-transfers

    • 输入:以太坊地址,可选限制
    • 输出:带有代币详情的最近 ERC20 代币转移
  4. get-contract-abi

    • 输入:合约地址
    • 输出:JSON 格式的合约 ABI
  5. get-gas-prices

    • 输入:无
    • 输出:当前 Gas 价格(以 Gwei 表示)
  6. get-ens-name

    • 输入:以太坊地址
    • 输出:如果可用,则返回关联的 ENS 名称

使用 Claude Desktop

要将此服务器添加到 Claude Desktop:

  1. 使用 npm start 启动服务器

  2. 在 Claude Desktop 中:

    • 前往设置
    • 导航至 MCP 服务器部分
    • 点击“添加服务器”
    • 输入以下配置:
      {
        "name": "Etherscan 工具",
        "transport": "stdio",
        "command": "node /path/to/mcp-etherscan-server/build/index.js"
      }
      
    • 保存配置
  3. 现在,Etherscan 工具将在您的 Claude 对话中可用

在 Claude 中的使用示例

您可以使用如下命令:

检查 0x742d35Cc6634C0532925a3b844Bc454e4438f44e 的余额

显示 vitalik.eth 的最近交易

开发

要添加新功能或修改现有功能:

  1. 主服务器逻辑位于 src/server.ts
  2. Etherscan API 交互处理在 src/services/etherscanService.ts
  3. 更改后构建:npm run build

许可证

MIT 许可证 - 查看 LICENSE 文件了解详情