logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

eth-name-resolver-gateway

Utility for querying the Ethereum Name Service (ENS) registry; supports translating domain names to cryptographic wallet addresses, performing reverse lookups, fetching metadata records, and assessing registration feasibility and cost.

Author

eth-name-resolver-gateway logo

JustaName-id

No License

Quick Info

GitHub GitHub Stars 8
NPM Weekly Downloads 0
Tools 1
Last Updated 2026-02-19

Tags

cloudservicesenscloud servicesservices justanameens names

ENS Interfacing Service Hub

This service acts as an intermediary layer for interacting with the decentralized Ethereum Name Service (ENS) infrastructure. It facilitates robust operations such as name resolution, availability checks, data retrieval, and fee estimation for domain management.

Package Reference: https://www.npmjs.com/package/mcp-server-ens

Function Definitions

resolve-address

Translates an ENS domain identifier into its associated Ethereum public key. - Mandatory Parameters (Input): - name (string): The full ENS identifier (e.g., 'user.eth'). - Output: - The resolved Ethereum cryptographic address or an informative failure message.

reverse-lookup-name

Determines the canonical ENS domain linked to a specific Ethereum wallet address. - Mandatory Parameters (Input): - address (string): The 0x-prefixed Ethereum wallet identifier. - Output: - The corresponding registered ENS domain name, or an indicator that none is found.

fetch-metadata-record

Retrieves a specific key-value text record associated with an ENS domain. - Mandatory Parameters (Input): - name (string): The ENS domain being queried. - key (string): The specific metadata field identifier (e.g., 'email', 'website', 'twitter', 'description'). - Output: - The textual content of the requested metadata field, or an absence notification.

check-domain-status

Verifies if a proposed ENS domain is currently open for new registration. - Mandatory Parameters (Input): - name (string): The prospective ENS domain name. - Output: - Registration availability status, potentially including current ownership details if already claimed.

query-full-profile

Retrieves the complete set of data attributes linked to a specified ENS name. - Mandatory Parameters (Input): - name (string): The ENS domain for comprehensive data extraction. - Output: - A structured object detailing the resolver contract, all associated text records, linked addresses, content hashes, ownership metadata, and registration expiry timestamps.

list-child-domains

Enumerates all directly attached subdomains under a parent ENS name. - Mandatory Parameters (Input): - name (string): The parent ENS domain to analyze. - Output: - An array detailing discovered subdomains and their respective ownership assignments.

audit-name-lifecycle

Obtains a chronological log of significant events affecting a particular ENS domain. - Mandatory Parameters (Input): - name (string): The domain whose history is required. - Output: - A sequence of historical transaction records, such as ownership transfers, resolver updates, and initial registration events.

estimate-registration-cost

Calculates the financial commitment required to secure registration of an ENS domain. - Mandatory Parameters (Input): - name (string): The domain name for which pricing is sought. - Optional Parameters (Input): - duration (number, default: 1): The intended registration period in yearly increments. - **Output: - A detailed financial breakdown including base fee, any applicable premium surcharge, and the total payable amount.

Deployment & Configuration

Prerequisites

  • Node.js runtime (version 16 or newer).
  • NPM or Yarn package manager.
  • Connectivity to Ethereum network endpoints (RPC).

Installation Steps

  1. Clone the source repository or initiate a new project structure: bash git clone https://github.com/JustaName-id/ens-mcp-server

  2. Install project dependencies: bash npm install

  3. Configure network access credentials: Establish a .env configuration file in the root directory to specify RPC endpoints (optional):

PROVIDER_URL="https://primary-node.io,https://secondary-node.io"

If this variable is omitted, the service defaults to utilizing the following public endpoints: - https://eth.drpc.org - https://eth.llamarpc.com - https://ethereum.publicnode.com - https://rpc.ankr.com/eth

Integration with Claude Interface

Configure your claude_desktop_config.json file as follows to enable this utility:

Execution via npx

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

Execution via Local Binary

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

Fault Management

The service is engineered with comprehensive failure interception capabilities, addressing: - Failures in network communication with RPC providers. - Incorrectly formatted ENS domain names or Ethereum addresses. - Specific exceptions originating from the ENS protocol layer. - General execution anomalies.

All reported exceptions are translated into readily understandable user messages, while retaining detailed technical context for diagnostic purposes.

Release Process

To deploy this as a public npm package: bash npm publish --access public

Debugging Guidance

In case of operational issues, review the following: * Confirm the reachability and functionality of configured Ethereum RPC endpoints. * Validate the syntax and formatting of all input ENS names. * Ensure the underlying ENS library dependencies are current. * Test fault tolerance by providing multiple comma-separated endpoints in the PROVIDER_URL variable.

Licensing

This component is distributed under the terms of the MIT License. Permitted uses include usage, modification, and redistribution, contingent upon adherence to the stipulations outlined in the official LICENSE documentation found in the source repository.

WIKIPEDIA: Cloud infrastructure, as defined by the ISO, involves a network-accessible, elastic repository of shared computational assets, provisionable by users without direct human intermediary oversight, per established standards.

See Also

`