SettlementWitness について
SettlementWitnessは、タスク仕様に照らした確認結果をもとに、署名付きSettlement Attestation Receipt(SAR)を発行するリモート優先のアダプターです。レシートの発行と取得が必要なシステム向けであり、このプロジェクト自体は検証者ではありません。
主な機能
- 01タスクのチェックと出力を送信
- 02署名付きSARレシートの発行
- 03IDによるレシート取得
- 04ウォレット別レシートの閲覧
- 05検証用公開鍵の公開
活用シーン
- 01タスクチェック結果の記録
- 02発行済みレシートの取得
- 03ウォレットに関連する履歴の確認
設定
リモートサーバーはインストール不要です。クライアントを選んで設定をコピーするか、ワンクリックで導入できます。
https://defaultverifier.com/mcpclaude mcp add --transport http com-defaultverifier-settlement-witness https://defaultverifier.com/mcp{"mcpServers":{"com-defaultverifier-settlement-witness":{"type":"http","url":"https://defaultverifier.com/mcp"}}}Cursor で開く{"servers":{"com-defaultverifier-settlement-witness":{"type":"http","url":"https://defaultverifier.com/mcp"}}}VS Code で開く{"mcpServers":{"com-defaultverifier-settlement-witness":{"type":"http","url":"https://defaultverifier.com/mcp"}}}{"mcpServers":{"com-defaultverifier-settlement-witness":{"serverUrl":"https://defaultverifier.com/mcp"}}}コマンドはターミナルで実行し、JSON は各クライアントの MCP 設定に貼り付けて再起動します。認可が必要なサーバーは初回接続時にログインを求めます。
ツール
1| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| spec | object | はい | |
| output | object | はい | |
| task_id | string | はい |
詳細
DefaultVerifier — SAR 検証インフラストラクチャ
SAR(Settlement Attestation Receipt)は、AI エージェントが仕様に従ってタスクを完了したかどうかを証明する、暗号署名付きのレシートを生成する検証プロトコルです。
DefaultVerifier は、公開レシートレジストリ、メトリクス API、エクスプローラーを備えた、稼働中の SAR 検証実装です。
重要なら、検証しましょう。
アーキテクチャ
SAR のスタックと検証モデルについて理解しましょう。
レスポンス例
{ "witness": "SettlementWitness", "witness_version": "v0", "task_id": "example", "verifier_endpoint": "https://defaultverifier.com/verify", "witness_timestamp": "2026-01-01T00:00:00Z", "receipt_id": "...", "receipt": { "profile": "settlement-witness-verified-v0.2", "task_id_hash": "sha256:...", "verdict": "PASS", "reason_code": "CONDITION_SATISFIED", "ts": "...", "verifier_kid": "...", "counterparty": "0xABC...", "receipt_id": "sha256:...", "sig": "base64url:..." },
"_ext": { "agent_id": "0x123:demo" } }
注意事項
- レシートのペイロードは
settlement-witness-verified-v0.2プロファイルに基づいて発行されます。判定結果はPASS、FAIL、またはINDETERMINATEです。 counterpartyが存在する場合、署名の対象範囲とreceipt_idの導出に含まれます。- 廃止された署名鍵も、その鍵で過去に署名されたレシートの検証には引き続き有効です。レシート内の
verifier_kidは過去の証拠であり、書き換えられることはありません。 - 現在の署名鍵のライフサイクル(どの
kidが有効か、または廃止済みか)はhttps://defaultverifier.com/.well-known/sar-keys.jsonで公開されています。現在有効な鍵については、この README ではなく、このエンドポイントを信頼できる情報源として扱ってください。 - この動作は実装済みであり、稼働中のレシートエンドポイントと鍵エンドポイントを通じて公開検証できます。
SAR 互換性: この実装は SAR の検証セマンティクスに従っており、counterparty が存在する場合は署名対象のペイロードを拡張します。
デモ
約 2 分で、最初から最後までの検証を実行できます。 DEMO.md
クイックスタート
1. レシートを作成する
curl -X POST https://defaultverifier.com/settlement-witness
-H 'content-type: application/json'
-d '{
"task_id":"quickstart-001",
"spec":{"checks":[{"kind":"field_equals","inputs":{"output_path":"$.result"},"expected":"hello"}]},
"output":{"result":"hello"},
"counterparty":"0x1234567890abcdef1234567890abcdef12345678"
}'
2. レシートを取得する
curl https://defaultverifier.com/settlement-witness/receipt/<receipt_id>
注:返されたレシートの receipt_id を使用してください。
3. ローカルで検証する(Node)
cd examples/node-verify node verify.js receipt.json jwks.json
例
Node.js による検証例: examples/node-verify/
Python による検証例: examples/verify_receipt_python.py
使用方法: python3 examples/verify_receipt_python.py <receipt_id>
API エンドポイント
レシートの作成
POST /settlement-witness
タスクの検証リクエストを送信し、署名付き SAR レシートを返します。
レシートの取得
GET /settlement-witness/receipt/{receipt_id}
注:取得には、返されたレシートの receipt_id(sha256:...)を使用してください。
以前に発行されたレシートを返します。
ウォレットレシートエクスプローラー
GET /settlement-witness/receipts?wallet={address}
ウォレットアドレスに関連付けられた最近のレシートを返します。
公開エクスプローラーは次の場所で利用できます。
https://defaultverifier.com/explorer
このインターフェースでは、最近のレシートとウォレット別の配信履歴を閲覧できます。
公開検証鍵
https://defaultverifier.com/.well-known/jwks.json
代替(SAR プロトコルのリファレンス): https://defaultverifier.com/.well-known/sar-keys.json
レシートの Ed25519 署名の検証に使用します。
鍵レジストリ
https://defaultverifier.com/.well-known/sar-keys.json
verifier_kid が参照する検証者の公開鍵レジストリです。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。