关于 SettlementWitness
SettlementWitness 是一个远程优先的适配器,用于根据任务规格检查结果并签发已签名的 Settlement Attestation Receipt(SAR)。它适合需要签发和查询回执的系统;本项目本身不是验证器。
主要功能
- 01提交任务检查和输出
- 02签发已签名 SAR 回执
- 03按 ID 查询回执
- 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 Agent 是否按照其规范完成了任务。
DefaultVerifier 是一个在线 SAR 验证器实现,提供公开收据注册表、指标 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 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。