CertIndex MCP

chính thức

Máy chủ MCP duy nhất về tính minh bạch chứng chỉ. Tìm kiếm hơn 2,15 tỷ chứng chỉ TLS, giám sát tên miền để phát hành mới, truyền trực tiếp luồng dữ liệu CT toàn cầu đến tác nhân của bạn.

GitHubDùng thử MCP nàyĐược tài trợ

Bạn có thể làm gì với CertIndex MCP?

  • Tìm kiếm chứng chỉ theo tên miền hoặc tổ chức phát hành — Tìm chứng chỉ TLS khớp với tên miền, CN, tổ chức phát hành hoặc mẫu SAN bằng search_certificates.
  • Truy xuất chứng chỉ theo dấu vân tay — Lấy dữ liệu PEM đầy đủ và nhật ký CT metadata cho một dấu vân tay SHA-256 cụ thể bằng get_certificate.
  • Liệt kê tất cả chứng chỉ cho một tên miền — Lấy mọi chứng chỉ từng được cấp cho một tên miền chính xác qua get_domain_certificates, tùy chọn lọc chỉ lấy chứng chỉ còn hiệu lực.
  • Liệt kê các tên miền phụ xuất hiện trong nhật ký CT — Khám phá các tên miền phụ duy nhất được quan sát cho một tên miền bằng cách sử dụng phân trang dựa trên con trỏ trong get_subdomains.
  • Tìm chứng chỉ sắp hết hạn — Xác định chứng chỉ cho một tên miền hết hạn trong vòng một số ngày nhất định bằng get_expiring_certs.
  • Chạy quét chỉ mục toàn cầu — Gửi tìm kiếm chuỗi con không đồng bộ trên toàn bộ kho dữ liệu CT theo CN hoặc SAN bằng submit_global_sweep, sau đó truy vấn kết quả bằng get_sweep_results.

Tài liệu

certindex-mcp

CI PyPI License: MIT

Một máy chủ MCP (Model Context Protocol) cho phép truy cập các công cụ tìm kiếm Certificate Transparency của CertIndex tới bất kỳ client tương thích MCP nào (Claude Desktop, MCP Inspector, Continue, v.v.).

CertIndex lập chỉ mục toàn bộ kho dữ liệu CT công khai (~5 triệu chứng chỉ, tăng trưởng ~100 nghìn/ngày). Gói này bao bọc API REST công khai của CertIndex để một LLM có thể đặt các câu hỏi như:

  • "Liệt kê mọi chứng chỉ TLS từng được cấp cho example.com."
  • "Let's Encrypt đã thấy những tên miền phụ nào cho mycompany.io?"
  • "Hiển thị các chứng chỉ sắp hết hạn trong 30 ngày tới cho api.mycompany.io."
  • "Lấy toàn bộ PEM và siêu dữ liệu nhật ký CT cho SHA-256 <fingerprint>."

Tại sao repo này tồn tại

Monorepo CertIndex đi kèm một máy chủ MCP (được gắn tại https://api.ctindex.io/mcp) giao tiếp trực tiếp với chỉ mục Postgres production. Gói độc lập này là một lớp phía client mỏng: nó giao tiếp MCP với trình soạn thảo / tác nhân của bạn và chuyển tiếp mọi lệnh gọi công cụ tới API REST được lưu trữ của CertIndex qua HTTPS. Hai hệ quả:

  1. Bạn không cần một bản sao của chỉ mục — đăng ký khóa API miễn phí tại https://ctindex.io là xong.
  2. Gói có phụ thuộc nhỏ gọn (mcp, httpx, pydantic) — dễ kiểm tra, dễ đóng gói, không cần trình điều khiển DB.

Cài đặt

pip install certindex-mcp

Hoặc với uvx để dùng một lần:

uvx certindex-mcp

Để cài đặt phiên bản phát triển mới nhất từ mã nguồn thay vào đó:

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

Bắt đầu nhanh — Claude Desktop

Thêm vào ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) hoặc %APPDATA%\Claude\claude_desktop_config.json (Windows):

{
  "mcpServers": {
    "certindex": {
      "command": "uvx",
      "args": ["certindex-mcp"],
      "env": {
        "CERTINDEX_API_KEY": "ctx_live_..."
      }
    }
  }
}

Khởi động lại Claude Desktop. Mười công cụ CertIndex sẽ xuất hiện trong khay công cụ.

Công cụ

Mười công cụ, khớp 1:1 với máy chủ MCP được lưu trữ của CertIndex:

Công cụChức năngTham số đáng chú ý
search_certificatesTìm kiếm chỉ mục CT theo tên miền, CN, tổ chức phát hành, SAN, thời hạn hiệu lực, hoặc trạng thái wildcard.domain, cn, issuer, san, expired, is_wildcard, page/limit
get_certificateLấy một chứng chỉ duy nhất bằng dấu vân tay SHA-256.sha256, include_enrichment
get_domain_certificatesMọi chứng chỉ từng được cấp cho một tên miền chính xác.valid_only, include_enrichment, include_signals (gói trả phí), page/limit
get_subdomainsLiệt kê các tên miền phụ duy nhất được thấy trong CT.Offset (page/limit) hoặc chế độ con trỏ keyset — truyền cursor="" để bắt đầu, sau đó cung cấp lại next_cursor của mỗi phản hồi
get_latest_certChứng chỉ hiện đang hợp lệ gần đây nhất cho một tên miền.include_enrichment, include_signals, include_precerts (cho phép tiền chứng chỉ cạnh tranh vị trí "mới nhất")
get_expiring_certsCác chứng chỉ cho một tên miền hết hạn trong vòng days ngày.days
submit_global_sweepGửi một yêu cầu quét không đồng bộ, không tên miền, theo chuỗi con CN/SAN trên toàn bộ chỉ mục (POST /v1/sweeps).cn/san_contains (3+ ký tự, ít nhất một trường bắt buộc), issuer, is_wildcard, is_precert, expired, first_seen_*/not_after_* giới hạn ngày, strict_attribution, resume_token (tiếp tục vượt quá giới hạn kết quả)
get_sweep_resultsThăm dò một tác vụ quét và phân trang kết quả khi hoàn tất (GET /v1/sweeps/{id}).sweep_id, page/limit (tối đa 1.000)
get_usageBậc của người gọi, mức sử dụng hiện tại, hạn ngạch còn lại, và các quyền lợi.
get_historical_backfill_statusKiểm tra / bắt đầu quá trình bổ sung lịch sử sâu trả phí cho một tên miền.domain

Bắt đầu nhanh — MCP Inspector

export CERTINDEX_API_KEY=ctx_live_...
npx @modelcontextprotocol/inspector uvx certindex-mcp

Cấu hình

Biến môi trườngMặc địnhMô tả
CERTINDEX_API_KEY(bắt buộc)Khóa API CertIndex của bạn. Tạo một khóa tại https://ctindex.io/app/keys
CERTINDEX_BASE_URLhttps://api.ctindex.ioGhi đè cho các triển khai tự lưu trữ / staging
CERTINDEX_TIMEOUT30Thời gian chờ HTTP cho mỗi yêu cầu (giây)

Bảo mật

Xác thực đầu vào, xử lý giới hạn tốc độ, và tình trạng chuỗi cung ứng của chúng tôi được ghi lại trong SECURITY.md. Vui lòng báo cáo các lỗ hổng tới security@ctindex.io thay vì nộp các vấn đề công khai.

Phát triển

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

CI chạy trên Python 3.11 / 3.12 / 3.13.

Giấy phép

MIT © Các đóng góp viên CertIndex.