Tool tree
Pick your mailbox provider and every service that sends as your domain (Google Workspace, Microsoft 365, SendGrid, SES, Mailgun and more). Get the exact SPF, DKIM, DMARC and MX records, a DNS lookup…
Implementation
gradeNot graded
gradeNot graded
generate_mail_recordsAction
Generate the DNS records (MX, SPF with lookup estimate, DKIM per provider, staged DMARC, optional MTA-STS) a domain needs for the mail providers it uses. Provider ids: google, m365, zoho, fastmail, proton, icloud, ses, sendgrid, mailgun, postmark, mandrill, brevo, hubspot, klaviyo, custom. Use when someone asks how to set up SPF/DKIM/DMARC for their domain.
View tool JSON
{
"name": "generate_mail_records",
"kind": "act",
"impl": "imperative",
"description": "Generate the DNS records (MX, SPF with lookup estimate, DKIM per provider, staged DMARC, optional MTA-STS) a domain needs for the mail providers it uses. Provider ids: google, m365, zoho, fastmail, proton, icloud, ses, sendgrid, mailgun, postmark, mandrill, brevo, hubspot, klaviyo, custom. Use when someone asks how to set up SPF/DKIM/DMARC for their domain.",
"inputSchema": {
"type": "object",
"properties": {
"domain": {
"type": "string",
"description": "the domain, e.g. example.com"
},
"mailbox": {
"type": "string",
"description": "mailbox provider id (google, m365, zoho, fastmail, proton, icloud) or empty for send-only",
"enum": [
"",
"google",
"m365",
"zoho",
"fastmail",
"proton",
"icloud"
]
},
"senders": {
"type": "array",
"items": {
"type": "string",
"enum": [
"ses",
"sendgrid",
"mailgun",
"postmark",
"mandrill",
"brevo",
"hubspot",
"klaviyo",
"custom"
]
},
"description": "other services that send as the domain"
},
"customIps": {
"type": "array",
"items": {
"type": "string"
},
"description": "IPs/hostnames of own mail servers when senders includes custom"
},
"reportAddress": {
"type": "string",
"description": "mailbox for DMARC aggregate reports (default dmarc@domain)"
},
"stage": {
"type": "string",
"enum": [
"start",
"monitoring",
"enforce"
],
"description": "rollout stage: start = p=none, monitoring = p=quarantine pct=25, enforce = p=reject"
},
"mtaSts": {
"type": "boolean",
"description": "also produce MTA-STS and TLS-RPT records"
}
},
"required": [
"domain"
],
"additionalProperties": false
},
"page": "/tools/email-setup/"
}