
Custom Domain API
io.github.siretov0.11.1Updated Oct 10, 2026
Register a SaaS app's customer hostnames, show their DNS records and checks, recheck or delete them.
Overview
Lets an assistant register, inspect, recheck, and delete customer custom hostnames through the Custom Domain API.
- What it does
- Wraps the Custom Domain API so an assistant can register a customer's hostname for a workspace and get back the DNS records to hand over. It can fetch a domain with its status, records, and four checks, list domains filtered by workspace or status with paging, and produce the DNS records as text with per-record help. It can recheck a domain after a DNS fix, delete a hostname, and list webhook subscriptions without secrets.
- When to use it
- Use it when a SaaS application lets customers point their own hostnames at it and you want an assistant to onboard those hostnames, explain the DNS records to customers, or diagnose why a domain is not live yet. It fits support and onboarding workflows rather than general DNS administration.
- Requirements
- Runs locally over stdio, installed with uvx or pip, so Python and the package are needed. Two environment variables are required: CUSTOM_DOMAIN_API_URL, the https edge URL, and CUSTOM_DOMAIN_API_KEY, an application API key starting with cd_. Desktop MCP clients only; no web executable.
Installation
In SourceWeft
- Open Custom Domain API in the dashboard and add it to a workspace.
- Enable the server for the chats that should use its tools.
Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.
Other MCP clients
Follow the launch instructions in the repository.
README
custom-domain-mcp
An MCP server for the Custom Domain API. It lets an AI assistant (Claude, Cursor, any MCP client) register your customers' hostnames, show them their DNS records, check why a domain isn't live yet, and recheck or delete it. It acts as one application, with that application's own API key.
Setup
It reads two settings from the environment:
Claude Code:
Claude Desktop, Cursor and other clients (mcpServers in their config):
Tools
What it can't do
- No operator actions. It never holds an operator token, only the application's key, so it can do exactly what the application's backend can.
- No webhook creation or rotation. Their responses carry the signing secret, which would end up in the assistant's conversation. Create webhooks through the API or the portal.
Customer data is data, not instructions. Hostnames, workspace
references, metadata and check messages come from your application's
customers and from DNS. The server tells the assistant to report them,
never to follow them, and to call delete_domain only when you explicitly
asked for that domain to be deleted, repeating its hostname back to you
first. Your MCP client's own confirmation for destructive tools adds a
second check.
The server's instructions also tell the assistant the one rule integration
code must follow: select the tenant from the verified
X-Custom-Domain-Assertion, never from Host
(verifying requests).
Source: mcp-server/README.md at commit 0434ba1
Tools
0Version history
1- v0.11.1LatestOct 10, 2026


