josheleonard/ens-mcp-server
If you are the rightful owner of ens-mcp-server and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to henry@mcphub.com.
This project demonstrates a Model Context Protocol (MCP) server implementation that provides Ethereum Name Service (ENS) lookup functionality.
get-ens-name
Resolves an Ethereum address to its associated ENS name
get-ens-address
Looks up the Ethereum address for an ENS name
MCP Server Demo
This project demonstrates a Model Context Protocol (MCP) server implementation that provides Ethereum Name Service (ENS) lookup functionality. It's built using the MCP SDK and provides a simple HTTP server with Server-Sent Events (SSE) support.
Features
- ENS name resolution (address → name)
- ENS address lookup (name → address)
- Server-Sent Events (SSE) for real-time communication
- Express.js HTTP server
Available Tools
The server provides two main tools:
-
get-ens-name
: Resolves an Ethereum address to its associated ENS name- Input: Ethereum address (format: 0x...)
- Output: ENS name or "No ENS name found"
-
get-ens-address
: Looks up the Ethereum address for an ENS name- Input: ENS name (e.g., "vitalik.eth")
- Output: Ethereum address or "No ENS address found"
Technical Stack
- @modelcontextprotocol/sdk - MCP SDK for server implementation
- Express.js - Web server framework
- Viem - Ethereum interaction library
- Zod - Runtime type validation
Getting Started
-
Install dependencies:
npm install
-
Build the server:
npm run build
-
Start the server:
npm run start
The server will start on port 8080.
API Endpoints
GET /sse
- Establishes an SSE connectionPOST /messages
- Handles incoming messages/requests