DnsGuard
Check a domain's email authentication: SPF, DKIM, DMARC, BIMI, MX, MTA-STS, TLS-RPT. Score + fixes.
Sollte ich dies verwenden
Qualität und Sicherheit
Basierend auf einer automatisierten Analyse der Tool-Definitionen und der Einhaltung des Protokolls.
Kontextkosten
Dies ist die ungefähre Anzahl der Tokens, die jedes Mal verbraucht werden, wenn die Tools des Servers in den Kontext eines Modells geladen werden. Höhere Werte verringern die Aufmerksamkeit, die für andere Aufgaben verfügbar ist.
Installieren
Installation mit einem Klick
Fügen Sie dies Ihrer Datei `claude_desktop_config.json` hinzu:
{
"mcpServers": {
"dnsguard": {
"url": "https://dnsguard.mike-tusa.workers.dev/mcp"
}
}
}Remote-Endpunkte
https://dnsguard.mike-tusa.workers.dev/mcpstreamable-httpWas es kann
Tool-Inventar
Tools (1)
🟢check_domain(domain, dkim_selector, include_raw)
Audit the email-authentication DNS records of a domain. Returns a 0–100 score and A–F grade (MX 10, SPF 25, DMARC 30, DKIM 25, BIMI 10, plus up to 5 bonus points for MTA-STS and TLS-RPT, capped at 100), each check's status, published record, findings and recommended fixes, and a link to the full report. Read-only: it only queries public DNS and the domain's public MTA-STS policy file. Same engine and scoring as the DnsGuard JSON API (GET /api/check).
Eingabe-Schema
{
"type": "object",
"properties": {
"domain": {
"type": "string",
"minLength": 1,
"maxLength": 300,
"description": "Domain to check, e.g. example.com. A URL or email address is accepted and reduced to its domain."
},
"dkim_selector": {
"type": "string",
"maxLength": 255,
"description": "Optional DKIM selector (the s= value from a DKIM-Signature header), e.g. s1 or google. Common selectors are always tried."
},
"include_raw": {
"type": "boolean",
"default": false,
"description": "Also return the full /api/check JSON (all records, SPF include tree, DKIM keys) in structuredContent.raw. Larger output."
}
},
"required": [
"domain"
],
"additionalProperties": false
}Ausgabe-Schema
{
"type": "object",
"properties": {
"domain": {
"type": "string"
},
"organizationalDomain": {
"type": "string"
},
"score": {
"type": "number"
},
"maxScore": {
"type": "number"
},
"grade": {
"type": "string",
"enum": [
"A",
"B",
"C",
"D",
"F"
]
},
"scoreBreakdown": {
"type": "object",
"properties": {
"base": {
"type": "number"
},
"bonus": {
"type": "number"
},
"bonusMax": {
"type": "number"
},
"cap": {
"type": "number"
}
}
},
"checks": {
"type": "object",
"properties": {
"mx": {
"type": "object",
"properties": {
"status": {
"type": "string",
"enum": [
"pass",
"warn",
"fail",
"info"
]
},
"score": {
"type": "number"
},
"maxScore": {
"type": "number"
},
"bonus": {
"type": "boolean",
"description": "true for MTA-STS / TLS-RPT (bonus points on top of the 100-point core)"
},
"record": {
"type": "string",
"description": "Published record (omitted when none was found)"
},
"findings": {
"type": "array",
"items": {
"type": "object",
"properties": {
"level": {
"type": "string",
"enum": [
"pass",
"info",
"warn",
"fail"
]
},
"message": {
"type": "string"
}
},
"required": [
"level",
"message"
]
}
},
"recommendations": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"status",
"score",
"maxScore",
"findings",
"recommendations"
]
},
"spf": {
"type": "object",
"properties": {
"status": {
"type": "string",
"enum": [
"pass",
"warn",
"fail",
"info"
]
},
"score": {
"type": "number"
},
"maxScore": {
"type": "number"
},
"bonus": {
"type": "boolean",
"description": "true for MTA-STS / TLS-RPT (bonus points on top of the 100-point core)"
},
"record": {
"type": "string",
"description": "Published record (omitted when none was found)"
},
"findings": {
"type": "array",
"items": {
"type": "object",
"properties": {
"level": {
"type": "string",
"enum": [
"pass",
"info",
"warn",
"fail"
]
},
"message": {
"type": "string"
}
},
"required": [
"level",
"message"
]
}
},
"recommendations": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"status",
"score",
"maxScore",
"findings",
"recommendations"
]
},
"dmarc": {
"type": "object",
"properties": {
"status": {
"type": "string",
"enum": [
"pass",
"warn",
"fail",
"info"
]
},
"score": {
"type": "number"
},
"maxScore": {
"type": "number"
},
"bonus": {
"type": "boolean",
"description": "true for MTA-STS / TLS-RPT (bonus points on top of the 100-point core)"
},
"record": {
"type": "string",
"description": "Published record (omitted when none was found)"
},
"findings": {
"type": "array",
"items": {
"type": "object",
"properties": {
"level": {
"type": "string",
"enum": [
"pass",
"info",
"warn",
"fail"
]
},
"message": {
"type": "string"
}
},
"required": [
"level",
"message"
]
}
},
"recommendations": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"status",
"score",
"maxScore",
"findings",
"recommendations"
]
},
"dkim": {
"type": "object",
"properties": {
"status": {
"type": "string",
"enum": [
"pass",
"warn",
"fail",
"info"
]
},
"score": {
"type": "number"
},
"maxScore": {
"type": "number"
},
"bonus": {
"type": "boolean",
"description": "true for MTA-STS / TLS-RPT (bonus points on top of the 100-point core)"
},
"record": {
"type": "string",
"description": "Published record (omitted when none was found)"
},
"findings": {
"type": "array",
"items": {
"type": "object",
"properties": {
"level": {
"type": "string",
"enum": [
"pass",
"info",
"warn",
"fail"
]
},
"message": {
"type": "string"
}
},
"required": [
"level",
"message"
]
}
},
"recommendations": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"status",
"score",
"maxScore",
"findings",
"recommendations"
]
},
"bimi": {
"type": "object",
"properties": {
"status": {
"type": "string",
"enum": [
"pass",
"warn",
"fail",
"info"
]
},
"score": {
"type": "number"
},
"maxScore": {
"type": "number"
},
"bonus": {
"type": "boolean",
"description": "true for MTA-STS / TLS-RPT (bonus points on top of the 100-point core)"
},
"record": {
"type": "string",
"description": "Published record (omitted when none was found)"
},
"findings": {
"type": "array",
"items": {
"type": "object",
"properties": {
"level": {
"type": "string",
"enum": [
"pass",
"info",
"warn",
"fail"
]
},
"message": {
"type": "string"
}
},
"required": [
"level",
"message"
]
}
},
"recommendations": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"status",
"score",
"maxScore",
"findings",
"recommendations"
]
},
"mtaSts": {
"type": "object",
"properties": {
"status": {
"type": "string",
"enum": [
"pass",
"warn",
"fail",
"info"
]
},
"score": {
"type": "number"
},
"maxScore": {
"type": "number"
},
"bonus": {
"type": "boolean",
"description": "true for MTA-STS / TLS-RPT (bonus points on top of the 100-point core)"
},
"record": {
"type": "string",
"description": "Published record (omitted when none was found)"
},
"findings": {
"type": "array",
"items": {
"type": "object",
"properties": {
"level": {
"type": "string",
"enum": [
"pass",
"info",
"warn",
"fail"
]
},
"message": {
"type": "string"
}
},
"required": [
"level",
"message"
]
}
},
"recommendations": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"status",
"score",
"maxScore",
"findings",
"recommendations"
]
},
"tlsRpt": {
"type": "object",
"properties": {
"status": {
"type": "string",
"enum": [
"pass",
"warn",
"fail",
"info"
]
},
"score": {
"type": "number"
},
"maxScore": {
"type": "number"
},
"bonus": {
"type": "boolean",
"description": "true for MTA-STS / TLS-RPT (bonus points on top of the 100-point core)"
},
"record": {
"type": "string",
"description": "Published record (omitted when none was found)"
},
"findings": {
"type": "array",
"items": {
"type": "object",
"properties": {
"level": {
"type": "string",
"enum": [
"pass",
"info",
"warn",
"fail"
]
},
"message": {
"type": "string"
}
},
"required": [
"level",
"message"
]
}
},
"recommendations": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"status",
"score",
"maxScore",
"findings",
"recommendations"
]
}
}
},
"notes": {
"type": "array",
"items": {
"type": "string"
}
},
"checkedAt": {
"type": "string"
},
"cached": {
"type": "boolean"
},
"tier": {
"type": "string",
"enum": [
"anonymous",
"free",
"pro"
]
},
"reportUrl": {
"type": "string"
},
"apiUrl": {
"type": "string"
},
"version": {
"type": "string"
},
"raw": {
"type": "object",
"description": "Full /api/check response (only when include_raw is true)"
}
},
"required": [
"domain",
"score",
"maxScore",
"grade",
"checks",
"reportUrl"
]
}Community
Nachweis