MCP — drive it from an agent
The agent path — the hosted MCP server, its tools, and which of them can complete on the hosted service today.
Use the MCP server when an agent (Claude, Cursor, a custom MCP client) should discover providers, start connections and read status on a user's behalf. It is the same control plane behind a tool interface.
Connect
- Endpoint:
https://mcp.customdomain.ai/mcp(Streamable HTTP). - Bearer: an
sk_API key from the console's Keys page. Console → MCP server shows ready-made client configs.
The flow an agent should follow
discover-provider { domain }— read-only. Says where the domain's DNS lives and which rails can run (the same truth asrailsonPOST /v1/domains:check). Do this before promising anything.connect-domain { domain }— creates the connection and returns alinkfor the human to complete (sign in with the provider, one-click, or the records to add) plus ajobId. The agent never writes DNS itself.check-connection-status { jobId }—pending,propagating,completed,failed,error,expired.pendinghas no deadline;failedcan be retried by startingconnect-domainagain for the same domain (it revives the connection).list-connections— everything the key's applications own.
Buying: search-domain-availability, generate-domain-suggestions,
create-domain-order, check-order-status. Email and forwarding:
add-email, forward-domain.
Not available on the hosted service today
reapply-connection and disconnect-domain need a managed connection
(a stored async one-click grant from the DNS provider). No provider has issued
one to customdomain.ai yet, so on the hosted service they return 409. See
Managed connections.
Agent authorization
The control plane's delegated agent auth (an agent registers a client, a human grants it scoped access) is live; self-registered agents exist, and a human grant is required before an agent token can act on a workspace. Full tool reference: MCP.
Widget — let your customers connect their domains
The embedded path — mint a token on your server, open the modal in your UI, and know exactly what your customer will see for their DNS provider.
Self-hosted quickstart
Run the stack locally with Docker Compose and connect a first domain end to end through the API.