Domains & DNS

Domains & DNS

Custom domains and full DNS management — your agent configures domains, provisions TLS certificates, and manages DNS records programmatically

Every service on Ink gets a default URL at your-service.ml.ink with automatic HTTPS. For production, delegate your own DNS zones and your agent manages everything — custom domains, email configuration, domain verification, and TLS certificates.

Why DNS delegation, not just custom domains

Most hosting platforms let you attach a custom domain to a service — you type in a domain, point a CNAME, and you're done. That works for humans managing a handful of services. It doesn't work for agents.

Custom domain support is a manual, one-at-a-time operation. Your agent can't create new subdomains, configure email, or verify domain ownership — it has to wait for you to do it through a dashboard.

DNS delegation is fundamentally different. By delegating a zone to Ink, your agent gets full programmatic control over every DNS record under that zone. It can:

  • Create and assign custom domains to new services autonomously — no human in the loop
  • Spin up staging.apps.example.com, preview-123.apps.example.com, or any subdomain on demand
  • Configure email routing and authentication (MX, SPF, DKIM, DMARC)
  • Add domain verification records for third-party services (Stripe, SendGrid, Google Workspace)
  • Provision wildcard TLS certificates automatically

One delegation unlocks unlimited autonomous operations. Your agent deploys a new service and assigns it a production domain in the same workflow — no context switch, no waiting on a human.

Default URLs

Every service gets a default URL automatically:

your-service-name.ml.ink

All default URLs are served over HTTPS with a wildcard TLS certificate for *.ml.ink. No configuration needed.

Custom domains

After delegating a DNS zone, your agent can assign custom subdomains to any service. Ink creates DNS records and provisions TLS certificates automatically.

Assigning a custom domain

Your agent uses the add_custom_domain MCP tool:

Prompt

Assign the domain api.apps.example.com to my backend service

What happens:

  • Ink creates a DNS A record pointing the domain to your service
  • A wildcard TLS certificate covers the domain automatically
  • Traffic is routed through Ink's load balancers
  • The service is accessible at both the custom domain and the default *.ml.ink URL

Removing a custom domain

Your agent uses the remove_custom_domain MCP tool to detach a domain from a service. The DNS record is removed and traffic returns to the default *.ml.ink URL.

Example

If you've delegated apps.example.com, your agent can assign:

  • api.apps.example.com → backend service
  • web.apps.example.com → frontend service
  • docs.apps.example.com → documentation site
  • staging.apps.example.com → staging environment

Each gets automatic TLS and is live immediately after DNS propagation.

Beyond service routing

With a delegated zone, your agent can also create arbitrary DNS records via the add_dns_record MCP tool:

Use caseRecord typeExample
Email routingMXRoute email to Gmail or Fastmail
Email authenticationTXTSPF, DKIM, DMARC records
Domain verificationTXTGoogle, Stripe, SendGrid verification
Service aliasesCNAMEPoint to external services
IPv6 supportAAAAIPv6 address records
Certificate policyCAARestrict certificate authorities

Learn more

On this page