About
Domain Monitor — Model Context Protocol server
README
CI Glama Score smithery badge License: MIT Node.js
MCP (Model Context Protocol) server for domain monitoring. Check WHOIS registration expiry via RDAP and SSL/TLS certificate expiry via crt.sh Certificate Transparency logs — zero API keys, zero signup required.
Why
SSL certificates expire silently and take down production services. WHOIS registration expiry can lose your domain. This MCP server lets AI assistants (Claude Desktop, Claude Code, Cursor, Windsurf) proactively check domain health before it becomes an incident — no external monitoring dashboard needed, just ask your AI.
Tools
domain_check — Check Single Domain
Check WHOIS registration expiry and SSL/TLS certificate expiry for one domain. Fetches WHOIS data via RDAP (free, no auth) and SSL data from crt.sh Certificate Transparency logs (free, no auth). URLs with protocols are auto-normalized (e.g., https://www.example.com/path → example.com).
Input (domain_check):
| Parameter | Type | Required | Description |
|---|---|---|---|
domain |
string |
Yes | Domain or URL to check. Examples: "example.com", "https://www.github.com" |
Returns: JSON object with:
domain(string): Normalized domain namewhoisExpiry(string | null): WHOIS registration expiration date (ISO 8601)whoisDaysLeft(number | null): Days until expiry (negative = expired)sslExpiry(string | null): SSL/TLS certificate expiration date (ISO 8601)sslDaysLeft(number | null): Days until SSL expiry (negative = expired)sslIssuer(string | null): Certificate issuer organization name
LLM prompting hints: Use when the user asks a targeted question about one domain — "is example.com expired?", "check github.com SSL", "when does my domain expire?". Prefer domain_check over domain_check_batch when checking ≤3 domains for readability.
domain_check_batch — Check Multiple Domains
Check multiple domains in parallel (up to 50) with configurable warning thresholds. Each domain returns a severity classification. Returns a summary with counts by status plus per-domain details.
Input (domain_check_batch):
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
domains |
string[] |
Yes | — | List of domain names or URLs (1–50). URLs are auto-normalized. |
whoisWarnDays |
number |
No | 30 |
Days threshold for WHOIS warning (1–365) |
sslWarnDays |
number |
No | 14 |
Days threshold for SSL warning (1–365) |
Severity classification (per domain):
| Status | Meaning |
|---|---|
ok |
Both WHOIS and SSL have > threshold days remaining |
warning |
At least one expiry is within the warning threshold |
critical |
At least one expiry is within half the warning threshold |
expired |
At least one expiry date is in the past |
error |
Check failed for this domain (see error field) |
Returns: JSON object with total, ok, warning, critical, expired, error counts plus results array (each with domain, status, whoisExpiry, whoisDaysLeft, sslExpiry, sslDaysLeft, sslIssuer, error).
LLM prompting hints: Use for portfolio-wide health checks — "check all our domains", "find any domains expiring soon", "audit SSL certs across the company". Adjust whoisWarnDays and sslWarnDays based on user's renewal workflow (e.g., use sslWarnDays=30 for enterprises with slow certificate renewal processes).
## Usage
### Claude Code
```bash
claude mcp add domain-monitor -- npx domain-monitor-mcp-server
Claude Desktop
{
"mcpServers": {
"domain-monitor": {
"command": "npx",
"args": ["domain-monitor-mcp-server"]
}
}
}
Manual
npx domain-monitor-mcp-server
Data Sources
| Source | Protocol | Rate Limit | API Key |
|---|---|---|---|
| rdap.org | RDAP (WHOIS successor) | None documented | None |
| crt.sh | Certificate Transparency | ~10 req/s | None |
Install
npm install -g domain-monitor-mcp-server
Related
- Domain Expiry GitHub Action — Automated domain expiry monitoring as a CI workflow. Runs on schedule, checks domains, opens GitHub Issues on warnings. Zero config, zero API keys.
- Domain Monitor Client — Web dashboard for domain monitoring. Visual overview of all your domains' health status. Export to CSV.
Development
npm install
npm run dev # Watch mode
npm run build # Production build
Installing Domain Monitor
This server has no published package — it is built from source. Open the repository and follow its README.
▸ github.com/iPythoning/domain-monitor-mcp-serverFAQ
Is Domain Monitor MCP free?
Yes, Domain Monitor MCP is free — one-click install via Unyly at no cost.
Does Domain Monitor need an API key?
No, Domain Monitor runs without API keys or environment variables.
Is Domain Monitor hosted or self-hosted?
Self-hosted: the server runs locally on your machine via the install command above.
How do I install Domain Monitor in Claude Desktop, Claude Code or Cursor?
Open Domain Monitor on unyly.org, pick your client tab (Claude Desktop, Claude Code, Cursor) and press Install — the config is generated automatically, no JSON editing.
Related MCPs
GitHub
PRs, issues, code search, CI status
by GitHubFilesystem
Secure file operations with configurable access controls.
Memory
Knowledge graph-based persistent memory system.
Template MCP Server
A CLI tool to create a new Model Context Protocol server project with TypeScript support, dual transport options, and an extensible structure
by mcpdotdirectCompare Domain Monitor with
Not sure what to pick?
Find your stack in 60 seconds
Author?
Embed badge for your README
Browse similar
All development MCPs
