Certificate Transparency search for AI agents: certs, subdomains, issuance history, expiry.
Copy the AI prompt to install this server into Claude Code, Cursor, or another agent β or use 1-click editor setup below.
π‘ Paste the JSON block into your client's configuration file under mcpServers, then restart the application.
An MCP (Model Context Protocol) server that exposes CertIndex's Certificate Transparency search tools to any MCP-compatible client (Claude Desktop, the MCP Inspector, Continue, etc.).
CertIndex indexes the full public CT corpus (~5 M certificates, growing ~100 k/day). This server wraps the public CertIndex REST API so an LLM can ask questions like:
example.com."mycompany.io?"api.mycompany.io."<fingerprint>."The CertIndex monorepo bundles an MCP server (mounted at
https://api.ctindex.io/mcp) that talks directly to the production
Postgres index. This standalone package is a thin client-side
shim: it speaks MCP to your editor / agent and forwards every tool
call to the hosted CertIndex REST API over HTTPS. Two consequences:
mcp, httpx,
pydantic) β easy to audit, easy to vendor, no DB drivers.Or with uvx for one-shot use:
To install the latest development version from source instead:
Add to ~/Library/Application Support/Claude/claude_desktop_config.json
(macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows):
Restart Claude Desktop. The ten CertIndex tools appear in the tool tray.
Ten tools, matching the hosted CertIndex MCP server 1:1:
| Tool | What it does | Notable parameters |
|---|---|---|
search_certificates | Search the CT index by domain, CN, issuer, SAN, validity, or wildcard status. | domain, cn, issuer, san, expired, is_wildcard, page/limit |
get_certificate | Fetch a single cert by SHA-256 fingerprint. | sha256, include_enrichment |
get_domain_certificates | Every cert ever issued for an exact domain. | valid_only, include_enrichment, include_signals (paid plans), page/limit |
get_subdomains | Enumerate unique subdomains seen in CT. | Offset (page/limit) or keyset cursor mode β pass cursor="" to start, then feed back each response's next_cursor |
get_latest_cert | Most recent currently-valid cert for a domain. | include_enrichment, include_signals, include_precerts (let precertificates compete for "latest") |
get_expiring_certs | Certs for a domain expiring within days days. | days |
submit_global_sweep | Submit an async, domain-less CN/SAN substring sweep of the entire index (POST /v1/sweeps). | cn/san_contains (3+ chars, at least one required), issuer, is_wildcard, is_precert, expired, first_seen_*/not_after_* date bounds, strict_attribution, resume_token (continuation past the result cap) |
get_sweep_results | Poll a sweep job and paginate its results when done (GET /v1/sweeps/{id}). | sweep_id, page/limit (up to 1,000) |
get_usage | Caller's tier, current usage, remaining quota, and entitlements. | β |
get_historical_backfill_status | Check / start the paid deep-history backfill for a domain. | domain |
| Env var | Default | Description |
|---|---|---|
CERTINDEX_API_KEY | (required) | Your CertIndex API key. Mint one at https://ctindex.io/app/keys |
CERTINDEX_BASE_URL | https://api.ctindex.io | Override for self-hosted deployments / staging |
CERTINDEX_TIMEOUT | 30 | Per-request HTTP timeout (seconds) |
Input validation, rate-limit handling, and our supply-chain posture are documented in SECURITY.md. Please report vulnerabilities to security@ctindex.io rather than filing public issues.
CI runs on Python 3.11 / 3.12 / 3.13.
MIT Β© CertIndex contributors.
No reviews yet β be the first to share how this listing worked for you.
Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.
[](https://allmcps.com/mcp/certindex-mcp)<a href="https://allmcps.com/mcp/certindex-mcp"><img src="https://allmcps.com/api/badge/certindex-mcp?style=directory" alt="Certindex MCP on AllMCPs" /></a>