CertIndex MCP

आधिकारिक

एकमात्र सर्टिफिकेट-ट्रांसपेरेंसी MCP सर्वर। 2.15B+ TLS प्रमाणपत्र खोजें, नए जारी होने के लिए डोमेन की निगरानी करें, वैश्विक CT फायरहोज़ को अपने एजेंट पर स्ट्रीम करें।

CertIndex MCP के साथ आप क्या कर सकते हैं?

  • सर्टिफिकेट ट्रांसपेरेंसी डेटा खोजें — search_certificates के माध्यम से किसी डोमेन, CN, जारीकर्ता, SAN, या वाइल्डकार्ड स्थिति के लिए अनुक्रमित TLS सर्टिफिकेट पूछें।
  • सर्टिफिकेट विवरण प्राप्त करें — get_certificate का उपयोग करके SHA-256 फिंगरप्रिंट द्वारा एकल सर्टिफिकेट का पूरा PEM और CT लॉग मेटाडेटा प्राप्त करें।
  • सबडोमेन सूचीबद्ध करें — get_subdomains के माध्यम से किसी डोमेन के लिए CT में देखे गए अद्वितीय सबडोमेन सूचीबद्ध करें, कर्सर-आधारित पेजिनेशन के साथ।
  • सर्टिफिकेट समाप्ति की निगरानी करें — get_expiring_certs का उपयोग करके किसी डोमेन के लिए निर्दिष्ट दिनों के भीतर समाप्त होने वाले सर्टिफिकेट खोजें।
  • वैश्विक स्कैन चलाएँ — submit_global_sweep के माध्यम से CN/SAN पैटर्न के लिए पूरे इंडेक्स में एसिंक्रोनस सबस्ट्रिंग स्कैन सबमिट करें, फिर get_sweep_results के साथ परिणाम प्राप्त करें।
  • API उपयोग जांचें — get_usage के साथ अपना टियर, वर्तमान उपयोग, शेष कोटा और अधिकार देखें।

दस्तावेज़

certindex-mcp

CI PyPI License: MIT

एक MCP (मॉडल कॉन्टेक्स्ट प्रोटोकॉल) सर्वर जो CertIndex के सर्टिफिकेट ट्रांसपेरेंसी खोज टूल्स को किसी भी MCP-संगत क्लाइंट (क्लॉड डेस्कटॉप, MCP इंस्पेक्टर, कंटिन्यू, आदि) के लिए उपलब्ध कराता है।

CertIndex सर्टिफिकेट्स को सीधे सार्वजनिक सर्टिफिकेट ट्रांसपेरेंसी लॉग्स से एकत्र करता है और उन्हें अपने स्वयं के इंडेक्स से परोसता है। ऐतिहासिक बैकफिल अभी भी प्रगति पर है, इसलिए परिणाम, विशेष रूप से पुराने सर्टिफिकेट्स के लिए, अधूरे हो सकते हैं। यह सर्वर सार्वजनिक CertIndex REST API को लपेटता है ताकि एक LLM ऐसे प्रश्न पूछ सके:

  • "उन TLS सर्टिफिकेट्स की सूची बनाएं जो CertIndex ने example.com के लिए अनुक्रमित किए हैं।"
  • "Let's Encrypt ने mycompany.io के लिए कौन से सबडोमेन देखे हैं?"
  • "मुझे api.mycompany.io के लिए अगले 30 दिनों में समाप्त होने वाले सर्टिफिकेट दिखाएं।"
  • "SHA-256 <fingerprint> के लिए पूरा PEM और CT लॉग मेटाडेटा खींचें।"

यह रिपॉजिटरी क्यों मौजूद है

CertIndex मोनोरिपो एक MCP सर्वर (https://api.ctindex.io/mcp पर माउंटेड) बंडल करता है जो सीधे प्रोडक्शन Postgres इंडेक्स से बात करता है। यह स्टैंडअलोन पैकेज एक पतला क्लाइंट-साइड शिम है: यह आपके एडिटर/एजेंट से MCP बोलता है और हर टूल कॉल को होस्टेड CertIndex REST API पर HTTPS के माध्यम से अग्रेषित करता है। दो परिणाम:

  1. आपको इंडेक्स की एक प्रति की आवश्यकता नहीं है — https://ctindex.io पर एक मुफ्त API कुंजी के लिए साइन अप करें और आपका काम हो गया।
  2. पैकेज का निर्भरता पदचिह्न बहुत छोटा है (mcp, httpx, pydantic) — ऑडिट करना आसान, वेंडर करना आसान, कोई DB ड्राइवर नहीं।

इंस्टॉल

संस्करण 0.3.0 MCP Python SDK 2.x (mcp>=2,<3) और Python 3.11+ का उपयोग करता है। कंसोल कमांड, पर्यावरण चर और दस टूल नाम अपरिवर्तित हैं। उन अनुप्रयोगों के लिए जिन्हें SDK 1.x बनाए रखना चाहिए, certindex-mcp==0.2.1 का उपयोग करें।

pip install certindex-mcp

या एक बार के उपयोग के लिए uvx के साथ:

uvx certindex-mcp

इसके बजाय स्रोत से नवीनतम विकास संस्करण स्थापित करने के लिए:

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

क्विकस्टार्ट — क्लॉड डेस्कटॉप

~/Library/Application Support/Claude/claude_desktop_config.json (macOS) या %APPDATA%\Claude\claude_desktop_config.json (Windows) में जोड़ें:

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

क्लॉड डेस्कटॉप को पुनः आरंभ करें। दस CertIndex टूल टूल ट्रे में दिखाई देंगे।

टूल्स

दस टूल्स, होस्टेड CertIndex MCP सर्वर से 1:1 मेल खाते हैं:

टूलयह क्या करता हैउल्लेखनीय पैरामीटर
search_certificatesडोमेन, CN, जारीकर्ता, SAN, वैधता, या वाइल्डकार्ड स्थिति द्वारा CT इंडेक्स खोजें।domain, cn, issuer, san, expired, is_wildcard, page/limit
get_certificateSHA-256 फिंगरप्रिंट द्वारा एक एकल सर्टिफिकेट प्राप्त करें।sha256, include_enrichment
get_domain_certificatesएक सटीक डोमेन के लिए अनुक्रमित सर्टिफिकेट।valid_only, include_enrichment, include_signals (भुगतान योजनाएं), page/limit
get_subdomainsCT में देखे गए अद्वितीय सबडोमेन की गणना करें।ऑफसेट (page/limit) या कीसेट कर्सर मोड — शुरू करने के लिए cursor="" पास करें, फिर प्रत्येक प्रतिक्रिया के next_cursor को वापस फीड करें
get_latest_certएक डोमेन के लिए सबसे हालिया वर्तमान-मान्य सर्टिफिकेट।include_enrichment, include_signals, include_precerts (प्री-सर्टिफिकेट्स को "नवीनतम" के लिए प्रतिस्पर्धा करने दें)
get_expiring_certsएक डोमेन के लिए days दिनों के भीतर समाप्त होने वाले सर्टिफिकेट।days
submit_global_sweepपूरे इंडेक्स का एक एसिंक्रोनस, डोमेन-रहित CN/SAN सबस्ट्रिंग सर्वेक्षण सबमिट करें (POST /v1/sweeps)।cn/san_contains (3+ वर्ण, कम से कम एक आवश्यक), issuer, is_wildcard, is_precert, expired, first_seen_*/not_after_* दिनांक सीमाएं, strict_attribution, resume_token (परिणाम सीमा से आगे निरंतरता)
get_sweep_resultsएक सर्वेक्षण कार्य को पोल करें और पूरा होने पर इसके परिणामों को पेजिनेट करें (GET /v1/sweeps/{id})।sweep_id, page/limit (1,000 तक)
get_usageकॉलर का स्तर, वर्तमान उपयोग, शेष कोटा, और अधिकार।—
get_historical_backfill_statusएक डोमेन के लिए भुगतान किए गए गहरे-इतिहास बैकफिल की जांच करें / शुरू करें।domain

क्विकस्टार्ट — MCP इंस्पेक्टर

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

कॉन्फ़िगरेशन

एनवी वेरिएबलडिफ़ॉल्टविवरण
CERTINDEX_API_KEY(आवश्यक)आपकी CertIndex API कुंजी। https://ctindex.io/app/keys पर एक बनाएं
CERTINDEX_BASE_URLhttps://api.ctindex.ioस्व-होस्टेड परिनियोजन / स्टेजिंग के लिए ओवरराइड
CERTINDEX_TIMEOUT30प्रति-अनुरोध HTTP टाइमआउट (सेकंड)

सुरक्षा

इनपुट सत्यापन, दर-सीमा हैंडलिंग, और हमारी आपूर्ति-श्रृंखला स्थिति SECURITY.md में प्रलेखित हैं। कृपया सार्वजनिक मुद्दे दर्ज करने के बजाय security@ctindex.io पर कमजोरियों की रिपोर्ट करें।

विकास

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

CI Python 3.11 / 3.12 / 3.13 पर SDK 2.0.0 और नवीनतम अनुमत 2.x रिलीज़ दोनों के साथ चलता है। यह निर्मित व्हील को एक नए वातावरण में भी स्थापित करता है और वास्तविक stdio पर प्रारंभिकरण, टूल गणना और कॉल का अभ्यास करता है। HTTP फिक्स्चर लूपबैक पर चलते हैं; परीक्षणों को प्रोडक्शन क्रेडेंशियल की आवश्यकता नहीं होती है।

लाइसेंस

MIT © CertIndex योगदानकर्ता।