Developer platform · REST + MCP
Domain signals for software and agents.
Authentication
Create a key in your developer account, then send it in the HTTP Authorization header. Keys are shown once and cannot be recovered.
Authorization: Bearer nt_live_…Endpoints
GET /api/v1/dns/records?domain=example.com&type=A
GET /api/v1/dns/caa?domain=example.com
GET /api/v1/email/spf?domain=example.com
GET /api/v1/email/dmarc?domain=example.com
GET /api/v1/email/mx?domain=example.com
GET /api/v1/email/dkim?domain=example.com&selector=google
DNS record types: A, AAAA, CNAME, MX, NS, TXT, SRV, SOA and CAA.
Response envelope
{
"ok": true,
"data": { "domain": "example.com", "records": [] },
"error": null,
"meta": { "request_id": "…", "api_version": "v1", "plan": "free" }
}Errors use the same envelope with ok: false, a stable error.code, and an HTTP status such as 401, 422, 429 or 502. Limit state is returned in the standard-style RateLimit-* headers.
MCP server
Connect a Streamable HTTP MCP client to http://nerdtools.co.uk/mcp and provide the same API key as a Bearer token. Available tools cover DNS records, SPF, DMARC, MX, CAA and DKIM.
{
"url": "http://nerdtools.co.uk/mcp",
"headers": {
"Authorization": "Bearer nt_live_…"
}
}MCP calls consume the same plan quota as REST requests.
Plans and limits
Free developer access is designed for evaluation. Pro raises both the plan quota and per-minute rate for production integrations; upgrades are managed from the developer account.