# hood. — the .hood name service (full LLM context) hood. is a human-readable naming system for wallets on Robinhood Chain. It lets a long address like `0x45aa14cAdF47330769757868Ba890f46F4396F86` be replaced by a readable name like `robin.hood`. It is a full ENS-standard stack, so every ENS-aware tool, wallet, and SDK works against it by pointing at chain id 4663. -------------------------------------------------------------------------------- NETWORK -------------------------------------------------------------------------------- - Name: Robinhood Chain (Arbitrum-based) - Chain id: 4663 - RPC URL: https://rpc.mainnet.chain.robinhood.com - Explorer: https://robinhoodchain.blockscout.com - Native: ETH (18 decimals) - Fees: fractions of a cent; blocks settle in ~2s. -------------------------------------------------------------------------------- CONTRACTS -------------------------------------------------------------------------------- Registry (immutable trust anchor): 0x3E717dc89AAF4605b607324329EEeB0a8B3C8A1c UniversalResolver (resolve here): 0xa9ed3C73F522875F18DAa631429125da893D8E53 Registrar (.hood ERC-721 NFT): 0x9a122C54e15B6287c164b90833bcDA6E16520D50 Public Resolver: 0x072C7a66a6D52B23274470b86096AFCBF816CA0B Registrar Controller: 0x7900b2B8Cc3f0616B18C68AdA7E115A9022Ca04a Reverse Registrar: 0x4be6D0379f56404B563afAe17c6b095b1dfcf479 -------------------------------------------------------------------------------- RESOLUTION MODEL -------------------------------------------------------------------------------- Almost every read you need goes through ONE contract: the UniversalResolver. resolve(string name) -> address Forward lookup. "robin.hood" -> owner/target address. Selector 0x461a4478. Returns the zero address if the name is unset/unresolvable. reverse(address a) -> (string name, bool verified) Reverse lookup / primary name. `verified` is true only when the forward record of `name` points back to `a` (anti-spoof). Selector 0xe30bd740. resolveText(string name, string key) -> string Text records (e.g. "avatar", "url", "com.twitter"). Selector 0xcb7cef3c. The ABIs are identical to ENS. Any ENS SDK works if pointed at registry 0x3E717dc89AAF4605b607324329EEeB0a8B3C8A1c on chain 4663. -------------------------------------------------------------------------------- REGISTRATION MODEL (for agents that transact) -------------------------------------------------------------------------------- Registration is commit-reveal on the Registrar Controller to block front-running on this first-come-first-served chain: 1. commit(bytes32 commitment) where commitment = makeCommitment(name, owner, secret) 2. wait minCommitAge seconds (~60s) 3. register(string name, address owner, uint256 duration, bytes32 secret) payable Read helpers on the controller: available(string name) -> bool price(string name, uint256 durationSeconds) -> uint256 weiCost ethUsd() -> uint256 (ETH price scaled 1e18, for USD conversion) nameExpires(uint256 tokenId) on the Registrar; tokenId = uint256(keccak256(label)) Pricing per year (USD): 5+ chars $5, 4 chars $160, 3 chars $640. Rules: minimum 3 characters; lowercase a-z, digits 0-9, and hyphens only. Names renew per year; a 90-day grace period follows expiry before a name returns to the pool. -------------------------------------------------------------------------------- SDK (@hoodag/sdk) -------------------------------------------------------------------------------- import { resolveHood, reverseHood, resolveTextHood } from '@hoodag/sdk'; const addr = await resolveHood('robin.hood'); // '0x45aa14...' | null const { name, verified } = await reverseHood(addr); // { name:'robin.hood', verified:true } const twitter = await resolveTextHood('robin.hood', 'com.twitter'); Zero dependencies (uses global fetch, works in browser and Node 18+). Optional viem helpers (HOOD config + UNIVERSAL_RESOLVER_ABI) are exported for apps already using viem. -------------------------------------------------------------------------------- MCP SERVER (@hoodag/mcp) -------------------------------------------------------------------------------- An MCP server exposes .hood resolution to AI agents (Claude, Cursor, etc.). Hosted (Streamable HTTP, no install) — point your MCP client at: https://www.hood.ag/api/mcp Local (npm): npx @hoodag/mcp Register it in your MCP client config, e.g. Claude Desktop: { "mcpServers": { "hood": { "command": "npx", "args": ["-y", "@hoodag/mcp"] } } } Tools provided: resolve_name(name) -> address for a .hood name reverse_resolve(address) -> primary name (+ verified flag) resolve_text(name, key) -> a text record value check_availability(name) -> availability + yearly price name_info(name) -> address, NFT owner, expiry, availability -------------------------------------------------------------------------------- DISCLAIMER -------------------------------------------------------------------------------- hood. is an independent, community-run name service on the public Robinhood Chain. It is not operated by or affiliated with Robinhood Markets, Inc.