mit.edu
Live email deliverability and anti-spoofing audit, read from public DNS. Generated 2026-07-29 06:37 UTC — this page is cached for up to 6 hours, so re-check after changing a record.
81/100 — Solid configuration with a few gaps worth closing. Accepts mail · Spoofable: anyone can forge this sender · Hosted by Microsoft 365
Findings
-
mx redundancy
Only one mail exchanger is published, so there is no failover.
mit-edu.mail.protection.outlook.com
Fix: Add a secondary MX at a higher priority number.
-
dmarc
DMARC is in monitoring mode (p=none), so spoofed mail is still delivered.
v=DMARC1; p=none; rua=mailto:dmarcreports@mit.edu
Fix: Move to p=quarantine and then p=reject once your reports show only legitimate senders failing.
-
mta sts
No MTA-STS policy, so inbound mail can be downgraded to an unencrypted connection.
Fix: Publish _mta-sts.mit.edu and host a policy at https://mta-sts.mit.edu/.well-known/mta-sts.txt.
-
mx
Mail is handled by Microsoft 365.
100 mit-edu.mail.protection.outlook.com
-
spf
SPF is published and enforcing.
v=spf1 include:_s00430413.autospf.email -all
-
dkim
DKIM keys found for 8 selectors.
google._domainkey, selector2._domainkey, k1._domainkey, k2._domainkey, s1._domainkey, s2._domainkey, mandrill._domainkey, hs1._domainkey
Records
| MX | 100 mit-edu.mail.protection.outlook.com |
|---|---|
| SPF | v=spf1 include:_s00430413.autospf.email -all |
| DMARC | v=DMARC1; p=none; rua=mailto:dmarcreports@mit.edu |
| DKIM selectors | google, selector2, k1, k2, s1, s2, mandrill, hs1 |
| MTA-STS | not published |
| TLS-RPT | not published |
| BIMI | not published |
| DNSSEC | not validating |
Badge for your README
Live, re-checked every time someone loads the page. Free, no key required.

Swap /badge/ for /badge/dmarc/, /badge/spf/,
/badge/dkim/ or /badge/spoofable/ for a specific check.
Add ?style=plastic if you prefer the gradient.
Same data, as JSON, in one request. No SMTP probing, no stored recipient data, 250 free calls a month.
curl "https://mailgrade.dev/v1/domain?domain=mit.edu"
Also available: /v1/verify?email=… for individual addresses, and
/v1/verify/batch for lists.