mcpField
C
certindex-mcp

certindex-mcp

ローカル
ctindex.ioセキュリティ03 週間前に更新

certindex-mcp について

certindex-mcpは、CertIndexのホスト型Certificate Transparency APIへリクエストを転送する軽量なMCPサーバーです。証明書、サブドメイン、発行履歴、有効期限を扱うエージェントやクライアント向けで、過去のデータは不完全な場合があります。

主な機能

  1. 01ドメインや属性で証明書を検索
  2. 02SHA-256フィンガープリントで証明書を取得
  3. 03観測されたサブドメインを列挙
  4. 04有効期限が近い証明書を検索
  5. 05インデックス全体の検索を実行・取得
  6. 06利用状況とバックフィル状態を確認

活用シーン

  1. 01ドメインで索引化された証明書を確認
  2. 02CTログで観測されたサブドメインを列挙
  3. 03期限切れが近い証明書を特定
  4. 04証明書インデックスを広範囲に検索

MCP 対応

CertIndex REST APIの操作をMCPクライアント向けのツールとして公開し、HTTPSでホスト型サービスに転送します。APIキーが必要です。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"certindex-certindex": {
"command": "uvx",
"args": [
"certindex-mcp"
],
"env": {
"CERTINDEX_API_KEY": "<CERTINDEX_API_KEY>"
}
}
}
}
起動コマンドuvx certindex-mcp
設定が必要な環境変数
CERTINDEX_API_KEYシークレットCertIndex API key (free tier at https://ctindex.io)

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
pypicertindex-mcp0.2.0

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

certindex-mcp

CI PyPI License: MIT

CertIndex の Certificate Transparency 検索ツールを、MCP 対応クライアント(Claude Desktop、MCP Inspector、Continue など)で利用できるようにする MCP(Model Context Protocol)サーバーです。

CertIndex は、公開されている Certificate Transparency ログから証明書を直接取り込み、独自のインデックスで提供します。過去の データのバックフィルは現在も進行中のため、特に古い証明書の検索結果は 不完全な場合があります。この サーバーは公開されている CertIndex REST API をラップし、LLM が次のような質問をできるようにします。

  • 「CertIndex が example.com についてインデックス化した TLS 証明書を一覧表示してください。」
  • 「Let's Encrypt が mycompany.io について確認したサブドメインは何ですか?」
  • 「api.mycompany.io の、今後 30 日以内に有効期限が切れる証明書を表示してください。」
  • 「SHA-256 <fingerprint> の完全な PEM と CT ログのメタデータを取得してください。」

このリポジトリの目的

CertIndex のモノレポには、本番環境の Postgres インデックスに直接接続する MCP サーバー( https://api.ctindex.io/mcp で公開)が含まれています。このスタンドアロンパッケージは、薄いクライアント側の シムです。エディター/エージェントとは MCP で通信し、すべてのツール 呼び出しを HTTPS 経由でホストされている CertIndex REST API に転送します。これにより、次の 2 つのメリットがあります。

  1. インデックスのコピーは不要です。https://ctindex.io で無料の API キーに 登録すれば、すぐに使えます。
  2. パッケージの依存関係は非常に少なく(mcp、httpx、 pydantic)、監査やベンダーへの組み込みが容易で、DB ドライバーも不要です。

インストール

バージョン 0.3.0 は MCP Python SDK 2.x(mcp>=2,<3)と Python 3.11 以降を使用します。 コンソールコマンド、環境変数、10 個のツール名に変更はありません。 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

クイックスタート — Claude Desktop

~/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_..."
      }
    }
  }
}

Claude Desktop を再起動します。ツールトレイに CertIndex の 10 個のツールが表示されます。

ツール

ホスト型の CertIndex MCP サーバーに1対1で対応する10個のツールです。

ツール機能主なパラメーター
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_certsdays 日以内に有効期限が切れるドメインの証明書を取得します。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 Inspector

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 に記載されています。脆弱性は公開のIssueを 作成するのではなく、[email protected] に報告してください。

開発

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リリースを使ってテストを実行します。また、ビルドしたwheelを新しい環境に インストールし、実際のstdio経由で初期化、ツールの列挙、呼び出しをテストします。 HTTPフィクスチャはループバック上で実行されます。テストに本番用の認証情報は不要です。

ライセンス

MIT © CertIndexのコントリビューター。

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。