stampthisfile
Timestamp files in Bitcoin (OpenTimestamps): send a hash, pay per hash with x402, get a proof.
我该使用它吗
质量与安全性
基于对工具定义和协议合规性的自动分析。
上下文开销
这是每次将服务器的工具加载到模型上下文窗口时所消耗的大致 token 数。数值越高,可用于其他任务的注意力就越少。
安装
一键安装
将以下内容添加到你的 `claude_desktop_config.json` 文件中:
{
"mcpServers": {
"mcp": {
"url": "https://stampthisfile.com/mcp"
}
}
}远程端点
https://stampthisfile.com/mcpstreamable-http它能做什么
工具清单
工具(4)
🟡stamp_hashes(hashes, webhook, payment)
Timestamp 1-100 SHA-256 hashes in Bitcoin. Paid per hash with x402: without a payment the tool returns an error whose structuredContent is an x402 PaymentRequired (x402Version 2, exact scheme, USDC on Base). Retry with the same arguments and the signed PaymentPayload in the request's _meta["x402/payment"] (the x402 MCP transport), or, if your client cannot set _meta, in the `payment` argument. The settlement comes back in _meta["x402/payment-response"]. Returns a batch with, per hash, the stamp id, a pending .ots proof (base64: save it now) and its ots_url, plus a receipt signed by us. Invalid input is never charged; retrying with the same payment and arguments returns the same answer without paying twice.
输入模式
{
"type": "object",
"properties": {
"hashes": {
"type": "array",
"items": {
"type": "string",
"description": "SHA-256 of the file, 64 hex characters"
},
"description": "1-100 SHA-256 hashes, each only once (sha256sum file.pdf, shasum -a 256 file.pdf)"
},
"webhook": {
"description": "Optional webhook; deliveries are always signed with our Ed25519 key (see https://stampthisfile.com/llms.txt)",
"type": "object",
"properties": {
"url": {
"type": "string",
"description": "Public https URL that gets one POST when the batch completes or fails"
},
"signing_key": {
"description": "Optional whsec_<base64> for a Standard Webhooks HMAC (v1) signature",
"type": "string"
}
},
"required": [
"url"
]
},
"payment": {
"description": "Only if your client cannot send _meta[\"x402/payment\"]: the x402 PaymentPayload, as an object or base64",
"anyOf": [
{
"type": "string"
},
{
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
}
]
}
},
"required": [
"hashes"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢get_stamp(id)
Status of one stamp: pending, complete (with the Bitcoin block height and time, and a statement of what it proves) or failed (not confirmed within 7 days). Free.
输入模式
{
"type": "object",
"properties": {
"id": {
"type": "string",
"minLength": 1,
"description": "The stamp id (stp_…), as returned by stamp_hashes"
}
},
"required": [
"id"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢get_proof(id)
The current .ots proof of one stamp, base64. Once get_stamp says complete, fetch it again: the complete proof carries the Bitcoin attestation and can be verified by anyone, without us. Save it next to the file as <file>.ots. Free.
输入模式
{
"type": "object",
"properties": {
"id": {
"type": "string",
"minLength": 1,
"description": "The stamp id (stp_…), as returned by stamp_hashes"
}
},
"required": [
"id"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢verify_proof(hash, ots)
Check an OpenTimestamps proof (from us or anyone) against the SHA-256 of a file. Returns valid with status complete (Bitcoin block and the time the file existed by), valid with status pending (not in Bitcoin yet), or invalid with a reason. A pending proof whose calendars have since committed it comes back complete with `upgraded: true` and the completed proof in `ots` (base64): save it in place of the pending one. Nothing is stored. Free.
输入模式
{
"type": "object",
"properties": {
"hash": {
"type": "string",
"description": "SHA-256 of the file, 64 hex characters"
},
"ots": {
"type": "string",
"description": "The .ots proof, base64"
}
},
"required": [
"hash",
"ots"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}社区
证据