返回市场
ENS-MCP-服务器

ENS-MCP-服务器

作者:JustaName-id8 星标更新:2025-06-25

项目介绍

ENS MCP Server

用于以太坊名称服务(ENS)的MCP服务器,使Claude能够与ENS系统交互,解析名称、检查可用性、检索记录等。

npm包:https://www.npmjs.com/package/mcp-server-ens

工具

resolve-name

将ENS名称解析为以太坊地址

  • 所需输入:
    • name (字符串):要解析的ENS名称(例如,'vitalik.eth')
  • 返回值: 对应的以太坊地址或错误信息

reverse-lookup

根据以太坊地址获取对应的ENS名称

  • 所需输入:
    • address (字符串):要查询的以太坊地址
  • 返回值: 对应的ENS名称或未找到名称的指示

get-text-record

获取ENS名称的文本记录

  • 所需输入:
    • name (字符串):要查询的ENS名称
    • key (字符串):要查找的记录键(例如,'email','url','avatar','description','twitter'等)
  • 返回值: 指定文本记录的值或未找到记录的指示

check-availability

检查ENS名称是否可用于注册

  • 所需输入:
    • name (字符串):要检查的ENS名称
  • 返回值: 可用状态及已注册时的所有者信息

get-all-records

获取ENS名称的所有可用信息

  • 所需输入:
    • name (字符串):要查询的ENS名称
  • 返回值: 包括解析器地址、文本记录、地址、内容哈希、所有权和过期详情在内的综合信息

get-subdomains

获取ENS名称的子域

  • 所需输入:
    • name (字符串):要查询子域的ENS名称
  • 返回值: 子域名及其所有者信息列表

get-name-history

获取ENS名称的历史

  • 所需输入:
    • name (字符串):要检查历史的ENS名称
  • 返回值: 与名称相关的事件历史,包括转让、解析器更改和注册事件

get-registration-price

获取注册ENS名称的价格

  • 所需输入:
    • name (字符串):要检查价格的ENS名称
  • 可选输入:
    • duration (数字,默认值:1):注册持续时间(年)
  • 返回值: 注册价格明细,包括基础价格、溢价和总价

安装

先决条件

  • Node.js (v16或更高版本)
  • npm 或 yarn
  • 访问以太坊RPC提供者(公共或私有)

安装步骤

  1. 克隆仓库或创建新项目:
git clone https://github.com/JustaName-id/ens-mcp-server
  1. 安装依赖项:
npm i
  1. 配置以太坊提供者: 在项目根目录中创建一个.env文件,包含以下内容(可选):
PROVIDER_URL=https://your-provider-url.com,https://your-backup-provider.com

如果没有指定提供者,服务器将使用以下默认值:

使用Claude Desktop

在你的claude_desktop_config.json中添加以下内容:

使用npx

{
  "mcpServers": {
    "ens": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-server-ens"
      ],
      "env": {
        "PROVIDER_URL": "https://your-provider-url.com,https://your-backup-provider.com"
      }
    }
  }
}

使用本地脚本

{
  "mcpServers": {
    "ens": {
      "command": "node",
      "args": [
        "/path/to/your/server.js"
      ],
      "env": {
        "PROVIDER_URL": "https://your-provider-url.com,https://your-backup-provider.com"
      }
    }
  }
}

错误处理

服务器实现了针对各种情况的健壮错误处理:

  • 连接到以太坊提供者的网络错误
  • 无效的ENS名称或以太坊地址
  • ENS特定错误
  • 一般操作错误

所有错误都被规范化为用户友好的消息,同时保留调试所需的详细技术信息。

发布

作为npm包发布:

npm publish --access public

故障排除

如果遇到错误:

  • 确认你的以太坊提供者正常工作且可访问
  • 检查你查询的ENS名称格式是否正确
  • 确保你使用的是最新版本的ENS库
  • 尝试通过在PROVIDER_URL环境变量中逗号分隔多个提供者来使用多个提供者

许可证

此MCP服务器采用MIT许可证。这意味着你可以自由地使用、修改和分发该软件,但需遵守MIT许可证中的条款和条件。更多详情,请参见项目仓库中的LICENSE文件。