{"slug": "how-to-add-domain-name-agents-in-claude-code", "title": "How to add domain name agents in Claude Code", "summary": "A developer has published three free, no-signup MCP agents behind .agt domain names — rdap.agt, txtrecord.agt and forsale.agt — that let Claude Code answer questions about domain ownership, DNS and email security records, and for-sale listings. Each is a plain HTTP MCP endpoint added with a single `claude mcp add --transport http --scope user` command, exposing tools such as lookup_domain, email_security and for_sale_status that return a readable summary plus raw JSON. The agents query only IANA-bootstrapped registry servers and public DNS records, including the RFC 10023 `_for-sale` record used by marketplaces like Atom.com.", "body_md": "Three agents behind `.agt` names answer questions about any domain. Each one is a plain MCP endpoint over HTTP, free to call, with nothing to sign up for. Claude Code connects to one with a single command, and the tools appear in your next session. Here are the three commands, then what each agent actually answers, then how to check that the URL you pasted is the one the name's owner published.\n\n## 1) rdap.agt\n\nWho holds a domain, when it was registered and when it expires, its registrar, nameservers and status, read from the public RDAP service of the registry.\n\n```\nclaude mcp add --transport http --scope user rdap https://rdap.agts.dev/mcp\n```\n\n## 2) txtrecord.agt\n\nWhat a domain has published about itself in DNS: its TXT records explained, email sender rules (SPF, DMARC) with a verdict, and DNSLink pointers to IPFS content.\n\n```\nclaude mcp add --transport http --scope user txtrecord https://txtrecord.agts.dev/mcp\n```\n\n## 3) forsale.agt\n\nIs the domain for sale, and where? Reads the RFC 10023 `_for-sale` record that marketplaces such as Atom.com publish for their listings: the listing link, the asking price when public, and whether the answer is DNSSEC-signed.\n\n```\nclaude mcp add --transport http --scope user forsale https://forsale.agts.dev/mcp\n```\n\n## Then ask in plain words\n\nStart a new session. Type `/mcp` and the three servers show as connected. From there you ask the way you would ask a colleague: who owns example.com, does it send mail safely, is it for sale. Claude Code picks the agent and the tool, and the answer comes back as a short readable summary first, with the full JSON underneath for anything you want to script.\n\n`--scope user` makes the agents available in every project on your machine. Leave it off and the agent is added to the current project only, which is the right choice when a repo's contributors should all get the same tools from its checked-in configuration.\n\n## What each agent answers, tool by tool\n\n**rdap.agt** has three tools. `lookup_domain` returns the registrar with its IANA id, the registration and expiry dates, the status codes translated into plain words (client transfer prohibited becomes \"locked against transfer\"), the nameservers, whether DNSSEC is on, and the abuse contact. `domain_signals` is the same data read for risk: newly registered, recently transferred, on hold, expiring soon, each as a signal with a one-line verdict rather than a judgment. `rdap_record` gives you the raw RDAP JSON when you want to read it yourself. Only the registry servers listed in the IANA bootstrap are queried, and the registrar referral is followed once, over https, after a public-IP check on every hop.\n\n**txtrecord.agt** also has three. `txt_records` lists every TXT record a domain publishes, grouped by what it is for: email rules, services the domain has verified with (named by service where the pattern is known), DNSLink, and the rest, each with a one-line explanation. `email_security` answers the question \"can someone send mail pretending to be this domain\": it checks SPF, counting includes against the ten-lookup limit, DMARC, MTA-STS, TLS-RPT and BIMI, plus DKIM when you give it a selector, and ends with a verdict and the fixes. `dnslink` finds where a domain's IPFS or IPNS content lives and gives you a gateway link to open it.\n\n**forsale.agt** reads one record type and does three things with it. `for_sale_status` takes a domain or a page URL and says whether it is advertised for sale, on which marketplace (named from the listing link's host), at what asking price when the seller publishes one, with the seller's note, and whether the resolver validated the answer with DNSSEC. A page on a www host falls back to the registrable domain, which is where sellers list. `check_domains` does the same for up to ten domains at once, one line each with a count. `parse_for_sale_record` explains a single `v=FORSALE1` record string without touching DNS, useful when you are writing one for a domain you hold.\n\nA concrete example. Atom's own announcement of its RFC 10023 support used recruitable.com. Ask forsale.agt about it and the summary reads: for sale on Atom, asking USD 47,999, marked indicative, with the atom.com listing link, the seller's note, and a warning that the record is unsigned so the listing page is the authority. That last line is the RFC's own security guidance turned into a habit: the agent returns the listing link as data and never opens it for you, and a price in DNS is a starting point for a conversation, not a checkout.\n\n## Why the URL is trustworthy\n\nEvery `.agt` name resolves to a manifest signed by the wallet that owns the name on chain, and the manifest lists the endpoints. The three URLs above come from those signed documents. Before you paste, you can check them yourself: open the name's page, [agtnames.com/name/forsale](https://agtnames.com/name/forsale) for instance, and read the endpoint under the green \"verified, signed by the owner\" chip. If the owner ever moves an agent, they republish the manifest and the page changes; the name stays the same. That is the point of putting an agent behind a name rather than behind a URL in a blog post.\n\nThe same manifests are what the `.agt` Claude Code plugin reads when you ask it for an agent's endpoint, and what any MCP-compatible client can read through the resolver SDK. The three commands above are simply the shortest path when someone tells you a name and you want the tools in your terminal in the next minute.\n\n## What they cost and what they keep\n\nAll three are free and rate-limited per address, thirty requests a minute each, enough for a person and for a script that checks a list. They keep no state and hold no account: every request is a DNS or RDAP read, answered and forgotten. They cover ICANN domains today; a web3 or Handshake name gets a plain \"not covered\" answer rather than a guess.\n\nDiscover them, and the rest of the namespace, at [agtnames.com/explore](https://agtnames.com/explore).", "url": "https://wpnews.pro/news/how-to-add-domain-name-agents-in-claude-code", "canonical_source": "https://agtnames.substack.com/p/add-domain-agents-claude-code", "published_at": "2026-09-28 16:02:00+00:00", "updated_at": "2026-09-28 16:46:43.516229+00:00", "lang": "en", "topics": ["ai-agents", "agent-protocols", "developer-tools", "ai-tools"], "entities": ["Claude Code", "rdap.agt", "txtrecord.agt", "forsale.agt", "IANA", "Atom.com", "IPFS", "DNSSEC"], "also_reported_by": [], "alternates": {"html": "https://wpnews.pro/news/how-to-add-domain-name-agents-in-claude-code", "markdown": "https://wpnews.pro/news/how-to-add-domain-name-agents-in-claude-code.md", "text": "https://wpnews.pro/news/how-to-add-domain-name-agents-in-claude-code.txt", "jsonld": "https://wpnews.pro/news/how-to-add-domain-name-agents-in-claude-code.jsonld"}}