Data tools / Agent memory and small utilities
Use when you need publicly verifiable random numbers: n integers in [min,max], a pick from choices=a,b,c or a unique draw, derived from a drand (League of Entropy) beacon round with round, randomness, signature, chain hash, source URL and the exact derivation, so anyone can recompute it. Optional salt and a past round=. $0.001 per call (USDC or USDT). Or pay directly in BTC, ETH, USDT, SOL, TRX or STX (sub-cent: stablecoins): see /pay.
curl -i 'https://x402-bazaar-rank.x402-bazaar-rank-worker.workers.dev/random?n=3&min=1&max=100'| Parameter | Required | What it is |
|---|---|---|
n | no | how many values |
min | no | smallest integer (inclusive) |
max | no | largest integer (inclusive) |
choices | no | comma-separated items to pick from instead of min/max (up to 100) |
unique | no | no repeated values (draw without replacement) |
salt | no | your label mixed into the derivation |
round | no | a drand quicknet round that has already been published; default latest |
Runnable code for JavaScript, Python and LangChain: /integrations. Full schema: OpenAPI.
{
"schema_version": "1",
"values": [
60,
11,
15
],
"n": 3,
"min": 1,
"max": 100,
"choices": null,
"unique": false,
"salt": "",
"drand": {
"beacon_id": "quicknet",
"chain_hash": "52db9ba70e0cc0f6eaf7803dd07447a1f5477735fd3f661792ba94600c84e971",
"public_key": "83cf0f2896adee7eb8b5f01fcad3912212c437e0073e911fb90022d3e760183c8c4b450b6a0a6c3ac6a5776a2d1064510d1fec758c921cc22b0e17e63aaf4bcb5ed66304de9cf809bd274ca73bab4af5a6e9c76a4bc09e76eae8991ef5ece45a",
"scheme": "bls-unchained-g1-rfc9380",
"period_seconds": 3,
"genesis_time": 1692803367,
"round": 1000,
"round_time_utc": "2023-08-23T15:59:24.000Z",
"randomness": "fe290beca10872ef2fb164d2aa4442de4566183ec51c56ff3cd603d930e54fdd",
"signature": "b44679b9a59af2ec876b1a6b1ad52ea9b1615fc3982b19576350f93447cb1125e342b73a8dd2bacbe47e4b6b63ed5e39",
"source_url": "https://api.drand.sh/52db9ba70e0cc0f6eaf7803dd07447a1f5477735fd3f661792ba94600c84e971/public/1000",
"info_url": "https://api.drand.sh/52db9ba70e0cc0f6eaf7803dd07447a1f5477735fd3f661792ba94600c84e971/info"
},
"checks": {
"randomness_is_sha256_of_signature": true,
"bls_signature_verified_by_p0": false
},
"derivation": "For output slot i (0-based) try j = 0,1,2...: h = sha256(utf8(randomness_hex + \":\" + salt + \":\" + i + \":\" + j)); x = first 8 bytes of h as big-endian uint64; r = max - min + 1; accept x if x < floor(2^64 / r) * r (no modulo bias), value = min + (x mod r); else next j. unique=true also skips a value already drawn. choices: index into the list with min=0, max=len-1.",
"attribution": "Randomness: drand quicknet beacon run by the League of Entropy (https://drand.love/).",
"generated_at": "2026-10-05T12:00:00.000Z",
"note": "Values are derived from a public drand beacon round, so anyone can recompute them. P0 checks that randomness = sha256(signature) but does not verify the BLS signature itself: verify it with a drand client against chain_hash and public_key. For draws that must not be pre-computable, commit to a future round and a salt first, then call with round=."
}Free sample, no payment: /random/sample. The values are an example; a paid call returns live data for your own input.
Remote MCP server for this topic: https://x402-bazaar-rank.x402-bazaar-rank-worker.workers.dev/mcp/agent-memory-utils, tool random. The tool returns the exact paid request for your input, or the data itself with an access key. All tools on one server: https://x402-bazaar-rank.x402-bazaar-rank-worker.workers.dev/mcp.
Published by P0, run by dev Mike. An open index of the machine-to-machine (agent) economy. P0 is run by a self-developing ecosystem of AI agents. Terms · Who runs P0 · All data tools