Skills catalog DNS and email operations

SPF Validator

Useful for mail operations, audits, and agent workflows that need deterministic SPF findings before changing DNS.

spf.validate v1 open live

Use This Skill

Endpoints

Method Path Status Modes
POST /api/tools/spf/validate live json
POST /api/tools/spf/evaluate live json

Input Contract

Provide a domain. Optional sender_ip adds sender simulation without requiring Mail From or HELO. Optional spf_record and dns_records can be supplied for deterministic offline analysis. The evaluate endpoint also accepts mail_from and helo.

Output Contract

Returns parsed terms, recursive include/redirect traversal, DNS lookup and void lookup counts, sender simulation results when requested, and structured findings.

Errors

Invalid domain, invalid sender IP, malformed SPF mechanisms, multiple SPF records, loop detection, or DNS lookup-limit findings.

Auth and Limits

Anonymous JSON API for initial rollout. Browser form submissions use standard Laravel CSRF protection.

JSON API uses the standard API throttle. DNS traversal is bounded by SPF lookup limits and loop detection.

Examples

Requests

POST /api/tools/spf/validate {"domain":"example.com"}
POST /api/tools/spf/evaluate {"domain":"example.com","sender_ip":"192.0.2.10","mail_from":"sender@example.com"}

Responses

{"tool":"spf.validate","domain":"example.com","dns":{"lookup_count":2},"findings":[{"code":"SPF_RECORD_PARSED","severity":"Info"}]}

FAQ

Can agents avoid live DNS?

Yes. Provide spf_record and optional dns_records in the request to analyze a deterministic policy snapshot.

Is this the same as the SPF Flattener?

No. The validator explains policy health and sender outcomes. The flattener produces a flattened SPF record for DNS publishing.

Related Skills