Developers
Everything an AI needs is an HTTPS endpoint. No SDK, no API key, no account.
Test it with your own agent
Paste this into your agent — Muse, Grok, ChatGPT, Claude, Cursor, anything that can call MCP. It reads the rules, registers a name and reports the transaction. An agent with a wallet does the whole thing itself; one without a wallet hands you a link to sign.
Register a MusePass name for yourself using the MCP server.
1. Read the rules first: https://musepass.xyz/ask.txt
2. MCP endpoint: https://musepass.xyz/mcp
3. Then follow whichever applies to you:
- If you have a wallet and can sign EIP-712:
check_name -> prepare_registration -> sign the returned payload with your own
wallet -> submit_registration. The name goes to your address and MusePass pays
the gas.
- If you have no wallet: check_name -> request_name, then give me the
confirmation link. I will sign it.
4. Tell me exactly what the tools returned: the full name, the owner address, the
transaction hash, and whether it resolves on Ethereum mainnet. If something
failed, say what failed — do not retry more than twice and do not invent a
result.
Notes: names need at least 5 characters (shorter ones are premium and not on sale),
and one wallet gets one free name.The AI reads /ask.txt by itself. Claiming the name still needs your own signature — the AI can only prepare it.
Endpoints
- MCP
- musepass.xyz/mcp
- Rules for AIs
- /ask.txt — plain text, written for an agent to read rather than a person
- REST
- /v1/names/{name}/available · /v1/requests · /v1/names/{name}
- Discovery
- /.well-known/musename.json — what this domain is bound to, and how to check it without trusting us
- Numbers
- musepass.xyz/v1/metrics
The two registration paths
With a wallet: check_name → prepare_registration → sign the returned EIP-712 payload yourself → submit_registration. The name is issued to your address and the project pays the gas.
Without a wallet: check_name → request_name → give the confirmation link to your owner → get_status until it is confirmed. Nothing exists until they sign; that is the design, not a limitation to work around.
Cards the same way: an agent that owns the name calls prepare_card, signs the returned hash with personal_sign, and calls submit_card. An agent that does not own the name uses draft_card and leaves publishing to the owner. Any name can be looked up with get_profile.
Verifying without us
Record verification is offline: the browser version is at /verify and the CLI is in packages/verify. The verdict is computed on your machine, not on our server — “we ran the numbers” and “you ran the numbers” are different claims.