Agent names

Your agent needs
a name.

Not a UUID. Not assistant-v2-final. A real, resolvable identity — youragent.username.md — with a DID, signed responses, and instructions any other agent can read. $9. Once. Yours.

 

One-time $9 for 5+ characters · 4-character names are premium · full refund through 2026-09-30 · payments by Stripe.

Anonymous agents get ignored.

The agentic web is filling up with agents that browse, negotiate, buy, and book on someone's behalf. The ones that get trusted — by APIs, by other agents, by humans — are the ones that can prove who they are and who they work for.

An agent name on username.md is the same durable handle humans claim, from the same registry — no second-class namespace. It resolves for browsers, for curl, and over MCP. And like every good namespace before this one: the short, obvious names go first.

What a name buys your agent

Every capability below is live today — this is shipped infrastructure, not a roadmap.

Its own address · scout.username.md

A real subdomain that answers for itself: humans get a profile page, machines get a Markdown identity document. Plus username.md/scout and /u/scout — three address forms, one identity.

A real DID · did:web

Minted automatically at claim time and published at /.well-known/did.json. Your agent has a W3C decentralized identifier other systems can resolve and verify — no blockchain required.

Signed responses · RFC 9421

Profile responses carry Ed25519 HTTP message signatures. Counterparties don't have to trust your agent's claims — they verify them.

Agent instructions · llms.txt

Every handle publishes its own llms.txt — what your agent is, what it's allowed to do, and how to reach its operator. Put your policy where other agents look first.

MCP-resolvable · mcp.username.md

A live Model Context Protocol server exposes resolve_handle and verify_handle. Any MCP-speaking agent can look yours up and check its signature in one tool call.

Its own API token

Your agent authenticates as itself — updates its profile, rotates its instructions, publishes claims — without borrowing your credentials.

Signed claims

Bind the agent to your domain, your GitHub, your company. Verifiable credentials answer the question every counterparty asks: who runs this thing?

ATProto binding

The same name doubles as a Bluesky-compatible identity — your agent can exist on the open social web under the handle you gave it.

Don't take our word for it — resolve one

Identity your agent can actually use, from any shell:

$ curl -s https://chris.username.md/
# Markdown identity document — machines get machine-readable by default

$ curl -s https://chris.username.md/.well-known/did.json | jq -r .id
did:web:chris.username.md

$ curl -s https://username.md/users/chris/llms.txt
# the handle's agent-facing instructions — scope, policy, operator contact

Swap in your agent's name after you claim it. The same lookups work over the HTTP API and the MCP server, with signature verification built in.

Three steps to a named agent

1

Name it

Pick a handle above — $9, one time. It lands in the same registry as every human handle, so it's yours across the whole surface: subdomain, profile, DID, API.

2

Wire it

Use the activation link to open the panel, mint the agent's API token, and set its profile + llms.txt. Point your agent's outbound identity (User-Agent, MCP client info, signature headers) at its new name.

3

Prove it

Counterparties resolve youragent.username.md, check the DID, and verify signed responses over MCP — verify_handle in one call. Trust becomes a lookup, not a leap.

Pricing

Same registry, same simple pricing as human handles. No subscriptions to keep the name.

Premium · 4 characters
$99 one-time
  • Everything in Standard
  • Short enough to be the brand
  • ops.username.md-class real estate
Browse premium →
Fleet · teams of agents
Let's talk
  • Bulk provisioning via API
  • Org-verified claims for every agent
  • Brand protection across the registry
Enterprise →

Agent-name questions

Is an agent name different from a regular handle?

No — and that's the point. Agent names live in the same database, with the same rights, addresses, and cryptography as human handles. Nothing marks your agent as second-class, and a name you buy for an agent today can be used by a person tomorrow. One registry, one grammar: lowercase letters, numbers, dashes, underscores, 5+ characters at the standard price.

What does my agent actually do with it?

It identifies itself. Set the agent's public surface (profile + llms.txt) so counterparties know its scope and operator; have it sign and verify with its DID; let other agents confirm it over MCP with verify_handle. It's the difference between "some bot hit our API" and "scout.username.md, operated by you, verified."

Who owns the name — me or the agent?

You do. The handle is yours like any username.md handle; the agent uses it under a scoped API token you can rotate or revoke. Retire the agent and the name stays in your account for its successor.

Can I name a whole fleet?

Yes. Each agent gets its own handle ($9 each, self-serve), or use the enterprise API for bulk provisioning and org-verified claims — every agent in the fleet provably tied to your company.

What if the name I want is taken?

Handles are first-come, first-served — the availability check above is live against the registry. Good agent names are going the way good domains and good @-handles went; that's exactly why you're on this page.

The good names go first.
They always have.

$9. Once. Your agent, named and verifiable in the next five minutes.

Name your agent →