DomainSpace
Register .si and other domains, check availability and manage DNS from your AI agent.
Hosted MCP Server
npx add-mcp 'https://domainspace.si/mcp'Installs into Claude Code, Codex, Cursor and more
Documentation
Your AI agent can find and register a.si domain for you
Connect your agent to the DomainSpace MCP server and ask it for a name. It checks which.si names are free, tells you the price and prepares the registration. You open the link, check the details and pay yourself. The same connection lets it manage your domains and DNS records afterwards.
How it works
- Create a token Log in (or sign up) and create an access token under API access in your dashboard. To register names, give it the read and purchase permissions.
- Add the server to your agent Add the server address below to Claude Code, Cursor or another client, with your token in the Authorization header.
- Ask the agent Describe what you need. The agent checks names one by one and prepares one checkout link for the names you pick.
- You approve and pay Open the link while logged in, check the registrant details, accept the terms and pay by card. The agent can then follow the order until the domain is registered.
Server address
https://domainspace.si/mcp
Example request
Find a free.si name for my AI note-taking app, short and easy to spell. Check five ideas and prepare the registration for the one I pick.
A person always pays
No tool charges anything. When an agent prepares a registration or renewal it only gets a link. You open it while logged in, check the registrant details, accept the terms and the withdrawal-waiver consent, and pay by card on the Stripe page. The agent cannot give that consent for you and never sees your card details.
An inbox for your agent
Give your agent its own address on your domain, such as agent@yourname.si. It can sign up for services, wait for the confirmation code or link, and read replies, all on a domain you own. Mail stays on our mail server in the EU, in a normal mailbox that you can also open yourself.
- Receive-only: the agent reads mail and cannot send, move or delete it.
- Reading needs the mail:read permission, which a token only has if you choose it.
- The agent prepares the mailbox; you create it with one click (and pay, for a paid one).
The first mailbox on a domain registered with us is free. More mailboxes cost €19 a year each.
Example request
Create the mailbox agent@ on my domain, sign up for the newsletter tool we discussed with that address, and confirm the sign-up from the email.
Connect your agent
Replace dsp_YOUR_TOKEN with your token. It is shown only once, when you create it.
Claude Code
Run this in a terminal.
claude mcp add --transport http domainspace https://domainspace.si/mcp --header "Authorization: Bearer dsp_YOUR_TOKEN"
Cursor
Add this to ~/.cursor/mcp.json (or.cursor/mcp.json in a project), following Cursor's documented format for remote servers.
{
"mcpServers": {
"domainspace": {
"url": "https://domainspace.si/mcp",
"headers": {
"Authorization": "Bearer dsp_YOUR_TOKEN"
}
}
}
}
Claude (claude.ai and the desktop app)
- Open Customize > Connectors and choose Add custom connector.
- Enter the server address. For Authentication choose No sign-in.
- Under Request headers add the header authorization with the value below, including the word Bearer.
Bearer dsp_YOUR_TOKEN
Claude offers request headers as a beta for some accounts. If your dialog has no Request headers section, use Claude Code or another client for now.
ChatGPT
ChatGPT connectors sign in with OAuth or connect without credentials; they cannot send an access token. We do not support OAuth yet, so ChatGPT cannot connect to our server for now.
Other clients
{
"mcpServers": {
"domainspace": {
"type": "http",
"url": "https://domainspace.si/mcp",
"headers": {
"Authorization": "Bearer dsp_YOUR_TOKEN"
}
}
}
}
Clients that connect to remote MCP servers over HTTP and allow custom headers accept a configuration like this; the key names vary, so check your client's documentation.
We test the server with the official MCP TypeScript SDK client over Streamable HTTP. Other clients should work if they support that transport and custom headers.
Permissions
Each token has one or more permissions. A tool call without the right permission fails with a message that names it. Choose only what the agent needs.
- readSee your domains, DNS records and orders; check availability and prices.
- dns:writeAdd and delete DNS records on your domains.
- purchasePrepare registrations and renewals. It only returns links; you always pay yourself.
- mail:readRead the mail in your mailboxes (for example sign-up codes and replies). Read-only: it cannot send, move or delete mail.
Want the agent to look but not touch? Create a token with only the read permission: it can check names and read your domains, DNS records and orders, but cannot change DNS or prepare a purchase.
All tools
This list is generated from the server itself, so it always matches what your agent sees.
| Tool | Permission | What it does |
|---|---|---|
| check_domain | read | Whether a name is free and what the first year costs (a.si or another ending we sell). Buys nothing. |
| list_domains | read | Your domains with expiry date, renewal state and renewal price. |
| get_domain | read | Details of one of your domains. |
| list_dns_records | read | The DNS records of one of your domains. |
| add_dns_record | dns:write | Add a DNS record (same validation as the dashboard). |
| delete_dns_record | dns:write | Delete a DNS record. |
| start_registration | purchase | Check one or several names and return one checkout link for you to open. Buys nothing. |
| start_renewal | purchase | Return the dashboard link where you renew a domain, while renewal is open. Buys nothing. |
| list_orders | read | Your recent orders and their status. |
| get_order | read | The status of one order, to follow it until the domain is registered. |
| list_mailboxes | read | Your mailboxes and whether the agent can read each one. |
| create_mailbox | purchase | Check an address and return the price and a link where you create the mailbox. Creates and buys nothing. |
| list_messages | mail:read | The newest messages in one of your mailboxes, with sender, subject and preview. |
| get_message | mail:read | Read one message as text (links keep their address; attachments are only listed). |
| wait_for_message | mail:read | Wait up to 50 seconds for a new message, e.g. a sign-up code, and return it. |
Safety
- Every tool call needs a token, even checking a name, and a token only reaches your own domains and orders.
- Tokens are shown once and stored only as a hash. You can set an expiry date and revoke a token at any time.
- Your dashboard shows the recent activity of your tokens.
- No tool can charge anything: registrations and renewals end with a link that you open and pay yourself.
- Without a token the server only introduces itself and lists its tools, so that MCP directories can show them. Every tool call needs a token.
- Requests are limited per token: 120 a minute in total, and 20 registrar checks a minute (check_domain and start_registration, one per name).
- Reading mail: 60 calls a minute, of which at most 6 wait_for_message calls.