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.

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

  • Tìm kiếm dữ liệu chứng chỉ minh bạch — Yêu cầu các chứng chỉ TLS được lập chỉ mục cho một tên miền, CN, nhà phát hành, SAN hoặc trạng thái ký tự đại diện thông qua search_certificates.
  • Truy xuất chi tiết chứng chỉ — Lấy toàn bộ PEM của một chứng chỉ và siêu dữ liệu nhật ký CT bằng dấu vân tay SHA-256 thông qua get_certificate.
  • Liệt kê các tên miền phụ — Liệt kê các tên miền phụ duy nhất xuất hiện trong CT cho một tên miền, với phân trang dựa trên con trỏ thông qua get_subdomains.
  • Theo dõi hết hạn chứng chỉ — Tìm các chứng chỉ hết hạn trong một số ngày cụ thể cho một tên miền bằng get_expiring_certs.
  • Chạy quét toàn cầu — Gửi các lần quét chuỗi con không đồng bộ trên toàn bộ chỉ mục cho các mẫu CN/SAN thông qua submit_global_sweep, sau đó truy vấn kết quả bằng get_sweep_results.
  • Kiểm tra mức sử dụng API — Xem lại hạng của bạn, mức sử dụng hiện tại, hạn mức còn lại và các quyền lợi bằng get_usage.

Tài liệu

certindex-mcp

CI PyPI License: MIT

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

CertIndex nạp chứng chỉ trực tiếp từ các nhật ký Certificate Transparency công khai và phục vụ chúng từ chỉ mục riêng của mình. Việc bổ sung dữ liệu lịch sử vẫn đang được tiến hành, vì vậy kết quả, đặc biệt là cho các chứng chỉ cũ hơn, có thể không đầy đủ. Máy chủ này bao bọc REST API công khai của CertIndex để một LLM có thể đặt các câu hỏi như:

  • "Liệt kê các chứng chỉ TLS mà CertIndex đã lập chỉ mục cho example.com."
  • "Let's Encrypt đã thấy những tên miền phụ nào cho mycompany.io?"
  • "Hiển thị cho tôi các chứng chỉ 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 kho lưu trữ này tồn tại

Monorepo CertIndex đóng gói 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 sản xuất. Gói độc lập này là một lớp trung gian mỏng phía máy khách: nó nói chuyện 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ời gọi công cụ đến REST API của CertIndex được lưu trữ qua HTTPS. Hai hệ quả:

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

Cài đặt

Phiên bản 0.3.0 sử dụng MCP Python SDK 2.x (mcp>=2,<3) và Python 3.11+. Lệnh console, biến môi trường và mười tên công cụ không thay đổi. Đối với các ứng dụng phải giữ SDK 1.x, hãy sử dụng certindex-mcp==0.2.1.

pip install certindex-mcp

Hoặc với uvx để sử 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 CertIndex được lưu trữ:

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, nhà phát hành, SAN, thời hạn hiệu lực hoặc trạng thái ký tự đại diện.domain, cn, issuer, san, expired, is_wildcard, page/limit
get_certificateLấy một chứng chỉ duy nhất theo dấu vân tay SHA-256.sha256, include_enrichment
get_domain_certificatesCác chứng chỉ được lập chỉ mục 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 đó phản hồi lại next_cursor của mỗi phản hồi
get_latest_certChứng chỉ hợp lệ hiện tại gần đây nhất cho một tên miền.include_enrichment, include_signals, include_precerts (cho phép chứng chỉ sơ bộ cạnh tranh cho "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 lần quét không đồng bộ, không theo 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 ký tự 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 qua giới hạn kết quả)
get_sweep_resultsThăm dò một công việc quét và phân trang kết quả của nó khi hoàn tất (GET /v1/sweeps/{id}).sweep_id, page/limit (tối đa 1.000)
get_usageHạng của người gọi, mức sử dụng hiện tại, hạn mức còn lại và các quyền.—
get_historical_backfill_statusKiểm tra / bắt đầu quá trình bổ sung dữ liệu 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ữ / giai đoạn thử nghiệm
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ư thế chuỗi cung ứng của chúng tôi được ghi lại trong SECURITY.md. Vui lòng báo cáo lỗ hổng tới security@ctindex.io thay vì mở 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 với cả SDK 2.0.0 và bản phát hành 2.x mới nhất được phép. Nó cũng cài đặt wheel đã xây dựng vào một môi trường mới và thực hiện khởi tạo, liệt kê công cụ và các lời gọi qua stdio thực. Các fixture HTTP chạy trên loopback; các bài kiểm tra không yêu cầu thông tin xác thực sản xuất.

Giấy phép

MIT © Những người đóng góp CertIndex.