Issue signed receipts for AI agent actions; verify any receipt offline - free, no account (stdio).
Copy the AI prompt to install this server into Claude Code, Cursor, or another agent β or use 1-click editor setup below.
π‘ Paste into ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows)
Issue and verify signed receipts for agent actions from any MCP-speaking agent. PCRZERO adjudicates an attestation document against a policy and hands back a cryptographically signed receipt pairΒ β durable, independently checkable proof that this decision was made, by these keys, over this document. Anyone can verify a receipt, offline, without an account and without trustingΒ us.
api.pcrzero.comAdd the server to your MCP client. The package runs over stdioΒ β your agent host launches it; nothing listens on a port.
Claude Code
Claude Desktop / any JSON-configured MCP client
No key yet? Leave env out. verify_receipt and get_keyset work with no API key
and no accountΒ β only the paid tool needs one.
Requires NodeΒ 22 or later.
| Tool | Cost | What it does |
|---|---|---|
issue_receipt | Metered β bills one receipt_verifications unit per call | Adjudicates an attestation document against a policy on the live API and returns the verdict with a signed receipt pair. A fail verdict bills exactly like a pass: you are paying for the adjudication, not for the answer you wanted. The only tool here that spends. |
verify_receipt | Free, and it stays free | Checks a PCRZERO receipt pair against the signing keyset: whether the signature holds, and whether the receipt says what it appears to say. Offline by defaultΒ β supply keyset and this call touches the network not at all; omit it and the server fetches the public keyset once. keyset_source in the result tells you which happened, every time. |
get_keyset | Free | Returns the current PCRZERO signing keysetΒ β key ids, public halves, each keyβs status. Public and unauthenticated. The same document an outside party fetches to check a receipt without trusting us. |
Current pricing is published at pcrzero.comΒ β it is deliberately not baked into this README or into any tool description.
PCRZERO_API_KEY in the serverβs environment, via your MCP client configuration. It is
sent as Authorization: Bearer on issue_receipt calls and used nowhere else: the key
never appears in tool results, error text, or logsΒ β not even redacted. With no key
configured, issue_receipt refuses cleanly (auth_missing) and the two free tools keep
working.
API errors pass through verbatim (code, message, request_id). This server never
rewrites, retries, or softens a billing refusal.
A PCRZERO receipt is checkable by anyone holding the public keysetΒ β including people
who are not our customers and never will be. Call get_keyset once (or fetch
https://api.pcrzero.com/v1/keys yourself), pin it, and verify_receipt runs entirely
offline from then on. If we disappeared tomorrow, every receipt ever issued would still
verify.
stdio only. No listen socket, no state, no receipt storage, no key-management toolsΒ β key management is a human path at pcrzero.com by design.
ProprietaryΒ β Β© Scytalex LLC. The receipt verification path is free to use for anyone, forever.
Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.
[](https://allmcps.com/mcp/mcp-124)<a href="https://allmcps.com/mcp/mcp-124"><img src="https://allmcps.com/api/badge/mcp-124?style=directory" alt="Mcp on AllMCPs" /></a>