Skip to main content
Glama

register_agent

Register an ENS name as an ERC-8004 agent identity on Ethereum mainnet. Returns a ready-to-sign transaction with adapter or direct route options.

Instructions

Register an ENS name as an ERC-8004 agent identity on Ethereum mainnet. Returns a ready-to-sign transaction.

Default route ("adapter") binds the agent to the name itself (ERC-8217 via Adapter8004): whoever holds the name controls the agent, OpenSea shows the agent identity on the name's page, and the agent transfers with the name when sold. Alternative "direct" route mints the agent NFT to your wallet instead, independent of the name.

The agentURI defaults to a NameWhisper-hosted registration file generated live from the name's ENS records (agent-context, agent-endpoint) — set those records with set_ens_records and the file updates automatically.

IMPORTANT: after the transaction confirms, read the new agentId from the receipt (topic 1 of the Registered/AgentBound event) and call set_ens_records with the agentRegistration shorthand to write the ENSIP-25 binding. The identity is not verifiable until that record is on-chain. Verify with get_agent_reputation. If the name already has a bound agent, the tool returns ALREADY_REGISTERED with the existing agentId instead of building a duplicate.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
nameYesENS name to register as an agent (e.g. "myagent.eth"). You must own it.
routeNoadapter (default): bind the agent to the name via ERC-8217 — control and marketplace visibility follow the name. direct: mint the agent NFT to your wallet, independent of the name.adapter
agentURINoOverride the agent registration file URI. Defaults to NameWhisper's hosted file, built live from the name's ENS records.
walletAddressNoWallet that will sign the transaction. For the adapter route this MUST be the name's current token holder. Auto-filled from ERC-8128 auth when omitted.
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden and does so thoroughly. It discloses that the tool returns a ready-to-sign transaction (not signed), explains the behavioral difference between adapter and direct routes, details the agentURI default and its dependency on ENS records, and highlights the critical post-transaction requirement to call set_ens_records. It also states the identity is unverifiable until the record is on-chain and describes the ALREADY_REGISTERED edge case.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is well-structured and front-loaded: the first sentence states the core purpose, followed by distinct paragraphs for route handling, agentURI, and essential follow-up steps. Although lengthy, every sentence provides necessary information for a complex tool, and the use of paragraphs and capitalization (IMPORTANT) improves scannability. No wasted words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity and lack of an output schema, the description is remarkably complete. It covers the two routes, the default agentURI mechanism, the required post-transaction action, the verification method, and the already-registered edge case. It also clarifies the transaction-signing requirement and the holder constraint. No critical usage aspect is left unexplained.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline is 3. The description adds meaningful semantics beyond the schema: it explains the implications of 'route' (control and marketplace visibility for adapter, independent NFT for direct), specifies that walletAddress MUST be the token holder for the adapter route, and clarifies the agentURI default behavior. This enrichment justifies a score above baseline, though not a full 5 since the schema already describes each parameter.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with a specific verb and resource: 'Register an ENS name as an ERC-8004 agent identity on Ethereum mainnet. Returns a ready-to-sign transaction.' It clearly distinguishes this from siblings by detailing the two routes (adapter/direct) and the ERC-8004 identity scope, making the tool's function unambiguous.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives clear usage context: it explains the default and alternative routes, notes that the adapter route requires the caller to be the current token holder, and mandates a follow-up call to set_ens_records. It also describes the ALREADY_REGISTERED behavior. However, it does not explicitly name alternative tools or provide 'when not to use' exclusions, so it stops short of a 5.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/eggybug42069/namewhisper-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server