Your Data · Attack Surface

list_my_dns_records

List DNS records discovered for your domains. Filter by record type (A, AAAA, MX, TXT, CNAME, NS, ...). Costs 1 credit.

POST
tools/call

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_typestringoptional

Optional. 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 200

Maximum 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

countintegeroptional

Number of records returned (equals items.length).

itemsarrayoptional

DNS records discovered for your domains. Each object contains the fields below.

items[].record_typestringoptional

The DNS record type, e.g. A, AAAA, MX, TXT, CNAME, or NS.

items[].record_namestringoptional

The owner name (left-hand side) of the record.

items[].record_valuestringoptional

The record data (right-hand side), e.g. an IP address, hostname, or text value.

items[].ttlintegeroptional

Time-to-live for the record, in seconds.

generated_atstringoptional

ISO 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