mcpField
E
Eclipse Benchkit

Eclipse Benchkit

ローカル
eclipsebazaar.com開発ツール04 日前に更新

Eclipse Benchkit について

Eclipse Benchkit は、ベンダーがローカルで fixture MCP サーバーに宣言済みチェックを実行し、Assay 形式のスコアカードを出力する Python SDK です。別の検証ハーネスがランダムサンプルを再実行して副署付きレシートを発行します。認証範囲はローカル fixture に限られます。

主な機能

  1. 01fixture サーバーで宣言済みチェックを実行
  2. 02封印済み Assay 形式スコアカードを出力
  3. 03チェックにスポットチェック用フックを内蔵
  4. 04検証ハーネスでランダムサンプルを再実行
  5. 05副署付き検証レシートを発行

活用シーン

  1. 01fixture サーバーのチェック実行からスコアカードを作成
  2. 02封印済みスコアカードを抽査して偽造結果を検出
  3. 03不一致または検証不能なサンプルチェックを確認

MCP 対応

stdio JSON-RPC で MCP サーバーとして動作します。ベンダー用と検証者用の各サーフェスに、チェック記録、スコアカードの封印・取得、スポットチェック要求、レシート取得のツールを公開します。

設定

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

インストール方法は未掲載です

このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。

リポジトリ

ツール

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

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

詳細

Eclipse Benchkit

ベンダーが自社の MCP サーバーに対して実行する無料のローカル SDK です。ベンダーが宣言したチェック一式を実行し、Assay スコアカード形式(チェック ID、判定結果、証拠ハッシュ、環境フィンガープリント)でスコアカードを出力します。各チェックの実行時には、チェック項目ごとにスポットチェック用フックが組み込まれます。別個のローカルハーネスは、封印済みスコアカードからランダムなサンプルを抽出して該当チェックを再実行し、カウンター署名付きの検証レシートを発行します。

スコープラベル:LOCAL / fixture。 v0.1 は、fixture ベンダーサーバーに対してのみ実行されています。稼働中のベンダーサーバーへの接続、ネットワーク呼び出し、レジストリはありません。

ステータス:v0.1.1 — 認定済み(local/fixture)。 Verity による再ベンチマーク(2026-10-27):v0.1.0 のすべての FAIL 欠陥(D1/D2 ブロッカー、M1–M4 重大、m1–m5 軽微)を修正し、独立して検証しました。ビルダースイートは 27/27 です。新たに記録された 2 件の軽微な問題(N1 フェンスエンコーディングの境界ケース、N2 シードコミットメントの来歴)は、次の修正サイクルで対応するものであり、このスコープの認定条件には影響しません。この認定の対象は、fixture ベンダーサーバーに対する SDK、エミッター、スポットチェックハーネスに厳密に限定されます。スポットチェックレシートが示すのは、封印済みスコアカード 1 件のサンプルに関するものに限られ、ハウスベンチの判定でも、ベンダーサーバーの認定でもありません。**

v0.1.1 プロトコルノート

  • コミット後にサンプリングし、予測不能にする(D1)。 検証者ノンスは、keys/ に保持された秘密シードと新たな CSPRNG エントロピーを使って検証側で生成され、封印が検証された後にサンプルマニフェストでのみ公開されます。新たな抽選の入力として呼び出し元から渡すことはできず、スコアカードハッシュや公開状態から事前計算することもできません。指定されたノンスは、すでに発行済みの (scorecard_hash, verifier_nonce) ペアの再生キーとしてのみ受け付けられ、記録済みのレシートを返します(§3.3)。新規のノンスが指定された場合は、該当する名称付きエラーで拒否されます。
  • 検証者トークン(§5、M4)。 検証者の動詞には検証者トークンが必要です。トークンには keys/verifier-token.fixture.key にある fixture トークンを使用し(chmod 600、gitignore 対象)、呼び出しごとに verifier_token として渡すか、検証者プロセスで BENCHKIT_VERIFIER_TOKEN を通じて指定します。
  • 設定フェンス(§7.3、F-B14)。 ローカル以外のエンドポイント、稼働用キー文字列、ベンダーノンス設定、test 以外の value_class、または Assay/Cupel の価格もしくはチェックアウト設定がある場合、起動時に CONFIG_FENCE_REFUSED:<class> を出して即時終了します。稼働用 URL のサーバー記述子は、benchkit_run_begin で同じ名称付きコードを返して拒否されます。
  • 認証済みアーティファクト(M1/M2)。 封印署名は、ヘッドハッシュ、すべての件数、フォーマットバージョンを対象とします。再計算時にはレシート署名、結果レコードのチェーン、再実行チェーンのヘッドを検証し、余分な結果があれば拒否します。
  • キー(§7.4、M3)。 すべての fixture キーは keys/ にローカルで生成されます(chmod 600、gitignore 対象、fixture のラベル付き)。ソース内にキー素材は存在しません。

新しい仕組み

ベンダー実行のスコアカードにはスポットチェック用のフックが埋め込まれています。ハウスベンチはランダムなサンプルを再実行するため、捏造されたセルフベンチを統計的に検出できます。プロトコルはコミットしてからサンプリングする方式です。サンプルが作成される前にスコアカードを封印(ハッシュチェーン化し、ベンダーが署名)し、サンプルのシードは scorecard_hash ‖ verifier_nonce から導出します。この nonce は封印の提示後にのみ開示されます。レシートには計算式が明記されます。サンプルサイズ k、捏造された割合 f の場合、検出確率は 1 − (1−f)^k です。デフォルトは k = 30(フック付きチェックがそれより少ない場合は全件)で、f ≥ 0.10 なら検出確率は ≥ 95% です。フックのないチェックにはスコアカード上で HOOKLESS と明記し、すべてのサンプルおよび検証済みの主張の対象外とします。サンプリングされた非決定的なチェック、またはシークレットが必要なチェックは UNVERIFIABLE とし、暗黙の合格とはしません。レシートの判定結果は VERIFIED_SAMPLE · DIVERGENT(不一致のチェック ID を明記) · UNVERIFIABLE です。

すべてのベンダースコアカードには、表面に ベンダー実行/セルフベンチ と明記します。スポットチェックレシートが示すのは、フック付きの N 件のチェックからランダムに選んだ k 件を再実行して一致した(または不一致だった――発行された判定結果に準拠)ことだけです。割合 ≥ f の捏造を確率 p で検出できる性能を備えています。これはハウスベンチの判定でも、ベンダーのサーバーの認証でもなく、セルフベンチをそのようなものに格上げすることもありません。検証不可能なスコアカードは DOWNGRADED_EXPORT としてのみエクスポートされ、事後に格上げされることはありません。

形式の帰属は正確かつ最小限にします。スコアカードは Assay スコアカード形式で出力されます。Eclipse Assay と Eclipse Cupel は内部ツールです。Benchkit はそれらのスコアカード形式を仕様としてのみ使用し、それらの製品の提供形態、価格、ライセンス、購入手段は含みません。完全なベンチは有料のサービス契約です。受付は既存の窓口を通じて行います。Benchkit には受付フォーム、契約手続きのチェックアウト、サービス料金はありません。Benchkit 自体の課金計測ポイントは、検証完了ごとに 1 件の spotcheck_verification_completed イベントです(1 検証あたり $10 相当の計測記録のみで、このビルドには課金手段はありません)。キーは (scorecard_hash, verifier_nonce) で、冪等な再試行によって二重計上されないようにします。

ツール

ベンダー用サーフェス(デフォルトは ECLIPSE_BENCHKIT_SURFACE=vendor): benchkit_run_begin、benchkit_check_record、 benchkit_scorecard_seal、benchkit_scorecard_get、 benchkit_export_get。

検証者用サーフェス(ECLIPSE_BENCHKIT_SURFACE=verifier): spotcheck_request、spotcheck_run、spotcheck_receipt_get、 spotcheck_recompute、anomaly_queue_read。

サーフェスは相互に分離されています。サーフェスをまたぐ呼び出しには、無意味な名前の場合と同一の「不明なツール」という拒否応答が返されます。封印前のサンプル取得、ベンダーが指定した nonce、判定後の同一 nonce による再抽選は、名前を明示して拒否され、異常キューに記録されます。

フィクスチャ

fixtures/battery-*.json — フィクスチャ用ベンダーサーバーを対象とする決定論的なフィクスチャバッテリー:正常(40 件のチェック)、小規模(8 件)、正直な失敗(実際に失敗した 3 件のチェックを失敗として封印)、フックなし(12 件中 5 件)、不安定(非決定的なチェックが 1 件)、シークレットが必要なフック(実行不能なフックが 1 件)、捏造(40 件の申告済みチェックのうち 12 件が捏造されており、fabricated-source サーバーを使用――決定的なフィクスチャであり、シードに基づくスポットチェックで少なくとも 1 件を検出する必要があります)。

実行

python3 server.py            # MCP over stdio JSON-RPC
python3 -m unittest discover -s tests -v

状態は data/ または BENCHKIT_DATA_DIR に保存されます。Python 3 のみを使用し、標準ライブラリだけで動作します。

Cyan Eclipse Technologies 提供 — https://cetech.ai

MIT License · Copyright © 2026 Cyan Eclipse Technologies LLC · cetech.ai

コメント

MCP は初めてですか?

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

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