ENS MCP Server

ENS MCP Server

Enables AI assistants to interact with the Ethereum Name Service via natural language, supporting lookups, availability checks, pricing, subnames, and onchain records.

Category
Visit Server

README

ENS MCP Server

Install in Cursor Install in VS Code npm version

Give your AI assistant native access to the ENS (Ethereum Name Service). Look up ENS names, profile information, check name availability, get pricing, explore subnames, and query onchain records — all through natural language.

Installation

Connect to ENS MCP Server:

https://ens-mcp.namespace.ninja/mcp

<details> <summary><b>Cursor</b></summary>

Add to ~/.cursor/mcp.json:

{
  "mcpServers": {
    "ens": {
      "url": "https://ens-mcp.namespace.ninja/mcp"
    }
  }
}

</details>

<details> <summary><b>VS Code</b></summary>

Add to .vscode/mcp.json:

{
  "servers": {
    "ens": {
      "type": "http",
      "url": "https://ens-mcp.namespace.ninja/mcp"
    }
  }
}

</details>

<details> <summary><b>Claude Code</b></summary>

claude mcp add --transport http ens https://ens-mcp.namespace.ninja/mcp

</details>

<details> <summary><b>Claude Desktop</b></summary>

Add to your config file:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json
{
  "mcpServers": {
    "ens": {
      "command": "npx",
      "args": ["-y", "mcp-remote", "https://ens-mcp.namespace.ninja/mcp"]
    }
  }
}

</details>

<details> <summary><b>Codex</b></summary>

codex mcp add ens --url https://ens-mcp.namespace.ninja/mcp

</details>

<details> <summary><b>OpenCode</b></summary>

Add to your opencode.json:

{
  "mcp": {
    "ens": {
      "type": "remote",
      "url": "https://ens-mcp.namespace.ninja/mcp",
      "enabled": true
    }
  }
}

</details>

<details> <summary><b>Antigravity</b></summary>

Open the MCP Store panel (from the "..." dropdown in the side panel), then add a custom server with:

https://ens-mcp.namespace.ninja/mcp

</details>

<details> <summary><b>Windsurf</b></summary>

Add to ~/.codeium/windsurf/mcp_config.json:

{
  "mcpServers": {
    "ens": {
      "serverUrl": "https://ens-mcp.namespace.ninja/mcp"
    }
  }
}

</details>

<details> <summary><b>Zed</b></summary>

Add to your Zed settings:

{
  "context_servers": {
    "ens": {
      "url": "https://ens-mcp.namespace.ninja/mcp"
    }
  }
}

</details>

<details> <summary><b>Gemini CLI</b></summary>

Add to ~/.gemini/settings.json:

{
  "mcpServers": {
    "ens": {
      "httpUrl": "https://ens-mcp.namespace.ninja/mcp"
    }
  }
}

</details>

<details> <summary><b>Warp</b></summary>

Go to Settings > MCP Servers > Add MCP Server and add:

{
  "ens": {
    "url": "https://ens-mcp.namespace.ninja/mcp"
  }
}

</details>

<details> <summary><b>Kiro</b></summary>

Add to ~/.kiro/settings/mcp.json:

{
  "mcpServers": {
    "ens": {
      "url": "https://ens-mcp.namespace.ninja/mcp"
    }
  }
}

</details>

<details> <summary><b>Roo Code</b></summary>

Add to your Roo Code MCP config:

{
  "mcpServers": {
    "ens": {
      "type": "streamable-http",
      "url": "https://ens-mcp.namespace.ninja/mcp"
    }
  }
}

</details>

<details> <summary><b>Other Clients</b></summary>

For clients that support remote MCP:

{
  "mcpServers": {
    "ens": {
      "url": "https://ens-mcp.namespace.ninja/mcp"
    }
  }
}

For clients that need mcp-remote:

{
  "mcpServers": {
    "ens": {
      "command": "npx",
      "args": ["-y", "mcp-remote", "https://ens-mcp.namespace.ninja/mcp"]
    }
  }
}

</details>

<details> <summary><b>Self-Hosting</b></summary>

You can also self-host the ENS MCP Server using the npm package.

Stdio Transport:

npx -y ens-mcp

HTTP Transport:

npx -y ens-mcp --http --port 8080

The server will be available at http://localhost:8080/mcp.

Environment Variables:

Variable Description Default
RPC_URL Ethereum mainnet RPC URL Viem Provided Public RPC
SUBGRAPH_URL ENS subgraph URL ENSNode Public Subgraph

Example with custom RPC and Subgraph:

RPC_URL=https://your-rpc-provider.com SUBGRAPH_URL=https://your-subgraph-provider.com npx -y ens-mcp

</details>

💬 Example Natural Language Queries

Once ENS MCP is installed, you can ask things like:

1️⃣ Basic Lookup

> Who owns vitalik.eth?

2️⃣ Resolver & Expiry

> What is the resolver and expiry date of vitalik.eth?

3️⃣ Records & Addresses

> Give me the ETH address and Twitter handle for vitalik.eth.

4️⃣ Reverse Lookup

> What ENS names are owned by 0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045?

5️⃣ Subnames

> List all subdomains under base.eth.

6️⃣ Portfolio Analysis

> Show me all ENS names owned by this address and tell me which ones are expiring soon.

7️⃣ Conditional Acquisition Strategy

> I want to get example.eth. How much does it cost for 2 years? And if it’s not available, give me the owner details and socials so I can contact them.

8️⃣ Names for Address

> What are the names owned by 0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045?

9️⃣ Subnames for Name

> What are the subnames under vitalik.eth?

1️⃣0️⃣ Name History

> when was the last time vitalik.eth changed its content hash?

Available Tools

Tool Description
is_name_available Check whether an ENS name is currently available for registration
get_name_price Get the registration price for a name at a given duration (in seconds)
get_profile_details Fetch full ENS profile: owner, resolver, expiry, text records, address records, and contenthash
get_names_for_address List all ENS names held by a given address
get_subnames_for_name Retrieve all subdomains registered under a parent ENS name
get_name_history Retrieve the event history of any ENS name
get_subgraph_records Query all record keys associated with a name

Contributing

Contributions are welcome. Feel free to open a PR.


Built with ❤️ by Namespace Ninjas 🥷

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured