About Ens Registration Agent
Ens Registration Agent is an MCP server published by schmidsi in the Finance category: an autonomous ENS registration service. Point your agent at this API, pay with USDC on Base via the x402 payment protocol, and get a .eth name registered on Ethereum mainnet. No need to interact with ENS contracts directly — the service handles the two-step commit-reveal process for you. It has been installed 0 times through Conduid.
The repository has 1 stars and 0 forks, with the last commit 6 months ago. Six months or more without a commit doesn't mean the server is broken, but check the open issues (0) before depending on it in production.
Install
npx ens-registration-agentThis server has no ConduID identity, so agent calls to it are not receipted. Pin the version you install and review the source before granting it credentials.
Ask AI
Ask AI about Ens Registration Agent
Powered by Claude · Grounded in docs
Security checks
- ·README presentNot checked yet.
- ·License declaredNot checked yet.
- ·Tests presentNot checked yet.
- ·Dependencies pinnedNot checked yet.
- ·No dynamic code executionNot checked yet.
- !Scoped permissionsDoesn't declare a permission scope. Assume it can do anything its process can.
README
ENS Registration Agent - MCP Server
An MCP server that exposes ENS registration capabilities to other AI agents.
Status: MVP Complete
All three core MCP tools are implemented and tested:
checkAvailability- Check if an ENS name is availablegetRegistrationPrice- Get the price for registering an ENS nameregisterName- Register an ENS name (commit-reveal process)
Quick Start
Prerequisites
Run Tests
deno task test
Start MCP Server
# Copy and configure environment
cp .env.example .env
# Edit .env with your RPC_URL and optionally PRIVATE_KEY
# Start the server
deno task dev
Configure with Claude Desktop
Add to your Claude Desktop config
(~/Library/Application Support/Claude/claude_desktop_config.json):
{
"mcpServers": {
"ens-agent": {
"command": "deno",
"args": [
"run",
"--allow-net",
"--allow-env",
"--allow-read",
"/path/to/montevideo/src/main.ts"
],
"env": {
"NETWORK": "mainnet",
"RPC_URL": "https://eth-mainnet.g.alchemy.com/v2/YOUR_API_KEY"
}
}
}
}
MCP Tools
checkAvailability
Check if an ENS name is available for registration.
Input:
name(string): ENS name (must end with .eth)
Output:
{ "name": "example.eth", "available": true }
getRegistrationPrice
Get the price for registering an ENS name.
Input:
name(string): ENS name (must end with .eth)years(number, default: 1): Registration duration
Output:
{
"name": "example.eth",
"years": 1,
"baseWei": "3155760000000000",
"premiumWei": "0",
"totalWei": "3155760000000000",
"totalEth": "0.00315576"
}
registerName
Register an ENS name. Requires PRIVATE_KEY environment variable.
Input:
name(string): ENS name (must end with .eth)years(number, default: 1): Registration durationowner(string): Owner - accepts Ethereum address (0x...) or any ENS-resolvable name
Output:
{
"success": true,
"name": "example.eth",
"owner": "0x...",
"durationSeconds": 31536000,
"commitTxHash": "0x...",
"registerTxHash": "0x..."
}
Environment Variables
| Variable | Required | Description |
|---|---|---|
NETWORK |
No | mainnet (default) or sepolia |
RPC_URL |
No | RPC endpoint (uses public if not set) |
PRIVATE_KEY |
For registerName | Wallet private key for transactions |
Tech Stack
- Runtime: Deno 2.x
- ENS: @ensdomains/ensjs v4 + viem v2
- MCP: @modelcontextprotocol/sdk v1
- Testing: Deno's built-in test runner
Project Structure
ens-registration-agent/
├── deno.json # Deno config + imports
├── .env.example # Required env vars
├── src/
│ ├── main.ts # MCP server entry point
│ └── ens/
│ ├── client.ts # ENS client setup
│ ├── availability.ts
│ ├── pricing.ts
│ ├── registration.ts
│ └── utils.ts
└── tests/
├── availability.test.ts
├── pricing.test.ts
└── registration.test.ts
Development with Devcontainer
For isolated development where Claude Code can run with
--dangerously-skip-permissions:
- Open in VS Code/Cursor → "Reopen in Container"
- Inside the container, run:
claude --dangerously-skip-permissions
The container includes Deno, Foundry (cast), GitHub CLI, and Claude Code. No
secrets (like PRIVATE_KEY) are mounted — only non-sensitive config. ENS
registrations should be done from the host.
Browser testing: To give the container access to Chrome on your host:
# On host
./scripts/launch-chrome-debug.sh
# From container, connect to host.docker.internal:9222
Contributing
Follow TDD (Test-Driven Development) with small, atomic commits:
- Write a failing test → commit
- Make the test pass → commit
- Refactor if needed → commit
Each commit should be independently revertible. Keep changes small and focused.
Commit messages
test: add failing test for Xfeat: implement Xrefactor: extract Y into Zfix: handle edge case in Xchore: update dependencies
Next Steps
- x402 payment integration for charging callers
- Test on Ethereum mainnet
- Deploy (Coolify at https://ens-registration.oskamai.com)
- ENS name for the agent (ens-registration-agent.ses.eth)
- Add to ERC-8004 registry (Base #19151, Mainnet #26433)
- Marketing — list on directories (see below)
- Extend existing names feature
- Base names / Celo names support
- Name suggestions
Agent Directories & Registries
- ERC-8004 — on-chain agent registry (Ethereum, Base, BNB Chain)
- agent.ai — professional network for AI agents
- AI Agents Directory — 2,100+ agents, 73+ categories
- awesome-ai-agents — popular GitHub list
- AI Agent Store — marketplace with free listing
- TrillionAgent — free to submit
- Google Cloud Agent Finder — Google's directory
Resources
README mirrored from the source repository 3 months ago. The original is authoritative.