{
  "_comment": "Single place for agent-facing wording (MCP tool descriptions, llms.txt opener, agent card, OpenAPI summaries, README opener). Edit here, then run: npm run build:site. Keep it factual: a receipt proves a signed file hash and the buyer's countersignature, not quality. Banned word list: scripts/check-copy.js. Never hint that Wayreceipt holds or moves money.",
  "name": "Wayreceipt",
  "tagline": "Proof of delivery for agent work. You sign on delivery, the buyer countersigns, and anyone can verify it free.",
  "server_description": "Wayreceipt: proof of delivery for agent work. The seller signs the deliverable hash (SHA-256) when work is delivered, and the buyer countersigns on arrival. If there is a delivery dispute later, the countersigned receipt shows what arrived and when. Anyone can check a receipt for free, with no sign-up.",
  "opener": "Got paid? Prove you delivered. Buyer disputes delivery? Check whether they countersigned the receipt. Wayreceipt is proof of delivery for agent work: a countersigned receipt shows a file with a given hash was handed over and that the buyer signed on receipt. It does not judge quality.",
  "limits": "A receipt proves the file arrived, not that it was any good. It shows that the seller signed a SHA-256 file hash and a delivery time, and (when countersigned) that the buyer signed the same receipt. Wayreceipt never holds or moves money between buyers and sellers.",
  "keywords": [
    "proof of delivery",
    "delivery verification",
    "delivery dispute",
    "countersigned receipt",
    "deliverable hash",
    "verifiable credential",
    "buyer countersignature",
    "unpaid work",
    "handoff",
    "did:key"
  ],
  "tools": {
    "verify_delivery_receipt": {
      "title": "Verify a delivery receipt",
      "description": "Proof of delivery check. Verifies a delivery receipt: the seller's signature over the deliverable hash (SHA-256) and, if present, the buyer's countersignature. Returns countersigned, seller-only or invalid, with reasons. Optionally compares a file's SHA-256 with the deliverable hash. Relevant to a delivery dispute or to checking a seller before payment. Free, no sign-up, no API key."
    },
    "lookup_delivery_receipt": {
      "title": "Look up a countersigned receipt",
      "description": "Finds countersigned receipts in the public log by receipt ID, deliverable hash (file SHA-256) or seller key. Shows a seller's published proof of delivery history. The log only holds receipts that a seller or buyer chose to publish, and a key is not a verified identity."
    },
    "log_stats": {
      "title": "Public log statistics",
      "description": "Counts from the public log of countersigned receipts: receipts, distinct seller keys, distinct buyer keys and distinct seller-buyer pairs. Receipts the Wayreceipt team made for testing and removed entries are not counted."
    },
    "publish_delivery_receipt": {
      "title": "Publish a countersigned receipt",
      "description": "Publishes a countersigned receipt (already signed by both seller and buyer) to the public log, as lasting proof of delivery for a deliverable hash. Signing happens on your side with the free library; this server never holds keys. The server re-verifies the receipt and rejects seller-only or invalid ones. Optional seller_link and buyer_link pages are checked for proof that they belong to the signing key (match, mismatch or unreachable). Published receipts are public."
    }
  },
  "skills": {
    "verify": "Proof of delivery check: verify that a delivery receipt is valid and countersigned by the buyer, and optionally compare a file's SHA-256 with the deliverable hash. Relevant to a delivery dispute.",
    "lookup": "Look up countersigned receipts in the public log by receipt ID, deliverable hash or seller key, to see a seller's published proof of delivery history.",
    "publish": "Publish a countersigned receipt (signed by both seller and buyer) to the public, append-only log. Signing happens on the caller's side."
  },
  "openapi": {
    "post_log": "Publish a countersigned receipt to the public log",
    "get_log": "List or search log entries (receipt_id, file_sha256, seller)",
    "get_log_id": "Get one log entry by sequence number or receipt ID",
    "get_log_jsonl": "Export the whole log as JSON Lines",
    "get_stats": "Counts of distinct seller keys, buyer keys and pairs",
    "post_report": "Report a log entry (reason code only, no free text)",
    "post_tombstone": "Remove a receipt body from the log, signed by its seller or buyer"
  },
  "hook": "Got paid? Prove you delivered. Buyer disputes delivery? Check whether they countersigned the receipt.",
  "registry_description": "Proof of delivery for agent work: verify countersigned receipts and deliverable hashes. Free.",
  "headline": "Proof of delivery for agent work.",
  "subhead": "You sign on delivery, the buyer countersigns, and anyone can verify it free.",
  "audience": "For agents that sell work to other agents, and marketplaces that settle disputes between them.",
  "lede": "An agent hands over a file. The seller signs its deliverable hash (SHA-256) and the time. The buyer countersigns when it arrives. Anyone can check both signatures later, in a browser, with no account.",
  "money": "Wayreceipt never holds or moves money between buyers and sellers.",
  "receipt_note": "It proves which exact bytes arrived, not whether the work was good.",
  "when_to_use": [
    "Use when you delivered work and need proof.",
    "Use when a buyer disputes delivery.",
    "Use before paying a seller to check their record."
  ],
  "when_not_to_use": [
    "Not for judging quality. It proves which exact bytes arrived, not whether the work was good.",
    "Not for payments. Wayreceipt never holds or moves money.",
    "Not for work with no deliverable file or bytes, such as a call or a live session. There is nothing to hash."
  ],
  "facts": [
    "Free to verify",
    "No sign-up",
    "No API key",
    "Never holds your keys or funds",
    "Open source (MIT)"
  ],
  "faq": [
    {
      "q": "How do I prove I delivered?",
      "a": "Hash the file you delivered and sign a receipt that names the buyer's key, with the library or the CLI (wayreceipt issue). Give the receipt to the buyer along with the file. When the buyer countersigns, you both hold a countersigned receipt that anyone can verify. The file itself is never sent to us."
    },
    {
      "q": "Does the buyer need an account?",
      "a": "No. The buyer needs a key pair, a did:key it makes offline with wayreceipt keygen or generateKey() in the library, or a did:web it controls. Nobody signs up anywhere: not to verify, not to countersign and not to publish to the log."
    },
    {
      "q": "A buyer says the file never arrived. What do I check?",
      "a": "Verify the receipt. If the state is countersigned, the buyer's key signed that this exact deliverable hash arrived. If it is seller-only, the buyer never confirmed arrival. To test a specific file, pass its SHA-256 and the check fails if it does not match the deliverable hash."
    },
    {
      "q": "How do I check a seller's record before paying?",
      "a": "Look up the seller's key in the public log, with lookup_delivery_receipt or GET /log?seller=<did>. You see each countersigned receipt that was published, with buyer keys and times. The log only has what sellers and buyers chose to publish, and one operator can make many keys, so read it as evidence, not a rating."
    },
    {
      "q": "Does verifying cost anything or need an API key?",
      "a": "No. The verify page, the library and the MCP verify tool are free and need no sign-up or API key. Checking a did:key receipt needs no network at all."
    },
    {
      "q": "Does Wayreceipt see my file or hold my keys?",
      "a": "No. Only the file's SHA-256 goes into a receipt, and signing happens on your side. The server never receives a private key."
    },
    {
      "q": "Does a receipt prove the work was good?",
      "a": "No. A receipt proves the file arrived, not that it was any good. It shows who delivered which exact bytes to whom, and when. Judging the work is up to the buyer."
    },
    {
      "q": "Does Wayreceipt handle payment?",
      "a": "No. Wayreceipt never holds or moves money between buyers and sellers. A receipt is not a contract, an invoice or a payment record."
    }
  ],
  "quickstart": {
    "mcp_cmd": "curl -s {{origin}}/examples/countersigned.json \\\n  | jq -c '{jsonrpc:\"2.0\",id:1,method:\"tools/call\",params:{name:\"verify_delivery_receipt\",arguments:{receipt:.}}}' \\\n  | curl -s {{origin}}/mcp -d @- \\\n      -H 'content-type: application/json' -H 'accept: application/json, text/event-stream' \\\n  | jq -c .result.structuredContent",
    "cli_setup": "curl -sO {{origin}}/src/wayreceipt-src.tar.gz && tar xzf wayreceipt-src.tar.gz && cd wayreceipt && npm ci --omit=dev",
    "cli_cmd": "curl -s {{origin}}/examples/countersigned.json | node bin/wayreceipt.js verify --stdin"
  }
}
