ENS域名解析服务

ENS MCP Server是一个解析、分析和上下文化ENS域名活动的服务,为Web3代理提供人类可读的身份洞察。

  • by kukapay
  • Python
  • 本地部署
  • 1 星标
  • 更新于
在 GitHub 查看 kukapay/ens-mcp

使用说明

ENS MCP 服务器

一个MCP服务器,用于解析、分析和上下文化ENS域活动,以赋予Web3代理人类可读的身份洞察力。

特性

  • 解析 ENS 名称:映射ENS域(例如。, vitalik.eth)到以太坊地址。
  • 详细域名信息:获取全面的域数据,包括地址、所有者、注册人、到期日、注册、包装域和解析器详细信息。
  • 域事件历史记录:使用相关地址和时间戳检索传输、解析器更改和名称包装等事件。

需求

  • Python 3.10或更高版本
  • 紫外线 (建议用于依赖关系管理)
  • 图形的有效API键。

安装

  1. 克隆存储库:

    git clone https://github.com/kukapay/ens-mcp.git
    cd ens-mcp
    
  2. 再进行:

    uv sync
    
  3. 安装到克劳德桌面:

    将服务器安装为Claude Desktop应用程序:

    uv run mcp install main.py --name "ens-mcp"
    

    配置文件作为参考:

    {
       "mcpServers": {
           "ens-mcp": {
               "command": "uv",
               "args": [ "--directory", "/path/to/ens-mcp", "run", "main.py" ],
               "env": { "THEGRAPH_API_KEY": "the_graph_api_key"}               
           }
       }
    }
    

    替换 /path/to/ens-mcp 根据您的实际安装路径,以及 the_graph_api_key 使用图形中的API键。

用法

工具

服务器提供三个MCP工具:

  1. resolve_ens_name(域:str)->str

    将ENS域解析为其以太坊地址。

    • 输入:ENS域(例如。, vitalik.eth)
    • 输出:以太坊地址(例如。, 0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045)或“无”

    例子:

    resolve_ens_name("vitalik.eth") -> "0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045"
    
  2. get_domain_details(域:str)->str

    获取ENS域的详细信息,包括其地址。

    • 输入ENS域名
    • 输出:带域详细信息(地址、所有者、注册人、到期日等)的格式化字符串

    输出示例:

    ENS Domain: vitalik.eth
    Address: 0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045
    Label Name: vitalik
    Label Hash: 0x...
    Subdomain Count: 5
    Owner: 0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045
    Registrant: 0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045
    Wrapped Owner: None
    Expiry Date: 2025-10-31 00:00:00
    TTL: 0 seconds
    Is Migrated: true
    Created At: 2017-05-04 12:00:00
    Registration: Registration Date: 2017-05-04 12:00:00
    Registration Expiry: 2025-10-31 00:00:00
    Registration Cost: 1000000000000000 Wei
    Registrant: 0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045
    Wrapped Domain: Not Wrapped
    Resolver: Resolver Address: 0x4976fb03C32e5B8cfe2b6cCB31c09Ba78EBaBa41
    Content Hash: None
    Text Records: email, url
    
  3. get_domain_events(域:str)->str

    检索与ENS域关联的事件。

    • 输入ENS域名
    • 输出:列出事件的格式化字符串(例如,传输、解析器更改)

    输出示例:

    Event: Transfer
    Block Number: 1234567
    Transaction ID: 0x...
    New Owner: 0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045
    
    Event: NewResolver
    Block Number: 1234568
    Transaction ID: 0x...
    Resolver Address: 0x4976fb03C32e5B8cfe2b6cCB31c09Ba78EBaBa41
    Resolver Addr: 0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045
    

许可证

该项目根据MIT许可证获得许可。请参阅 许可证 文件以获取详细信息。