certdesk
TLS certificate diagnostics: served-cert expiry, chain, security grade, error explainer, alerts
¿Debería usar esto?
Calidad y seguridad
Hallazgos (1)
- LOWen check_dns
Basado en el análisis automatizado de las definiciones de herramientas y el cumplimiento del protocolo.
Costo de contexto
Este es el número aproximado de tokens que se consumen cada vez que las herramientas del servidor se cargan en el contexto de un modelo. Los recuentos más altos reducen la atención disponible para otras tareas.
Instalar
Instalación con un clic
Agrega esto a tu archivo `claude_desktop_config.json`:
{
"mcpServers": {
"certdesk": {
"url": "https://certdesk.dev/mcp"
}
}
}Puntos de conexión remotos
https://certdesk.dev/mcpstreamable-httpQué puede hacer
Inventario de herramientas
Herramientas (7)
🟢check_certificate(domain)
Check one domain's TLS certificate in depth: expiry and days left for the certificate the server actually serves (measured from a Korean network, CT logs as fallback), whether a newer certificate exists in CT logs but is not deployed, live TLS verification from a global PoP and from Korea, certificate chain (leaf → intermediates → root), revocation, SAN list, and recent incident history of the issuing CA.
Esquema de entrada
{
"type": "object",
"properties": {
"domain": {
"type": "string",
"description": "Domain name, e.g. example.com"
}
},
"required": [
"domain"
]
}🟢check_expiry(domains)
Expiry summary for up to 5 domains at once: served certificate expiry and issuer, undeployed newer certificate in CT logs, domain registration expiry (RDAP), and alert lines (Korean). Use this for inventories and periodic checks.
Esquema de entrada
{
"type": "object",
"properties": {
"domains": {
"type": "array",
"items": {
"type": "string"
},
"minItems": 1,
"maxItems": 5,
"description": "Domain names"
}
},
"required": [
"domains"
]
}🟢check_security(domain)
Security posture check of a web server (no port scanning): TLS protocol support (legacy 1.0/1.1 detection via a Korean network probe), security headers (HSTS/CSP/X-Content-Type-Options/anti-clickjacking/Referrer-Policy), HTTP→HTTPS redirect, and certificate key/signature strength. Returns per-item pass/warn/fail and an overall grade.
Esquema de entrada
{
"type": "object",
"properties": {
"domain": {
"type": "string",
"description": "Domain name, e.g. example.com"
}
},
"required": [
"domain"
]
}🟢check_dns(domain)
DNS and hosting facts for a domain: nameservers with DNS provider, A/AAAA with IP owner (ASN), CNAME, MX, CAA (which CAs may issue), SPF/DMARC, DNSSEC, registrar and domain expiry (RDAP).
Esquema de entrada
{
"type": "object",
"properties": {
"domain": {
"type": "string",
"description": "Domain name, e.g. example.com"
}
},
"required": [
"domain"
]
}🟢check_dns_propagation(name, type)
Compare answers for one DNS record across resolvers — the authoritative nameservers, Korean ISPs (KT, SK Broadband, LG U+) and public resolvers (Cloudflare, Google, Quad9, OpenDNS) — measured from a Korean network. Use it to confirm a TXT/CNAME for certificate domain validation (e.g. _acme-challenge) has propagated.
Esquema de entrada
{
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "Record name, e.g. _acme-challenge.example.com"
},
"type": {
"type": "string",
"enum": [
"A",
"AAAA",
"CNAME",
"TXT",
"MX",
"NS",
"CAA",
"SOA"
]
}
},
"required": [
"name",
"type"
]
}🟢explain_tls_error(error)
Explain a TLS/SSL certificate error message from a browser, curl/OpenSSL, Java, Python, Node.js, Go or .NET: likely causes, fixes, and links to step-by-step guides (Korean). Works offline from a curated knowledge base.
Esquema de entrada
{
"type": "object",
"properties": {
"error": {
"type": "string",
"description": "Full error text, e.g. \"PKIX path building failed\" or \"NET::ERR_CERT_DATE_INVALID\""
}
},
"required": [
"error"
]
}⚪watch_expiry(email, domains)
Subscribe an email address to free daily expiry monitoring of up to 5 domains (certificate, domain registration and security grade) with email alerts. Double opt-in: a confirmation email is sent and monitoring starts only after the recipient clicks the link. Use only an address the user owns and explicitly asked to use.
Esquema de entrada
{
"type": "object",
"properties": {
"email": {
"type": "string",
"description": "Email address that will receive the alerts"
},
"domains": {
"type": "array",
"items": {
"type": "string"
},
"minItems": 1,
"maxItems": 5,
"description": "Domain names to monitor"
}
},
"required": [
"email",
"domains"
]
}Comunidad
Evidencia