list_my_dns_records
List DNS records discovered for your domains. Filter by record type (A, AAAA, MX, TXT, CNAME, NS, ...). Costs 1 credit.
Cost: 1 credit per successful call · Scope: mcp:org · Response shape: jsonb
Returns data scoped to your own organisation only: the organisation is resolved from your API key and injected server-side, never read from the request.
Parameters
record_typestringoptionalOptional. Filter to a single DNS record type, e.g. A, AAAA, MX, TXT, CNAME, or NS. Maximum length 10. When omitted, all record types are returned.
limitintegeroptionaldefault 200Maximum number of records to return. Accepted range: 1–1000.
Example invocation
Ask your agent: "Show our MX records."
curl -s https://api.edgeprotect.io/functions/v1/mcp \
-H "Authorization: Bearer $EDGEPROTECT_API_KEY" \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"list_my_dns_records","arguments":{"record_type":"MX","limit":200}}}'
Response
{
"count": 4,
"items": [
{
"record_type": "A",
"record_name": "acme-corp.example",
"record_value": "203.0.113.10",
"ttl": 300
},
{
"record_type": "MX",
"record_name": "acme-corp.example",
"record_value": "10 mail.acme-corp.example",
"ttl": 3600
},
{
"record_type": "TXT",
"record_name": "acme-corp.example",
"record_value": "v=spf1 include:_spf.google.com ~all",
"ttl": 3600
},
{
"record_type": "NS",
"record_name": "acme-corp.example",
"record_value": "ns1.cloudflare.com",
"ttl": 86400
}
],
"generated_at": "2026-06-18T08:15:00.000Z"
}
The full MCP envelope, including _meta.edgeprotect with request_id, credits, and response_truncated, is documented in Response Format.
Response fields
countintegeroptionalNumber of records returned (equals items.length).
itemsarrayoptionalDNS records discovered for your domains. Each object contains the fields below.
items[].record_typestringoptionalThe DNS record type, e.g. A, AAAA, MX, TXT, CNAME, or NS.
items[].record_namestringoptionalThe owner name (left-hand side) of the record.
items[].record_valuestringoptionalThe record data (right-hand side), e.g. an IP address, hostname, or text value.
items[].ttlintegeroptionalTime-to-live for the record, in seconds.
generated_atstringoptionalISO 8601 timestamp indicating when this response was generated.
Errors
| Code | Message | When |
|---|---|---|
-32602 |
invalid_params: record_type: max:10 |
record_type exceeds 10 characters |
-32602 |
invalid_params: limit: min:1 |
limit is less than 1 |
-32602 |
invalid_params: limit: max:1000 |
limit exceeds 1000 |
-32001 |
unauthorized |
The API key is invalid/revoked, the IP is not allowed, or the key lacks the mcp:org scope. |
-32002 |
insufficient_credits |
Your credit balance is zero; top up from the dashboard |
-32603 |
internal |
Unexpected server error; the credit is automatically refunded |

