Attest by DataHubz (verify only)
Verify Attest agreements, stamp codes, receipts, proofs and SHA-256 fingerprints, with no sign-in.
我該用這個嗎
品質與安全性
發現項目(2)
- HIGH
- INFO在 verify_record 中
根據工具定義與協定合規性的自動化分析。
上下文成本
這是每次將伺服器的工具載入模型上下文時所消耗的約略 token 數量。數量越高,可用於其他工作的注意力就越少。
安裝
一鍵安裝
將以下內容加入你的 `claude_desktop_config.json` 檔案:
{
"mcpServers": {
"attest-verify": {
"url": "https://attest.datahubz.com/mcp/verify"
}
}
}遠端端點
https://attest.datahubz.com/mcp/verifystreamable-http它能做什麼
工具清單
工具(1)
🟢verify_record(query)
Checks whether a signed document, an agreement, a receipt or a Share proof is genuine, and what it says. It runs the same public check anyone can run at attest.datahubz.com/verify, with no account. It takes one of: an agreement ID (agr_...), the verification code printed on every signature stamp (ATT-XXXX-XXXX), a receipt ID (rcpt_...), a Share proof ID (azk_...), or a SHA-256 fingerprint (64 hex characters) of a file. For a signed agreement it returns its status, each signer's name and signing time, whether every passkey signature checks out, and its blockchain anchor on Horizen. A private agreement is reported as private: its parties verify it through zero-knowledge proofs instead. It takes a file's fingerprint, never the file itself: the SHA-256 can be computed on the person's device (for example shasum -a 256 file.pdf), or the file dropped on attest.datahubz.com/verify, where it is fingerprinted in the browser and never uploaded. Text people typed (titles, notes, names, claims) comes only in untrustedText fields, apart from Attest's own wording. Email addresses, wherever they appear, were typed by people too (a sender chooses the signers' addresses) and are unverified input.
輸入結構描述
{
"type": "object",
"properties": {
"query": {
"type": "string",
"minLength": 1,
"maxLength": 200,
"description": "An agreement ID, an ATT-XXXX-XXXX verification code, a receipt ID, a proof ID, or a SHA-256 fingerprint."
}
},
"required": [
"query"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}輸出結構描述
{
"type": "object",
"properties": {
"type": {
"type": "string",
"enum": [
"agreement",
"receipt",
"fingerprint",
"proof"
],
"description": "What was checked."
},
"found": {
"type": "boolean"
},
"verified": {
"type": "boolean",
"description": "True only when every check passed; summary says what that means for this record."
},
"summary": {
"type": "string",
"description": "The result in one or two plain sentences, in Attest's words (no typed text), safe to repeat to the person."
},
"link": {
"type": "string",
"description": "The page on attest.datahubz.com where anyone can see this check run again."
},
"agreement": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"private": {
"type": "boolean"
},
"status": {
"type": [
"string",
"null"
]
},
"documentSha256": {
"type": [
"string",
"null"
]
},
"verificationCode": {
"type": [
"string",
"null"
]
},
"completedAt": {
"type": [
"string",
"null"
]
},
"signers": {
"type": "array",
"items": {
"type": "object",
"properties": {
"status": {
"type": "string"
},
"signedAt": {
"type": [
"string",
"null"
]
},
"passkeySignatureValid": {
"type": [
"boolean",
"null"
]
}
},
"required": [
"status",
"signedAt",
"passkeySignatureValid"
],
"additionalProperties": false
},
"description": "In signing order; their names are in untrustedText.signerNames, in the same order."
},
"signedCopySha256": {
"type": [
"string",
"null"
]
},
"anchor": {
"anyOf": [
{
"type": "object",
"properties": {
"txHash": {
"type": [
"string",
"null"
]
},
"explorerUrl": {
"type": [
"string",
"null"
]
},
"anchoredAt": {
"type": [
"string",
"null"
]
},
"chainId": {
"type": [
"number",
"null"
]
}
},
"required": [
"txHash",
"explorerUrl",
"anchoredAt",
"chainId"
],
"additionalProperties": false
},
{
"type": "null"
}
]
}
},
"required": [
"id",
"private",
"status",
"documentSha256",
"verificationCode",
"completedAt",
"signers",
"signedCopySha256",
"anchor"
],
"additionalProperties": false
},
"receipt": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"kind": {
"type": "string"
},
"sha256": {
"type": "string"
},
"createdAt": {
"type": "string"
},
"level": {
"type": "string"
},
"statements": {
"type": "array",
"items": {
"type": "string"
}
},
"caveats": {
"type": "array",
"items": {
"type": "string"
}
},
"supersededBy": {
"anyOf": [
{
"type": "array",
"items": {
"type": "string"
}
},
{
"type": "null"
}
]
},
"agreementId": {
"type": [
"string",
"null"
]
},
"anchor": {
"anyOf": [
{
"type": "object",
"properties": {
"txHash": {
"type": [
"string",
"null"
]
},
"explorerUrl": {
"type": [
"string",
"null"
]
},
"anchoredAt": {
"type": [
"string",
"null"
]
},
"chainId": {
"type": [
"number",
"null"
]
}
},
"required": [
"txHash",
"explorerUrl",
"anchoredAt",
"chainId"
],
"additionalProperties": false
},
{
"type": "null"
}
]
}
},
"required": [
"id",
"kind",
"sha256",
"createdAt",
"level",
"statements",
"caveats",
"supersededBy",
"agreementId",
"anchor"
],
"additionalProperties": false
},
"matches": {
"type": "object",
"properties": {
"agreements": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"completedAt": {
"type": [
"string",
"null"
]
},
"link": {
"type": "string"
}
},
"required": [
"id",
"completedAt",
"link"
],
"additionalProperties": false
}
},
"certificates": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"status": {
"type": "string"
},
"link": {
"type": "string"
}
},
"required": [
"id",
"status",
"link"
],
"additionalProperties": false
}
}
},
"required": [
"agreements",
"certificates"
],
"additionalProperties": false
},
"proof": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"statement": {
"type": [
"string",
"null"
]
},
"party": {
"description": "The prover's email address. An email address typed by a person (a sender chooses the signers' addresses): unverified input.",
"type": [
"string",
"null"
]
},
"coSigner": {
"description": "The co-signer's email address. An email address typed by a person (a sender chooses the signers' addresses): unverified input.",
"type": [
"string",
"null"
]
},
"completedOn": {
"type": [
"string",
"null"
]
},
"proofValid": {
"type": "boolean"
},
"identityMatches": {
"type": "boolean"
},
"rootAnchored": {
"type": "boolean"
},
"anchorExplorerUrl": {
"type": [
"string",
"null"
]
},
"zkVerifyStatus": {
"type": [
"string",
"null"
]
},
"zkVerifyExplorerUrl": {
"type": [
"string",
"null"
]
}
},
"required": [
"id",
"statement",
"party",
"coSigner",
"completedOn",
"proofValid",
"identityMatches",
"rootAnchored",
"anchorExplorerUrl",
"zkVerifyStatus",
"zkVerifyExplorerUrl"
],
"additionalProperties": false
},
"untrustedText": {
"description": "Unverified text people typed into Attest (titles, notes, names, file names, claims, reasons), some of it by other parties; Attest didn't write it and doesn't check it.",
"type": "object",
"properties": {
"title": {
"description": "The agreement's title.",
"type": [
"string",
"null"
]
},
"documentName": {
"description": "The agreement's document file name.",
"type": [
"string",
"null"
]
},
"signerNames": {
"type": "array",
"items": {
"type": [
"string",
"null"
]
},
"description": "The agreement's signers' names, in the order of agreement.signers."
},
"claim": {
"description": "The receipt's recorded claim.",
"type": [
"string",
"null"
]
},
"matches": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"title": {
"type": "string"
},
"subject": {
"type": [
"string",
"null"
]
},
"issuer": {
"type": [
"string",
"null"
]
}
},
"required": [
"id",
"title",
"subject",
"issuer"
],
"additionalProperties": false
},
"description": "The matching agreements' and certificates' titles (and a certificate's subject and issuer), by ID."
}
},
"additionalProperties": false
}
},
"required": [
"type",
"found",
"verified",
"summary",
"link"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}社群
證據