# sitey.my > Put your AI-built site on your own address in 30 seconds. No sign-up. Free for agents, a month at a time. Identity: ERC-8004 agent card — https://sitey.my/.well-known/agent-registration.json MCP: https://sitey.my/mcp?via=llms (no account needed) Free subdomains with the DNS behind them: claim a name, point it at an address with an A or CNAME record, or send its visitors to a URL with a REDIRECT record, and add the TXT record a host asks for. Over REST or MCP, with or without an account. No account is needed to create one, and nothing has to be fetched first. Create with no Authorization header and the response carries an `owner_token`, once — send it back as `Authorization: Bearer ` (or the `owner_token` argument over MCP) to manage the record from any address. Only its hash is stored, so it cannot be looked up again, and a record owned by a token is not reachable without it. An API key from the dashboard puts the records under an account instead. TXT records need an account: send the API key as `Authorization: Bearer styo_…`. Without one, TXT is refused with `ACCOUNT_REQUIRED`, and so is a CNAME or REDIRECT pointing at a temporary tunnel host (`TUNNEL_TARGET_FORBIDDEN`). The Limits section lists both. The name comes first: a record whose target is not serving yet is created all the same, with `reachable: false` in the response saying so. Claim the address, then deploy to it. Three record types: `A` (an IPv4 address), `CNAME` (a hostname), and `REDIRECT` (an absolute `https://` URL — every visit to the name is answered 301 to it, so a link can have an address without a server behind it). A REDIRECT may not point under a root served here, and the limit, the lease and the TXT rules apply to it as to the other two. Only a REDIRECT is counted. Its visits pass through this service, so listing it returns a `hits` object — `total`, `this_month`, `last_at`. An A or CNAME is reached straight from DNS and never seen here, so it carries no such field rather than a misleading zero. ## Calling it - [OpenAPI 3.1 spec](https://sitey.my/openapi.json): every REST operation, every error code. - [MCP endpoint](https://sitey.my/mcp): Streamable HTTP, stateless — one POST per JSON-RPC message. Ten tools, the same ten operations as the REST API. - [MCP manifest](https://sitey.my/.well-known/mcp.json): what to hand an agent runtime. Claiming a name is one request: ``` curl -X POST https://sitey.my/api/v1/subdomains \ -H 'content-type: application/json' \ -d '{"subdomain":"demo","domain":"sitey.my","type":"A","value":"203.0.113.10"}' ``` The response to that carries `owner_token`. Keep it; every later call about this record wants it. The roots you may create under are sitey.my, officials.my, officials.one, sitey.one. Ask https://sitey.my/api/v1/domains rather than copying that list: which roots are on offer is a table, not a constant. ## Limits - An account may hold 5 subdomains and is refused the next one. - A caller with no API key is identified by an owner token. Creating without one mints it and returns it once, so nothing has to be fetched or signed up for first; send it back to manage the record from any address, and note that it cannot be looked up again. Records created before tokens existed are still identified by the IP address that made them. Either way the 5 is enforced, per token or per address. - Without an account (an API key from the dashboard) three things are refused: TXT records (ACCOUNT_REQUIRED); a CNAME or REDIRECT pointing at a temporary tunnel — trycloudflare.com, serveousercontent.com, serveo.net, ngrok.io, ngrok.app, ngrok-free.app, ngrok-free.dev, loca.lt, localtunnel.me, pinggy.link, pinggy.io, lhr.life, localhost.run, bore.pub, devtunnels.ms, tunnelmole.net — (TUNNEL_TARGET_FORBIDDEN); and names containing login, signin, verify, wallet, password, recovery, support, security, account, auth, bank (ACCOUNT_REQUIRED). An API key lifts all three. Brand names (toss, kakao, paypal and the like) are refused for everyone. - A name is lent, not given: 3 months for a record owned by an account, 1 month for one created without one. Every response carries expires_at, and renewal opens 14 days before it. - A record nobody renews is removed on that date. - Nothing can be bought while the payment route is off: a caller who is refused is refused, not offered a price. - A record created without an account is renewed free a month at a time. Paying for a year is switched off on this server. ## Pages - [Docs](https://sitey.my/docs): the same ground for a person, with the Vercel setup written out. - [Blog](https://sitey.my/blog): notes on running the service. - [Terms](https://sitey.my/terms): what a name here may not be used for. - [Report abuse](https://sitey.my/abuse): no account needed.