Name Whisper — ENS Intelligence Layer is an MCP server with 44 tools an agent can call, among them accept_offer, approve_operator, batch_create_listings. It answers at https://namewhisper.ai/mcp over streamable HTTP, and it listed its tools to an anonymous client, so no sign-in was needed for that. Our probes reached it 10 of 10 times since 4 September 2026; the last check, on 17 October 2026, succeeded.
34 MCP tools to search, register, manage, value, and trade ENS names. AI-powered intelligence layer.
Description as the publisher wrote it.
| Tool | What it does |
|---|---|
accept_offer | Accept a standing offer on an ENS name you own. Returns unsigned Seaport fulfillOrder() calldata. When you submit this transaction, Seaport atomically: - Pulls the offered WETH from the buyer's wallet - Transfers the ENS name from your wall Inputs: orderHash, walletAddress |
approve_operator | Approve or revoke an operator for ENS contract interactions. An approved operator can transfer ANY token owned by the approver on the specified contract. This is setApprovalForAll — it covers all tokens, not just one. Contracts: - **base_re Inputs: owner, operator, contract, approved |
batch_create_listings | Bulk-list up to 500 ENS names for sale on NameWhisper in one signing flow. Returns an array of unsigned Seaport OrderComponents payloads. The caller's wallet signs them all in one EIP-712 bulk signature (SIP-6), then POSTs the signed orders Inputs: listings, walletAddress, durationSeconds |
batch_purchase | Buy up to 20 SPECIFIC listed ENS names in a SINGLE Seaport transaction, across NameWhisper, OpenSea, AND Grails listings. Use this when the user names the exact names to buy. To buy the cheapest N names in a category/collection (a floor swe Inputs: names, walletAddress |
bulk_register | Register multiple ENS names in bulk — total 2 transactions (multiCommit + multiRegister) via NWBulkRegistrar. Much cheaper and faster than registering names one at a time. Supports up to 20 names per batch. Flow: multiCommit (1 tx, all N co Inputs: names, walletAddress, duration, durationYears |
bulk_set_records | Set ENS resolver records for multiple names in a single transaction — bulk record editing. All record updates across all names are batched into one resolver.multicall() call. Much cheaper than setting records one name at a time. Supports th Inputs: nameRecords, walletAddress |
bulk_transfer_ens_names | Transfer multiple ENS names in a single transaction via Multicall3 — bulk send. Much cheaper and faster than transferring names one at a time. Supports up to 20 names per batch. Automatically detects whether each name is wrapped (NameWrappe Inputs: transfers, fromAddress |
cancel_listing | Cancel an active ENS name listing by submitting Seaport's cancel() on-chain. Returns the unsigned Seaport cancel() transaction calldata. Your wallet signs and submits; once mined, Seaport marks the order invalid and no marketplace (NW, Grai Inputs: orderHash, walletAddress, alsoCancel |
cancel_offer | Cancel an active offer you made on an ENS name. Returns unsigned Seaport cancel() calldata. Only the bidder (the order's offerer) can cancel. If the offer was cross-posted to OpenSea, you signed a second 'opensea' variant — pass BOTH order Inputs: orderHash, walletAddress, alsoCancel |
check_availability | Check availability of one or more ENS names the user named, or labels returned by enumerate_entities. Do NOT feed it names you invented/typed yourself (especially real-world people, teams, brands, or films — models misspell those); get veri Inputs: names |
create_listing | List an ENS name for sale on NameWhisper's marketplace via Seaport 1.6. Returns an unsigned Seaport OrderComponents payload (plus EIP-712 domain/types) that the caller's wallet signs. After signing, POST the { orderComponents, signature, la Inputs: name, priceEth, walletAddress, durationSeconds |
enumerate_entities | Enumerate ENS-friendly labels for a finite real-world entity category and report which are available vs registered. USE THIS for ANY finite set of real-world people, companies, teams, or works — including queries that name a ROLE or PROFESS Inputs: category, filter |
extend_subname_expiry | Extend the expiry of an ENS subname in the NameWrapper. Subnames have their own expiry that cannot exceed the parent name's expiry. This tool extends a subname's expiry. Who can call this: - The parent name owner (always) - The subname owne Inputs: name, years |
find_alpha | Scan the ENS marketplace for alpha — names listed below their valuation. Returns ranked opportunities with a discount %, fair-value range, confidence rating, and comparable data. Candidates are selected by DESIRABILITY (real curated collect Inputs: maxPriceEth, minDiscountPct, minLength, maxLength, charType, minConfidence |
get_agent_reputation | Check if an ENS name or wallet is a registered AI agent. Returns ENSIP-25 agent-registration verification (text record bindings between ENS names and on-chain agent registries), AI metadata from text records, ERC-8004 identity + reputation Inputs: nameOrWallet |
get_caller_identity | Returns the authenticated identity of the calling agent. If you connected with ERC-8128 signed requests, this resolves your wallet address to your ENS name, agent metadata, and portfolio summary. Call this first to confirm your identity is |
get_expiring_names | List ENS names by lifecycle window across the WHOLE market — THE tool for "which names are in premium / on Dutch auction", "names in grace period", "what's expiring soon / about to drop". NOT for the user's own names: it has no wallet filte Inputs: status, days, minLength, maxLength, charType, category |
get_market_activity | Get recent ENS marketplace activity. Covers exactly three event types — SALE, PREMIUM_REGISTRATION and SWAP — and nothing else: it does NOT report listings, standing offers, mints, transfers, renewals or burns, so never conclude from an emp Inputs: eventTypes, collection, limit, offset |
get_name_details | Get full details for a specific ENS name including owner, expiry, creation date, tags, active listings (with prices in ETH and USD), active offers, ENSIP-25 agent identity bindings, and ENSIP-26 agent context records. creationDate is always Inputs: name |
get_primary_name | Check what primary ENS name is set for a wallet address (reverse resolution). Returns the ENS name that this address resolves to, or null if no primary name is set. This verifies both directions: - Reverse: address → name (the reverse recor Inputs: walletAddress |
get_similar_names | Find ENS names semantically similar to a given name using vector embeddings across 3.5M indexed ENS names. Returns similar names with similarity scores, status (REGISTERED / GRACE_PERIOD / PREMIUM_AUCTION / AVAILABLE), and live marketplace Inputs: name, limit |
get_usage_stats | Get usage statistics for this MCP server session. Returns tool call counts, success rates, and average latency. |
get_valuation | Get a confidence-rated valuation for an ENS name based on comparable sales, entity recognition (Wikipedia/Wikidata), search interest, word frequency, and fame-scaled pricing. Returns estimated value range, background context on the name (pe Inputs: name |
get_wallet_portfolio | Get all ENS names owned by a wallet address. Returns each name with label, tags, expiry, lifecycle status, registration date, and active listing/offer prices. Useful for portfolio analysis and wallet profiling. THE tool for any question abo Inputs: wallet, status, limit, offset |
make_offer | Place an offer (bid) on a registered ENS name on NameWhisper via Seaport 1.6. Returns an unsigned Seaport OrderComponents payload (plus EIP-712 domain/types) that the caller's wallet signs. The buyer offers WETH and receives the name on acc Inputs: name, amountEth, currency, expiryHours, walletAddress |
manage_ens_name | One-shot management report for an ENS name. This is the ONLY tool you need to answer "management report", "full overview", "health check", "status check", "what should I do about X", or "tell me what to do with X" queries. Prefer this over Inputs: name, includeRenewalPricing |
manage_fuses | Manage fuses on a wrapped ENS name. Fuses are permission bits that can be permanently burned to restrict what can be done with a name. Three modes: 1. **read** — Check which fuses are currently burned on a name 2. **burn_owner_fuses** — Bur Inputs: name, fuses, action, expiry |
mint_subnames | Bulk-create subnames under a parent ENS name in a single transaction. Designed for agent fleet deployment — create identities like agent001.company.eth, agent002.company.eth, etc. Each subname can have its own owner and records (addresses, Inputs: parentName, subnames, walletAddress, allowOverwrite |
provision_agent_identity | Provision a complete ENS identity for an AI agent in one call. Describe your agent's purpose and budget — get back recommended available names, a multi-step registration recipe (commit → register → set agent records), and ready-to-sign tran Inputs: purpose, budgetEth, walletAddress, preferences, agentRegistry |
purchase_name | Purchase an ENS name — either buy a listed name from a marketplace or register an available name directly on-chain. For AVAILABLE names: Returns a complete registration recipe with contract address, ABI, step-by-step instructions, and a pre Inputs: name, maxPriceEth, walletAddress, duration, durationYears, action |
reclaim_name | Reclaim ENS Registry ownership of a .eth name. This syncs the ENS Registry owner to match the BaseRegistrar token owner. Used when: - A name was transferred via direct safeTransferFrom (bypassed ENS routing) - ENS Registry ownership is out Inputs: name, owner |
register_agent | Register an ENS name as an ERC-8004 agent identity on Ethereum mainnet. Returns a ready-to-sign transaction. Default route binds the agent to the name itself (ERC-8217 via Adapter8004): whoever holds the name controls the agent, OpenSea sho Inputs: name, walletAddress, route, agentURI |
renew_ens_name | Renew an ENS name or batch of names. Returns the transaction data needed to extend registration. Unlike registration, renewal is simple — just one transaction with payment. No commit/reveal needed. Accepts any duration from 1 day up — days, Inputs: names, duration, years, budgetUsd, budgetEth |
search_agent_directory | Search the AI agent directory — find registered agents by name, capability, protocol support, or reputation. Powered by the live ERC-8004 registry via 8004scan (110,000+ agents indexed across 50+ chains). Returns agent identity, owner walle Inputs: query, capabilities, minReputation, chain, limit |
search_ens_names | Search ENS names using natural language. Supports all query types: - Filtered search: "4-letter words under 0.1 ETH" - Concept search: "ocean themed names" (semantic similarity across 3.5M indexed ENS names) - Creative search: "names for a Inputs: query |
search_knowledge | Search the ENS knowledge base — governance proposals, protocol documentation, developer insights, blog posts, forum discussions, and Farcaster casts from key ENS figures (Vitalik, Nick Johnson, etc.). Powered by semantic search over curated Inputs: query, source, limit |
set_ens_records | Set ENS resolver records for a name you own. Returns encoded transaction calldata ready to sign and broadcast. Supports: address records — ETH as a plain 0x address, non-ETH coins (BTC, SOL, LTC, DOGE, …) as the raw wallet-format address (b Inputs: name, records, walletAddress |
set_primary_name | Set the primary ENS name (reverse resolution) for a wallet address. This controls what name is displayed when someone looks up your Ethereum address. For example, instead of seeing "0x1234...abcd", they'd see "myname.eth". Requirements: - Y Inputs: name, walletAddress |
set_resolver | Change the resolver contract for an ENS name. The resolver is where a name's records live (ETH address, text records, content hash, etc.). Changing the resolver points the name at a different contract. Common use cases: - Migrating to the l Inputs: name, resolver |
sweep | Floor-sweep: buy the CHEAPEST N listed ENS names in a category/collection (or matching a filter) in ONE Seaport transaction. Use this when the user wants "the cheapest N", "sweep the floor", or "buy up to X ETH of" a cohort — rather than na Inputs: category, q, charType, minLength, maxLength, count |
transfer_ens_name, unwrap_name, wash_check, wrap_name
Every block below points at https://namewhisper.ai/mcp. Pick your client and copy.
claude mcp add --transport http name-whisper-ens-intelligence-la https://namewhisper.ai/mcp
{
"mcpServers": {
"name-whisper-ens-intelligence-la": {
"command": "npx",
"args": ["-y", "mcp-remote", "https://namewhisper.ai/mcp"]
}
}
}{
"mcpServers": {
"name-whisper-ens-intelligence-la": {
"url": "https://namewhisper.ai/mcp"
}
}
}{
"servers": {
"name-whisper-ens-intelligence-la": {
"type": "http",
"url": "https://namewhisper.ai/mcp"
}
}
}{
"context_servers": {
"name-whisper-ens-intelligence-la": {
"url": "https://namewhisper.ai/mcp"
}
}
}{
"mcpServers": {
"name-whisper-ens-intelligence-la": {
"serverUrl": "https://namewhisper.ai/mcp"
}
}
}{
"mcpServers": {
"name-whisper-ens-intelligence-la": {
"url": "https://namewhisper.ai/mcp"
}
}
}name: Name Whisper — ENS Intelligence Layer
version: 0.0.1
schema: v1
mcpServers:
- name: Name Whisper — ENS Intelligence Layer
type: streamable-http
url: https://namewhisper.ai/mcp{
"mcpServers": {
"name-whisper-ens-intelligence-la": {
"httpUrl": "https://namewhisper.ai/mcp"
}
}
}{
"mcpServers": {
"name-whisper-ens-intelligence-la": {
"type": "http",
"url": "https://namewhisper.ai/mcp"
}
}
}{
"mcpServers": {
"name-whisper-ens-intelligence-la": {
"url": "https://namewhisper.ai/mcp"
}
}
}goose://extension?url=https%3A%2F%2Fnamewhisper.ai%2Fmcp&type=streamable_http&id=name-whisper-ens-intelligence-la&name=Name%20Whisper%20%E2%80%94%20ENS%20Intelligence%20Layer
It answered our last check on 17 October 2026 in 424 ms. Over 10 checks since 4 September 2026 it answered 10. Status here comes from Neuronto's own probes, not from the publisher.
Yes. It is published by namewhisper.ai and served from namewhisper.ai, the vendor's own domain: https://namewhisper.ai/mcp.
44, as returned by the server's own tools/list on 8 September 2026: accept_offer, approve_operator, batch_create_listings, batch_purchase, bulk_register, bulk_set_records, bulk_transfer_ens_names, cancel_listing, and 36 more.
It answered our last check on 17 October 2026 in 424 ms. Over 10 checks since 4 September 2026 it answered 10.
Put the server under mcpServers in ~/.cursor/mcp.json with the URL https://namewhisper.ai/mcp. The exact JSON is above, with the same setup for Claude Code, Claude Desktop, VS Code, Windsurf, Zed, Gemini CLI and the rest.
It listed its tools to an anonymous client, so reading the tool list needs no key. Individual tools can still ask for credentials in their own inputs.
Publisher: ai.namewhisper. Endpoint host: namewhisper.ai. ARD identifier: urn:air:ai.namewhisper:mcp:ens-tools.
First indexed 31 August 2026. The tools are exactly what the server returned; nothing on this page
is inferred from its name. Ranking in Neuronto search is never for sale.