Skip to main content

TLS Radar

com.tlsradar/tlsradarVersion 0.5.1

SSL/TLS scanning, free Let's Encrypt issuance, and certificate-expiry monitoring.

Status

Responds504 msAnswered our handshake without sign-in.

Registry data may be out of date

We could not refresh it, so this page shows the last copy.
Last checked
Nov 14, 2026, 14:19 UTC
Latency
504 ms
Remotes responding
1 of 1
Sign-in
No sign-in
Hosting
Hosted outside the EU (detected)
Registry data as of
Nov 14, 2026, 22:14 UTC

Data from the official MCP Registry, checked by run.zero. How we check

Connect

Streamable HTTP
https://tlsradar.com/api/v1/mcpResponds504 ms
No sign-in

Claude Code

claude mcp add --transport http tlsradar https://tlsradar.com/api/v1/mcp

Claude Desktop and claude.ai

Settings > Connectors > Add custom connector
Name: tlsradar
Remote MCP server URL: https://tlsradar.com/api/v1/mcp

Cursor

{
  "mcpServers": {
    "tlsradar": {
      "url": "https://tlsradar.com/api/v1/mcp"
    }
  }
}

VS Code

code --add-mcp '{"name":"tlsradar","type":"http","url":"https://tlsradar.com/api/v1/mcp"}'

Built your own server? run.zero hosts MCP servers on European infrastructure.

Host your own MCP server on run.zero

Tools

16 tools

Tools of TLS Radar
Read-only
Idempotent
Open world
add_monitorAdd a domain to ongoing certificate monitoring with expiry alerts. Requires authentication (the user runs /mcp once). If the plan's monitor limit is reached, the response's structuredContent carries a limit-reached payload - when relaying it, LEAD with `recommended_upgrade` (it carries the plan name and price), mention `also_available` tiers in a single closing line, and offer removing an existing monitor as the free alternative. Don't dump a full tier comparison; that's choice paralysis at the moment of action. Not declaredNoYesNo
add_monitorsAdd multiple domains to monitoring in one call. Returns a per-domain status so the caller can show partial-success outcomes. Honors the same plan-limit checks as add_monitor.Not declaredNoYesNo
check_certificate_propagationCheck whether the DNS TXT records for a certificate order have propagated (Cloudflare/Google/Quad9). Step 2 of issuance - poll until all_found is true, then call finalize_certificate. Returns per-record resolver results.Not declaredYesYesYes
create_certificateStart issuing a FREE Let's Encrypt certificate for a domain (no account required). Step 1 of 3. Lifetime is Let's Encrypt's default: 90 days today, 64 days from 2027-02-10; read the real expiry from the issued certificate. Pick a validation method with `challenge`: "dns-01" (default; publish a TXT record; covers apex + www) or "http-01" (serve a file over HTTP on port 80; issues the exact domain only). dns-01 with a DNS-provider API token is the most automatable; http-01 suits a server you control on port 80. Returns an order_id plus either dns_records (dns-01) or http_files (http-01) to put in place. Next: poll `check_certificate_propagation` until all_found, then call `finalize_certificate`. Strongly prefer the CSR path at finalize (the private key never leaves the user's machine). Issuing automatically offers the user ongoing monitoring by email once it completes - don't add a monitor manually afterward. NoNoNoYes
export_monitorsDump the user's monitors as a JSON structure suitable for backup, migration, or infrastructure-as-code workflows. Tokens and PII are NEVER included - only domain configuration.Not declaredYesYesNo
finalize_certificateFinalize and issue a certificate order in one call: validates the DNS challenges, waits for Let's Encrypt, and returns the issued cert. Step 3 of issuance - call after check_certificate_propagation reports all_found. STRONGLY PREFER passing csr_pem (generate the key + CSR locally with openssl so the private key never leaves the machine). Returns leaf_pem/chain_pem/fullchain_pem. If you must, pass a passphrase instead to get a PKCS#12 bundle - but a CSR is safer. If it replies "still validating", DNS hasn't fully propagated: re-check check_certificate_propagation and call again. Needs a locally-generated CSR (csr_pem) - requires a local shell with openssl. On a surface without one (e.g. a Claude.ai custom connector) this can't complete; it returns guidance to finish in Claude Code/Cowork or the web form. Scanning and monitoring work everywhere. On success the structuredContent carries a `handoff` object - relay `handoff.message` to the user and do NOT separately call add_monitor; the cert→monitoring handoff is automatic and server-side. Not declaredNoYesYes
get_accountReturn the current user's plan, limits, and usage so the client can render upgrade nudges proactively.Not declaredYesYesNo
get_certificate_statusReturn the current state of a certificate order (dns_pending, validating, ready, completed, failed) and per-authorization Let's Encrypt statuses. Use it to resume an interrupted issuance.Not declaredYesYesYes
get_scan_historyReturn recent scan results for a domain the user monitors. Useful for spotting issuer changes, grade drops, or vulnerability appearances over time.Not declaredYesYesNo
import_monitorsCreate monitors from a JSON structure (typically produced by `export`). Skips domains the user is already monitoring; honors the plan's domain limit. Returns a per-domain status.Not declaredNoYesNo
invite_team_memberInvite a user to a team by email. Defaults to the user's current team. Honors the plan's seat limit (returns the same upgrade payload as add_monitor when the cap is hit).Not declaredNoNoNo
list_expiring_certificatesReturn monitored certificates expiring within N days. Defaults to 30. If the response's structuredContent includes a `nudge` object, the user is watching enough soon-to-expire certs to benefit from a higher tier - mention it casually ONCE (lead with `nudge.recommended_upgrade`); skip it if it doesn't fit. Not declaredYesYesNo
list_monitorsList all certificates currently being monitored across the user's teams. If the response's structuredContent includes a `nudge` object, the user is at their monitor cap - surface it casually ONCE (lead with `nudge.recommended_upgrade`, mention `nudge.also_available` in one closing line); don't force it if it doesn't fit the conversation. Not declaredYesYesNo
remove_monitorStop monitoring a domain. Accepts the domain name or the host_id returned by list_monitors.YesNoYesNo
renew_certificateRenew a certificate by cloning a recent order (requires the original order_id; Beacon purges orders after ~24h). Returns a new order_id and fresh DNS TXT records - then poll check_certificate_propagation and call finalize_certificate. If you don't have an order_id (the usual case at renewal time), call create_certificate for the domain instead; that IS the renewal.Not declaredNoNoYes
scan_domainRun a free, anonymous SSL/TLS scan against a hostname and return certificate details. No account required.Not declaredYesNot declaredYes

Details

Registry status
Active
Published
Jun 15, 2026
Updated
Jun 15, 2026
Categories (suggested)
SecuritySuggested categories are assigned automatically from the registry text and may be wrong. Verified operators can correct them.
GDPR
Not declared

Are you the operator? Claim this listing