Verifiable Random paid clients
Free MCP tools need no wallet. These downloadable, auditable ESM clients keep the payer key in your local process and require an explicit local approval.
Paid HTTP client
Calls POST https://random.cipblujdea.com/v1/random.
mkdir verifiable-random-client && cd verifiable-random-client
npm init -y
npm install --save-exact mppx@0.9.3 viem@2.56.3
curl --fail --proto '=https' --tlsv1.2 https://random.cipblujdea.com/client/pay-client.mjs -o pay-client.mjs
https://random.cipblujdea.com/client/pay-client.mjs SHA-256: bcc175881e1651f44a801529bee08673218f99dfa8ea7f9cded1d6323e55002a
Paid MCP client
Calls random_int_signed through https://random.cipblujdea.com/mcp. It makes one signed push credential, saves recovery evidence before its one paid retry, and refuses a second payment challenge.
npm install --save-exact @modelcontextprotocol/sdk@1.30.0 mppx@0.9.3 viem@2.56.3
curl --fail --proto '=https' --tlsv1.2 https://random.cipblujdea.com/client/pay-mcp-client.mjs -o pay-mcp-client.mjs
https://random.cipblujdea.com/client/pay-mcp-client.mjs SHA-256: 6f585b3b4771540edb46ca25b1c4ec4b128109142a0e0af3f975546fe2b6ad32
Run either client with its matching service URL, a locally controlled PAYER_PRIVATE_KEY, and a UUID REQUEST_ID. It displays amount, token, recipient, and network, then requires yes or explicit APPROVE_PAYMENT=true. Mainnet also needs ALLOW_MAINNET=true.
Both print an owner-only recovery-record path before payment. To recover a lost response, run the same downloaded client with RECOVER=true RECOVERY_FILE=<record>; recovery submits saved evidence and never creates a new payment.
Neither client sends the payer key to the service or writes it to the recovery record.