ENS解析服务器

用于以太坊名称服务(ENS)的MCP服务器,支持名称解析、可用性检查、记录检索等功能。

  • by JustaLab-co
  • TypeScript
  • 本地部署
  • 8 星标
  • 更新于
在 GitHub 查看 JustaName-id/ens-mcp-server

使用说明

ENS MCP 服务器

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

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

工具

解析名称

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

  • 所需输入:
    • name (string):要解析的ENS名称(例如,“vitalik.eth”)
  • 退货: 相应的以太坊地址或错误消息

反向查找

获取以太坊地址的ENS名称

  • 所需输入:
    • address (string):要查找的以太坊地址
  • 退货: 对应的ENS名称或未找到名称的指示

获取文本记录

获取ENS名称的文本记录

  • 所需输入:
    • name (string):要查询的ENS名称
    • key (string):要查找的记录键(例如,“电子邮件”、“网址”、“头像”、“描述”、“推特”等)
  • 退货: 指定文本记录的值或未找到记录的指示

检查可用性

检查ENS名称是否可供注册

  • 所需输入:
    • name (string):要检查的ENS名称
  • 退货: 可用性状态和所有者信息(如果已注册)

获取所有记录

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

  • 所需输入:
    • name (string):要查询的ENS名称
  • 退货: 全面的信息,包括解析器地址、文本记录、地址、内容哈希、所有权和过期详细信息

获取子域

获取ENS名称的子域

  • 所需输入:
    • name (string):要查询子域的ENS名称
  • 退货: 包含所有者信息的子域列表

获取名称历史记录

获取ENS名称的历史记录

  • 所需输入:
    • name (string):要检查历史记录的ENS名称
  • 退货: 与名称相关的历史事件,包括传输、解析器更改和注册事件

获取注册价格

获取注册ENS名称的价格

  • 所需输入:
    • name (string):要检查价格的ENS名称
  • 可选输入:
    • duration (数字,默认值:1):注册期限(年)
  • 退货: 注册价格明细,包括底价、溢价和总价

设置

先决条件

  • Node.js(v16或更高版本)
  • npm或纱线
  • 访问以太坊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

如果没有指定提供程序,服务器将使用这些默认值:

  • https://eth.drpc.org
  • https://eth.llamarpc.com
  • https://ethereum.publicnode.com
  • https://rpc.ankr.com/eth

使用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"
      }
    }
  }
}

使用Claude代码

claude mcp add ens -- npx -y mcp-server-ens

使用自定义提供商:

claude mcp add ens -e PROVIDER_URL="https://your-provider-url.com" -- npx -y mcp-server-ens

验证它是否已连接:

claude mcp list

错误处理

服务器为各种场景实现了强大的错误处理:

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

所有错误都被标准化为用户友好的消息,同时保留了调试的技术细节。

出版

要发布为npm包:

npm publish --access public

故障排除

如果遇到错误:

  • 验证您的以太坊提供商是否正常工作且可访问
  • 检查您正在查询的ENS名称的格式是否正确
  • 确保您拥有最新版本的ENS库
  • 尝试在PROVIDER_URL环境变量中使用逗号分隔多个提供程序

许可证

此MCP服务器根据MIT许可证获得许可。这意味着您可以根据MIT许可证的条款和条件自由使用、修改和分发软件。有关更多详细信息,请参阅项目存储库中的LICENSE文件。