This is the human-readable view of
https://quartermaster.surewhynot.app/llms.txt. AI agents and crawlers fetching this URL receive the raw markdown (the llms.txt convention) - try curl https://quartermaster.surewhynot.app/llms.txt.Quartermaster
Utility APIs for AI agents. Paid endpoints: per-call USDC via the x402 protocol (HTTP 402 flow). Free endpoints: open. No accounts or API keys. Machine-readable spec: https://quartermaster.surewhynot.app/openapi.json
Free endpoints
- GET https://quartermaster.surewhynot.app/v1/ip — caller IP + geo (country, city, ASN, timezone).
- GET https://quartermaster.surewhynot.app/v1/time?tz={iana} — current time: ISO, unix, UTC, optional local time for any IANA timezone.
- GET https://quartermaster.surewhynot.app/v1/uuid?count={1-100} — UUID v4 generation.
- GET https://quartermaster.surewhynot.app/v1/hash?data={text}&algo={sha1|sha256|sha384|sha512} — hex digest.
- GET https://quartermaster.surewhynot.app/v1/http-errors — index of documented HTTP status codes.
- GET https://quartermaster.surewhynot.app/health — health check.
Paid endpoints (USDC via x402)
- GET https://quartermaster.surewhynot.app/v1/route?q={goal} — START HERE: the x402 Router. Give a plain-English goal and it picks and runs the right tool (deterministic classifier first, AI fallback). One endpoint, any goal. $0.03/call. Free preview of which tool it would pick: https://quartermaster.surewhynot.app/v1/route/preview?q={goal}.
- GET https://quartermaster.surewhynot.app/v1/extract?url={url} — clean text extraction from a web page (JSON: title, description, markdown-ish text, word_count, truncated flag). $0.005/call.
- GET https://quartermaster.surewhynot.app/v1/meta?url={url} — page metadata: title, description, Open Graph, Twitter card, canonical, favicon, lang. $0.002/call.
- GET https://quartermaster.surewhynot.app/v1/qr?data={text}&format={svg|text}&ecc={L|M|Q|H} — QR code generation. $0.002/call.
- GET https://quartermaster.surewhynot.app/v1/dns?name={host}&type={A|AAAA|CNAME|MX|NS|TXT|SOA|SRV|CAA|PTR|DNSKEY|DS|HTTPS|SVCB} — DNS-over-HTTPS lookup. $0.001/call.
- GET https://quartermaster.surewhynot.app/v1/http-errors/{code} — structured HTTP status reference (meaning, causes, fixes, retryability). $0.001/call.
- GET https://quartermaster.surewhynot.app/v1/tx?hash={hash} — Base transaction status for settlement verification: success/reverted/pending, confirmations, gas used, explorer link. $0.002/call.
- GET https://quartermaster.surewhynot.app/v1/tx-decode?hash={hash} — decode a Base transaction's calldata into the function it called and its arguments (ERC-20 transfer/approve + EIP-3009 transferWithAuthorization). Recognizes x402 settlement transactions and formats USDC amounts; unknown selectors return raw words. $0.003/call.
- GET https://quartermaster.surewhynot.app/v1/balance?address={address}&token={usdc|contract} — ETH + USDC/ERC-20 balance on Base for pre-flight funding checks. $0.001/call.
- GET https://quartermaster.surewhynot.app/v1/gas — current Base gas prices + simple-transfer cost estimate. $0.001/call.
- GET https://quartermaster.surewhynot.app/v1/summarize?url={url}&length={short|medium|long} — AI summary of any public webpage (fetch + extract + summarize in one call). $0.01/call.
- GET https://quartermaster.surewhynot.app/v1/translate?text={text}&to={language} — AI translation, source language auto-detected. $0.005/call.
- GET https://quartermaster.surewhynot.app/v1/tldr?text={text}&length={short|medium|long} — AI summary of raw text passed in directly (text-in sibling of /v1/summarize). $0.005/call.
- GET https://quartermaster.surewhynot.app/v1/classify?text={text}&labels={a,b,c} — zero-shot classification into your own labels; the result is validated back into your label set for deterministic routing. $0.002/call.
- GET https://quartermaster.surewhynot.app/v1/unshorten?url={url} — expand a shortened/redirecting URL: follow the redirect chain server-side and return every hop plus the final destination, each hop SSRF-validated. $0.002/call.
- GET https://quartermaster.surewhynot.app/v1/http-check?url={url} — liveness/latency pre-flight: is the URL up, HTTP status and class, response latency in ms, whether it redirects and where, content-type and server. $0.001/call.
- GET https://quartermaster.surewhynot.app/v1/holiday?country={ISO2}&date={YYYY-MM-DD} — is a date a public holiday in a country? Returns the holiday name, its types, and the next upcoming holiday. $0.001/call.
- GET https://quartermaster.surewhynot.app/v1/regex?pattern={pattern}&text={text}&flags={gimsuy} — test a regex and return every match with numbered and named capture groups. $0.001/call.
- GET https://quartermaster.surewhynot.app/v1/random?min={min}&max={max}&count={n} — cryptographically-secure random integers (CSPRNG, unbiased). $0.001/call.
- GET https://quartermaster.surewhynot.app/v1/pick?options={a,b,c}&count={n}&unique={true|false} — pick one or several options at random from a list (CSPRNG). $0.001/call.
- GET https://quartermaster.surewhynot.app/v1/x402/inspect?url={url} — decode and lint any x402 endpoint's 402 challenge on Base (eip155:*) AND Solana (solana:*) rails (network, asset/mint, payTo validity per rail, feePayer, Bazaar discovery readiness). $0.002/call.
- GET https://quartermaster.surewhynot.app/v1/x402/simulate?url={url}&address={optional} — pre-flight a payment BEFORE spending: decode the challenge, report cost on every rail (Base and Solana) and the cheapest, and with an optional payer address verify the wallet can afford the call on Base. $0.003/call.
- GET https://quartermaster.surewhynot.app/v1/x402-audit?url={url} — WORKFLOW: full scored audit of an x402 endpoint across every payment rail it accepts, Base and Solana included (challenge + per-rail payment fields + privacy lint + Bazaar metadata + origin discovery surfaces) with 0-100 score, evidence, and recommended fixes. $0.01/call.
- GET https://quartermaster.surewhynot.app/v1/embed?text={text} — 1024-dim text embeddings for semantic search/RAG. $0.002/call.
- GET https://quartermaster.surewhynot.app/v1/extract-json?schema={jsonSchema}&url={url} — structured extraction: JSON Schema in, matching JSON out (url or text source). $0.005/call.
- GET https://quartermaster.surewhynot.app/v1/moderate?text={text} — content-safety classification (Llama Guard): safe flag + category codes. $0.002/call.
- GET https://quartermaster.surewhynot.app/v1/describe-image?url={imageUrl}&prompt={optional} — AI vision description incl. visible text. $0.005/call.
- GET https://quartermaster.surewhynot.app/v1/price?token={symbolOrAddress} — USD token prices (eth/btc/usdc/… or Base ERC-20 address). $0.001/call.
- GET https://quartermaster.surewhynot.app/v1/receipt?hash={txHashOrSignature} — settlement receipt for Base (0x tx hash) or Solana (base58 signature): timestamp, decoded transfers, explorer link. $0.002/call.
- GET https://quartermaster.surewhynot.app/v1/basename?name={name} — resolve .base.eth names to addresses. $0.001/call.
- GET https://quartermaster.surewhynot.app/v1/payment-proof?hash={txHashOrSignature}&payTo={optional}&amount={optional} — verify an x402 settlement on Base or Solana (onchain success + decoded USDC transfers + optional payTo/amount assertions; Base = event logs, Solana = net token-balance deltas). $0.003/call.
- GET https://quartermaster.surewhynot.app/v1/settlement-assurance?hash={txHashOrSignature}&payTo={optional}&amount={optional}&resource={optional} — premium composite for Base or Solana settlements: settlement proof + formatted receipt + optional endpoint audit rolled into one 0-100 assurance score and verdict. $0.03/call.
- GET https://quartermaster.surewhynot.app/v1/x402/discover?query={query}&limit={n} — search the Coinbase x402 Bazaar. $0.001/call.
- GET https://quartermaster.surewhynot.app/v1/x402/merchant?payTo={address} — list a merchant's Bazaar resources. $0.001/call.
- GET https://quartermaster.surewhynot.app/v1/x402/price-normalize?amount={amount}&decimals={n}&direction={to-human|to-atomic} — USDC unit conversion. $0.001/call.
- GET https://quartermaster.surewhynot.app/v1/x402/test-vector — FREE example x402 payment requirements, explained.
- GET https://quartermaster.surewhynot.app/v1/base/token-info?address={contract} — ERC-20 name/symbol/decimals/totalSupply on Base. $0.001/call.
- GET https://quartermaster.surewhynot.app/v1/base/allowance?owner={a}&spender={b}&token={usdc|contract} — ERC-20 allowance on Base. $0.001/call.
- GET https://quartermaster.surewhynot.app/v1/base/contract?address={address} — contract vs EOA on Base. $0.001/call.
- GET https://quartermaster.surewhynot.app/v1/base/usdc-transfers?address={address}&limit={n} — recent USDC transfers on Base. $0.002/call.
- GET https://quartermaster.surewhynot.app/v1/jwt-decode?token={jwt} — decode JWT header/payload (unverified). $0.001/call.
- GET https://quartermaster.surewhynot.app/v1/base64?op={encode|decode}&data={text} — base64. $0.001/call.
- GET https://quartermaster.surewhynot.app/v1/text-stats?text={text} — word/sentence counts, reading time, readability. $0.001/call.
- GET https://quartermaster.surewhynot.app/v1/diff?before={text}&after={text} — line-level text diff. $0.001/call.
MCP server
- Streamable-HTTP MCP endpoint: https://quartermaster.surewhynot.app/mcp (stateless). 49 tools covering the endpoints above plus x402 audit and settlement tools. Free tools (current_time, generate_uuid, hash_string, http_errors_list, x402_test_vector, quartermaster_info) work without payment; the rest attach x402 payment.
- Paid tool calls attach x402 payment via _meta["x402/payment"]; unpaid calls receive the payment requirements in the tool result. The @x402/mcp client handles the whole loop automatically.
Guides (human-readable how-tos)
- https://quartermaster.surewhynot.app/guides — index of x402 guides.
- https://quartermaster.surewhynot.app/guides/accept-solana-usdc-x402 — add a Solana USDC rail to your API with x402 (feePayer, ATA prerequisite, facilitator choice, multi-rail accepts).
- https://quartermaster.surewhynot.app/guides/base-vs-solana-x402 — honest Base vs Solana comparison for x402 sellers.
- https://quartermaster.surewhynot.app/guides/verify-solana-x402-settlement — verify a Solana x402 settlement (getTransaction, balance deltas, mint pinning, finality).
- https://quartermaster.surewhynot.app/guides/solana-x402-mistakes — common Solana x402 mistakes and fixes.
Payment flow (for buyers)
- Request a paid endpoint. Response is 402 with a PAYMENT-REQUIRED header (base64 JSON payment requirements: scheme "exact", USDC asset, network, payTo, amount). Quartermaster advertises TWO rails — USDC on Base (eip155:8453) and USDC on Solana (solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp) — as separate entries in the accepts[] array; your client pays on whichever rail its wallet supports.
- Sign the payment and retry with the PAYMENT-SIGNATURE header (x402 v2; the deprecated X-PAYMENT name still works for v1 clients). Client libraries (e.g. @x402/fetch with @x402/evm and/or @x402/svm for JS) handle the whole loop automatically.
- Cheapest paid endpoint to test with: https://quartermaster.surewhynot.app/v1/http-errors/429 (0.001 USDC).
- Full buyer quickstart, runnable example, and troubleshooting: https://quartermaster.surewhynot.app/buyers
- Standard MCP clients (Claude Desktop/Claude.ai) have no wallet and cannot pay paid tools; the free tools still work. To pay, use an x402-aware client with a funded Base or Solana USDC wallet.