Skip to main content

MCP server exposing CertIndex's Certificate Transparency search tools to any MCP-compatible client.

Project description

certindex-mcp

CI PyPI License: MIT

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:

  • "List every TLS certificate ever issued for example.com."
  • "What subdomains has Let's Encrypt seen for mycompany.io?"
  • "Show me certs expiring in the next 30 days for api.mycompany.io."
  • "Pull the full PEM and CT log metadata for SHA-256 <fingerprint>."

Why this repo exists

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:

  1. You don't need a copy of the index — sign up for a free API key at https://ctindex.io and you're done.
  2. The package has a tiny dependency footprint (mcp, httpx, pydantic) — easy to audit, easy to vendor, no DB drivers.

Install

pip install git+https://github.com/certindex/certindex-mcp

Or with uvx for one-shot use:

uvx --from git+https://github.com/certindex/certindex-mcp certindex-mcp

(PyPI release coming soon — after that, plain pip install certindex-mcp / uvx certindex-mcp will work too.)

Quickstart — Claude Desktop

Add to ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows):

{
  "mcpServers": {
    "certindex": {
      "command": "uvx",
      "args": ["--from", "git+https://github.com/certindex/certindex-mcp", "certindex-mcp"],
      "env": {
        "CERTINDEX_API_KEY": "ctx_live_..."
      }
    }
  }
}

Restart Claude Desktop. The six CertIndex tools (search_certificates, get_certificate, get_domain_certificates, get_subdomains, get_latest_cert, get_expiring_certs) appear in the tool tray.

Quickstart — MCP Inspector

export CERTINDEX_API_KEY=ctx_live_...
npx @modelcontextprotocol/inspector uvx --from git+https://github.com/certindex/certindex-mcp certindex-mcp

Configuration

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)

Security

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.

Development

git clone https://github.com/certindex/certindex-mcp
cd certindex-mcp
pip install -e ".[dev]"
pytest

CI runs on Python 3.11 / 3.12 / 3.13.

License

MIT © CertIndex contributors.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

certindex_mcp-0.1.0.tar.gz (12.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

certindex_mcp-0.1.0-py3-none-any.whl (11.1 kB view details)

Uploaded Python 3

File details

Details for the file certindex_mcp-0.1.0.tar.gz.

File metadata

  • Download URL: certindex_mcp-0.1.0.tar.gz
  • Upload date:
  • Size: 12.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.14

File hashes

Hashes for certindex_mcp-0.1.0.tar.gz
Algorithm Hash digest
SHA256 9484761b7fcefe79ba5ac456210bfcaaea0ab97d84da788fa30ab4f55a08cd3d
MD5 11255f15a22d8de265301fa29411c055
BLAKE2b-256 15063e4ee0cb3f8a2024cfd8240040b36260616ede7c17b63067759f528a24d7

See more details on using hashes here.

File details

Details for the file certindex_mcp-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: certindex_mcp-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 11.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.14

File hashes

Hashes for certindex_mcp-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 6575bd848fd37ea9a8a5990e2e1afd56b71b9e452561d8d984650f304fe83dfd
MD5 0b0be2dfd7216c65f6c343b73753278e
BLAKE2b-256 bb084413f96e07191d7f099867fbeece309cc18c0ed1b594ef4b385d4bce1a10

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page