Tools · web
Domain intel: registration, DNS, email auth, TLS
Everything about a domain in one call: registrar, creation and expiry dates and age from the registry's own RDAP, live DNS (A/AAAA/MX/NS), email authentication (SPF, DMARC policy) and the TLS certificate it serves (issuer, validity, days left, whether it covers the name). Pay-per-call via x402.
$0.0045 per call, paid in USDC on Base or Solana with x402 — no account, no API key. POST https://fiatdock.com/v1/domain/intel (or GET with the same fields as query parameters) · MCP tool domain_intel. An answer the tool cannot produce is refused with 4xx/5xx and is not charged.
Inputs
| Field | Type | Description | Example |
|---|---|---|---|
domain | string | A domain or a URL (example.com, https://www.example.com/page). Omit the whole body to get the published example (example.com) | "example.com" |
Example
Request body
{"domain":"example.com"}
Answer (the published example)
{"domain":"example.com","registeredDomain":"example.com","exists":true,"registration":{"registrar":"RESERVED-Internet Assigned Numbers Authority","createdAt":"1995-08-14T04:00:00Z","expiresAt":"2027-08-13T04:00:00Z","updatedAt":"2026-08-14T07:01:39Z","ageDays":11375,"daysToExpiry":312,"status":["client delete prohibited"],"nameservers":["a.iana-servers.net","b.iana-servers.net"],"dnssec":true},"registrationNote":null,"dns":{"a":["93.184.215.14"],"aaaa":[],"mx":[{"exchange":"","priority":0}],"ns":["a.iana-servers.net","b.iana-servers.net"],"txtCount":2,"resolved":true},"emailSecurity":{"spf":"v=spf1 -all","dmarc":"v=DMARC1;p=reject;sp=reject;adkim=s;aspf=s","dmarcPolicy":"reject"},"tls":{"valid":true,"error":null,"issuer":"DigiCert Inc","subject":"*.example.com","validFrom":"2026-10-05T00:00:00.000Z","validTo":"2027-01-15T23:59:59.000Z","daysRemaining":102,"sanCount":2,"coversDomain":true,"protocol":"TLSv1.3"},"checkedAt":"2026-10-05T00:00:00.000Z","sources":"registry RDAP (via the IANA bootstrap) + live DNS + a TLS handshake on port 443","note":"registration is the registry's own record."}
Call it
curl
# 1) ask: an unpaid call answers 402 with the exact price (free)
curl -i -X POST https://fiatdock.com/v1/domain/intel -H 'content-type: application/json' -d '{"domain":"example.com"}'
# 2) pay: any x402 client signs that 402 and resends — see Node or Python below
Node
// npm i @x402/fetch @x402/evm viem
import { wrapFetchWithPaymentFromConfig } from "@x402/fetch";
import { ExactEvmScheme } from "@x402/evm";
import { privateKeyToAccount } from "viem/accounts";
const pay = wrapFetchWithPaymentFromConfig(fetch, {
schemes: [{ network: "eip155:*", client: new ExactEvmScheme(privateKeyToAccount(process.env.AGENT_PRIVATE_KEY)) }],
});
const r = await pay("https://fiatdock.com/v1/domain/intel", {
method: "POST",
headers: { "content-type": "application/json" },
body: JSON.stringify({"domain":"example.com"}),
});
console.log(r.status, await r.json());
Python
# pip install "x402[httpx,evm]"
import asyncio, json, os
from eth_account import Account
from x402 import x402Client
from x402.http.clients import x402HttpxClient
from x402.mechanisms.evm.exact import register_exact_evm_client
async def main():
client = register_exact_evm_client(x402Client(), Account.from_key(os.environ["AGENT_PRIVATE_KEY"]))
async with x402HttpxClient(client) as http:
r = await http.post("https://fiatdock.com/v1/domain/intel", json=json.loads("{\"domain\":\"example.com\"}"))
print(r.status_code, r.json())
asyncio.run(main())
MCP (Claude, Cursor, any MCP client)
{"mcpServers":{"fiatdock":{"command":"npx","args":["-y","fiatdock-mcp"],"env":{"AGENT_PRIVATE_KEY":"0x<your agent wallet key>"}}}}
// then call the tool "domain_intel" — the package pays each call from that wallet
The wallet needs USDC on Base. Prefer no install? The remote server https://fiatdock.com/mcp answers the 402 as tool output for an agent that signs its own payments.
Related tools
- Web page reader — $0.0018
- Website contacts: socials, role emails, phones — $0.0027
- Technical SEO audit of a web page — $0.009
- RSS / Atom feed reader — $0.0022
Machine-readable: OpenAPI · tools.json · llms.txt · /.well-known/x402