Overview
What is ENS MCP Server?
The ENS MCP Server is a Model Context Protocol server that enables Claude to interact with the Ethereum Name Service (ENS) system. It provides tools to resolve names, check availability, retrieve records, and more, making it ideal for developers and ENS users who want to manage ENS data through AI assistants.
How to use ENS MCP Server?
Install the npm package globally or run via npx. Configure Ethereum RPC providers optionally via the PROVIDER_URL environment variable. Add the server to Claude Desktop’s claude_desktop_config.json or use claude mcp add ens in Claude Code. The server exposes eight tools: resolve-name, reverse-lookup, get-text-record, check-availability, get-all-records, get-subdomains, get-name-history, and get-registration-price.
Key features of ENS MCP Server
- Resolve ENS names to Ethereum addresses
- Perform reverse lookups from addresses to names
- Fetch text records like email, URL, or avatar
- Check ENS name availability for registration
- Retrieve comprehensive records for any ENS name
- List subdomains with owner information
- Get historical events for an ENS name
- Query registration price with optional duration
Use cases of ENS MCP Server
- Quickly look up the Ethereum address behind a .eth name
- Verify if an ENS name is still available to register
- Obtain all records (resolver, text, addresses, expiration) for a name
- Explore subdomains and ownership details of an ENS domain
- Check registration costs before purchasing an ENS name
FAQ from ENS MCP Server
What are the prerequisites for using ENS MCP Server?
You need Node.js v16 or higher and npm or yarn. You must also have access to Ethereum RPC providers (public or private).
How do I configure Ethereum providers?
Set the PROVIDER_URL environment variable with one or more comma-separated RPC URLs. If not set, the server uses default public providers like eth.drpc.org and ethereum.publicnode.com.
Can I run it without specifying custom providers?
Yes. If no providers are specified, the server automatically uses a list of default public Ethereum RPC endpoints.
How do I use it with Claude Desktop?
Add an entry to your claude_desktop_config.json with the command npx -y mcp-server-ens and optionally the PROVIDER_URL environment variable.
How do I verify it's connected in Claude Code?
Run claude mcp list after adding the server. A successful listing confirms the connection is active.