flat-rate-llm — pay-per-call data APIs for AI agents
https://flat-rate-llm.kikoribera03.workers.dev/mcp63 keyless pay-per-call endpoints for AI agents, paid in USDC on Base over x402: on-chain reads (balances, transactions, token info, token safety, Uniswap V3 price), network checks (RDAP whois, DNS, TLS certificates, IP/ASN, blocklists), email verdict with a 0-100 score and the evidence behind it, OFAC SDN screening, ECB FX rates, weather and time zones. Every answer carries a `next` array with the follow-up call prefilled. $0.001–$0.01 per call. No account, no API key.
Paid verification
How it worksNo sponsored paid call yet.
Pay this endpoint once from your own wallet (Base USDC, up to $1.00) and we call it and record what came back. Your wallet pays the listed recipient directly; Agent Tools never holds funds. Sponsored checks prove delivery; they do not count as demand.
Quality grade
How grading works- ✓ Answers a real HTTP 402 challenge
- ✓ Publishes a /.well-known/x402 descriptor
- ✓ Payment address on record
- ✓ Settlement network declared
- ✓ Price declared
x402 readiness
Readiness is how fully this listing follows its protocol and how it behaved in our probes over 30 days. It is shown for reference and does not move it in search. Search order and leaderboards use the separate quality grade (here B+, 84.0/100), which weighs availability, payability and on-chain demand. How the two differ
| Valid payment requirements | 10/10 | Payment requirements carry a payee, a mainnet network and a price. |
| Live 402 challenge | 20/25 | Endpoint reachable; its 402 challenge was seen earlier (425 ms). |
| x402 version | n/a | x402 version not observed yet. |
| Signed descriptor | n/a | No x402 standard defines a signed descriptor. |
| Uptime (30 days) | 15/15 | 32/32 probes succeeded over 30 days (100%). |
| Resource declaration | 10/10 | Declares 78 paid resource(s). |
| Verified identity | 5/10 | Publisher descriptor (/.well-known/x402 or OpenAPI) on record; claim this listing to verify domain control. |
| Freshness + modern flags | 5/5 | seen in a source within 7 days; declares x402. |
| Security declaration | n/a | Payment is the access control for an x402 resource. |
Compared with peers
Against 10,060 reachable x402 APIs in our daily snapshot (2026-11-12 01:39 UTC). Display only; it does not change search order.
- Readiness
- Higher than 75% of peers
- This listing 87 · peer median 78
- Latency
- Faster than 25% of peers
- This listing 425 ms · peer median 205 ms
Where it loses the most points, and how to win them back
- Live 402 challenge −5
— Answer the paid path with a valid 402 challenge.
Now: Endpoint reachable; its 402 challenge was seen earlier (425 ms).
- Verified identity −5
— Claim the listing and prove control of its domain.
Now: Publisher descriptor (/.well-known/x402 or OpenAPI) on record; claim this listing to verify domain control.
Paid endpoints
78 resource(s) advertised by this origin. Each price below is that resource's own x402 price; the headline price is the range across them.
https://flat-rate-llm.kikoribera03.workers.dev/v1/do
Use when an agent has a job to get done and does not know which tool or in what order: describe it in plain words and it happens in ONE paid call: picks from 71 capabilities - transcription, translation, documents, images, web, on-chain, domains, IPs, weather, FX - fills their parameters and chains
https://flat-rate-llm.kikoribera03.workers.dev/v1/evm/balance
Use when an agent has to decide whether a wallet can pay before building a transaction: the native coin balance (ETH, MATIC...) of any address on Base, Ethereum, Polygon, Arbitrum or Optimism, returned both as wei (exact integer string) and as ether, with the chain it was read on. Do not use for tok
https://flat-rate-llm.kikoribera03.workers.dev/v1/evm/erc20-balance
Use when an agent must confirm a wallet holds enough of a token before it swaps, pays or settles: the ERC-20 balance of any address for any token (USDC, USDT, DAI or any other), returned raw (exact integer string) with its decimals, the formatted amount and the symbol, so no rounding is forced on yo
https://flat-rate-llm.kikoribera03.workers.dev/v1/evm/token-info
Use when an agent has a bare token address and must label or format it before showing or computing anything: name, symbol, decimals and total supply of any ERC-20 in one call. decimals is what stops an amount being shown a million times too big. Do not use for a holder's balance (/v1/evm/erc20-balan
https://flat-rate-llm.kikoribera03.workers.dev/v1/evm/token-price
Use when an agent must put a number on a token before trading or reporting, and be able to defend it: spot price read straight from the deepest Uniswap V3 pool against USDC, on Base, Ethereum, Polygon, Arbitrum or Optimism. Returns the pool address, fee tier, liquidity, sqrtPriceX96, tick and block,
https://flat-rate-llm.kikoribera03.workers.dev/v1/evm/gas
Use when an agent is about to send a transaction and needs to know what it costs right now: the chain's current gas price in wei and gwei plus the cost of a plain transfer in ether. It is the price now, not a forecast. Do not use for EIP-1559 fee caps (/v1/evm/fees returns the base fee with maxFeePe
https://flat-rate-llm.kikoribera03.workers.dev/v1/evm/block
Use when an agent has to decide whether what it just read on-chain is fresh, or whether a node is behind: the latest block height, its timestamp and how many seconds old the chain head is. Do not use for one transaction's outcome (/v1/evm/tx) or to compare several chains at once (/v1/evm/chains does
https://flat-rate-llm.kikoribera03.workers.dev/v1/evm/tx
Use when an agent has sent a transaction and must decide what to do next: the transaction by hash merged with its receipt in one call, so you get sender, recipient, value, gas used, success or revert, and the block it landed in without chaining two RPC calls. Do not use to find out whether it has be
https://flat-rate-llm.kikoribera03.workers.dev/v1/evm/nonce
Use when an agent signs transactions one after another and must not collide with one already in flight: the confirmed nonce, the pending nonce (the one to use while an earlier transaction is still unmined) and whether the address is a contract. Do not use to check the transaction is affordable (/v1/
https://flat-rate-llm.kikoribera03.workers.dev/v1/evm/is-contract
Use when an agent is about to send funds and must decide whether the destination is a plain wallet or a contract: returns isContract and the size of the deployed bytecode. A wallet where you expected a contract, or the reverse, is the cheapest mistake to catch before signing. Do not use to judge whe
https://flat-rate-llm.kikoribera03.workers.dev/v1/evm/chains
Use when an agent has to pick a chain that is actually answering before it commits to one: every supported chain in a single call, each with its chain id, block height, how many seconds stale its head is, and ok. Do not use for one chain on its own (/v1/evm/block) or for what a transaction will cost
https://flat-rate-llm.kikoribera03.workers.dev/v1/evm/call
Use when an agent needs a contract value that none of the typed routes covers: it runs any read-only call with your own calldata on five chains and returns the raw 32-byte result plus asUint, so you can decode it yourself. The escape hatch, not the first choice. Do not use for balances, allowances,
https://flat-rate-llm.kikoribera03.workers.dev/v1/evm/receipt
Use when an agent is waiting on a transaction and has to answer «did it work, and what did it cost»: the receipt by hash with success or revert, gas used, the fee actually paid in ether, and how many logs it emitted. found: false means it is not mined yet, which is the answer a waiting agent needs.
https://flat-rate-llm.kikoribera03.workers.dev/v1/evm/estimate-gas
Use when an agent is about to sign a transaction and must know whether it will fail and what it will cost: the gas this exact call needs, the current gas price, the cost in ether, and wouldRevert, which says the transaction would fail before you spend anything finding out. Do not use for the price o
https://flat-rate-llm.kikoribera03.workers.dev/v1/evm/can-i-send
Use when an agent is about to sign a transaction and must decide whether it will go through right now: one call that answers canSend with the facts behind it - the sender's balance, the gas this exact transaction needs, what it will cost, whether the node says it would revert, the nonce to use if ea
https://flat-rate-llm.kikoribera03.workers.dev/v1/evm/gas-window
Use when an agent can choose WHEN to send and must decide whether waiting would save anything: the fee paid across the last ~1000 blocks of this chain in one call, with the cost now, the window percentiles, where now sits in it, and timingMatters, which says whether this chain moves enough for the q
https://flat-rate-llm.kikoribera03.workers.dev/v1/evm/storage
Use when an agent must read something a contract does not expose with a getter and has to decide from it: a raw storage slot, returned as hex and as an integer. It is how you find a proxy's implementation address, an owner or a paused flag. Do not use when the contract has a public getter (/v1/evm/c
https://flat-rate-llm.kikoribera03.workers.dev/v1/evm/erc20-allowance
Use when an agent is about to approve a spender, or is auditing what it approved before: how much of a token the spender may still move on the owner's behalf, raw and formatted with its decimals, plus unlimited, which flags a forgotten infinite approval. Do not use for what the wallet actually holds
https://flat-rate-llm.kikoribera03.workers.dev/v1/evm/nft-owner
Use when an agent must decide whether an NFT is still held by who it thinks: the current owner of an ERC-721 token id, with its tokenURI and the collection name in the same call, read straight from the contract with no indexer in between. Do not use for a whole wallet's holdings or for ERC-1155 bala
https://flat-rate-llm.kikoribera03.workers.dev/v1/evm/portfolio
Use when an agent must see at once whether a wallet can cover something: the native balance plus the balance of every token you list, on one chain, in a single call, each already formatted with its symbol and decimals. One request instead of one per token. Do not use for a single token (/v1/evm/erc2
https://flat-rate-llm.kikoribera03.workers.dev/v1/evm/fees
Use when an agent is building an EIP-1559 transaction and must choose fee caps that will actually get it mined: the base fee plus suggested maxFeePerGas and maxPriorityFeePerGas at slow, normal and fast, computed from the last 20 blocks of real fee history. Do not use for a legacy gas price (/v1/evm
https://flat-rate-llm.kikoribera03.workers.dev/v1/evm/ens
Use when an agent has a name where it needs an address, or the other way round, before it can act: resolves an ENS name to its address or an address to its primary ENS name, read straight from Ethereum mainnet, with found telling you when there is no record. Do not use to check an address is well fo
https://flat-rate-llm.kikoribera03.workers.dev/v1/evm/token-safety
Use when an agent must decide whether to touch a token at all: a pre-trade risk check on Base, Ethereum, Polygon, Arbitrum or Optimism, straight from the deployed bytecode and live state. Detects mint, pause, blacklist, upgradeable proxy and mutable buy/sell tax powers, and reports whether ownership
https://flat-rate-llm.kikoribera03.workers.dev/v1/evm/verdict
Use when an agent needs one answer it can act on: a verdict on any ERC20 on five chains - a machine-readable label for who can act on your balance (no-owner-powers, owner-can-intervene, owner-controls-balances, not-a-token), a headline, a plain reading and a paste-ready card, with the evidence selec
https://flat-rate-llm.kikoribera03.workers.dev/v1/util/keccak256
Use when an agent is building something Ethereum will hash and must get the same digest the chain gets: Keccak-256 of any string or hex payload, with the byte count. It is NOT SHA3-256, and that confusion is the usual reason a selector or a CREATE2 address comes out wrong. Do not use for file digest
https://flat-rate-llm.kikoribera03.workers.dev/v1/util/sha256
Use when an agent must prove two payloads are the same byte for byte, or sign an API request: SHA-256 of any string or hex payload, returned as hex and as base64, which are the two forms signatures and content addresses are written in. Do not use for anything Ethereum hashes: the chain uses Keccak-2
https://flat-rate-llm.kikoribera03.workers.dev/v1/util/address
Use when an agent is handed an address and must decide whether it is safe to use before sending anything: it validates it and returns the EIP-55 mixed-case checksum form, plus whether the input was already checksummed. An address that fails the checksum is almost always mistyped. Do not use to find
https://flat-rate-llm.kikoribera03.workers.dev/v1/util/units
Use when an agent must turn an on-chain integer into a human amount, or back, without losing money to rounding: converts between wei, gwei, ether and any token decimals with exact integer maths, no floating point. Being off by a factor of a thousand on decimals is the mistake that costs real funds.
https://flat-rate-llm.kikoribera03.workers.dev/v1/util/hex
Use when an agent has raw RPC output and must read it as a number or as text: converts between hex, decimal and UTF-8 in one call, with big integers kept exact because a 32-byte word overflows a JavaScript number. Do not use to decode a whole ABI-encoded struct: this converts one value. No API key,
https://flat-rate-llm.kikoribera03.workers.dev/v1/util/base64
Use when an agent must put bytes through a header, a URL or a JSON field, or read what came back: base64 in both directions, including the URL-safe alphabet, with UTF-8 handled properly. x402 itself rides on base64, so this is the one that reads a payment header. Do not use for hashing (/v1/util/sha
https://flat-rate-llm.kikoribera03.workers.dev/v1/util/uuid
Use when an agent needs ids that must not collide: cryptographically random UUID v4s, up to 100 in one call, straight from the platform CSPRNG. For idempotency keys, request ids and correlation ids, where a repeat means a duplicate charge or a lost trace. Do not use for a secret or a password (/v1/r
https://flat-rate-llm.kikoribera03.workers.dev/v1/util/verify-signature
Use when an agent must decide whether whoever is talking to it really controls a wallet: it recovers the address that signed a personal_sign (EIP-191) message and says whether it matches the one you expected. This is the check that turns a claimed address into a proven one. Do not use for EIP-712 ty
https://flat-rate-llm.kikoribera03.workers.dev/v1/util/selector
Use when an agent is building calldata by hand or filtering logs and needs the exact identifiers: it turns a Solidity signature such as transfer(address,uint256) into its 4-byte function selector and its 32-byte event topic0. Do not use to run the call once you have the calldata (/v1/evm/call) or to
https://flat-rate-llm.kikoribera03.workers.dev/v1/random/dice
Use when an agent has to produce a roll a player or an audit will check: dice with any number of faces, every individual roll, the total and the standard notation (3d6, 1d20). It uses the platform CSPRNG with rejection sampling, so every face is equally likely, which a plain modulo is not. Do not us
https://flat-rate-llm.kikoribera03.workers.dev/v1/random/coinflip
Use when an agent must break a tie or split a test and cannot be seen to have chosen: one or more fair coins, each result and the tally of heads and tails, cryptographically random rather than Math.random. Do not use to pick among more than two options (/v1/random/pick) or to order a list (/v1/rando
https://flat-rate-llm.kikoribera03.workers.dev/v1/random/pick
Use when an agent has several options and no reason to prefer any, and the choice has to be defensible: picks one or more items from the list you send, with or without repeats, and tells you how many it had to choose from. Do not use to order the whole list (/v1/random/shuffle) or to draw a number i
https://flat-rate-llm.kikoribera03.workers.dev/v1/random/shuffle
Use when an agent must put a list in an order nobody can claim was arranged: a uniformly random shuffle with Fisher-Yates over the platform CSPRNG, so every permutation is equally likely, which sorting by a random key does not give you. Do not use to take just one or a few items (/v1/random/pick). N
https://flat-rate-llm.kikoribera03.workers.dev/v1/random/password
Use when an agent must mint a secret and be able to justify its strength: strong random passwords from the platform CSPRNG, returned with their entropy in bits so the strength is a number and not an opinion. Four alphabets, one with no look-alike characters for anything a human has to read back or d
https://flat-rate-llm.kikoribera03.workers.dev/v1/random/number
Use when an agent needs numbers in a range that will stand up to inspection: uniform random integers between your own bounds, with or without repeats, drawn with rejection sampling so the ends of the range are not slightly less likely, which is what modulo does. Do not use to choose among items (/v1
https://flat-rate-llm.kikoribera03.workers.dev/v1/time/convert
Use when an agent is about to commit to a time in someone else's zone and cannot be an hour wrong: converts between any two IANA zones with daylight saving applied from the runtime's own tz database. Returns both sides with their UTC offset, abbreviation and DST flag, plus the UTC instant and the di
https://flat-rate-llm.kikoribera03.workers.dev/v1/time/now
Use when an agent must stamp or schedule something in a particular place and needs every form at once: ISO with offset, 24-hour, 12-hour, weekday, unix timestamp and UTC. It also says whether daylight saving is active right now and what the zone's standard offset is, so a shifted clock can be told a
https://flat-rate-llm.kikoribera03.workers.dev/v1/time/zones
Use when an agent has a city or a country and needs the exact zone name the other routes expect: searches the full IANA list and gives each zone's current UTC offset, abbreviation, local time and DST state. Use it to turn a city or a country into the exact zone name the other endpoints expect, or to
https://flat-rate-llm.kikoribera03.workers.dev/v1/content/horror-story
Use when an agent has to perform something short and timed, not just print text: a two-sentence horror story, in English or Spanish, by theme: domestic, technological, cosmic or folk. Returned SPLIT into setup and payoff as well as joined, so a narrating agent can deliver the first line, pause, and
https://flat-rate-llm.kikoribera03.workers.dev/v1/content/roast
Use when a code-review agent wants to land a joke about the actual stack in front of it: a lighthearted developer roast aimed at a target YOU choose - javascript, python, css, git, regex, kubernetes, agile or legacy code - and at the severity you ask for. Every other roast endpoint returns something
https://flat-rate-llm.kikoribera03.workers.dev/v1/content/joke
Use when an agent must fill a pause without repeating itself: one joke, in English or Spanish, filtered by category: programming, crypto or general. Unlike the usual one-liner endpoints this one takes parameters, returns an id so you can exclude what you have already seen, and accepts a seed for a r
https://flat-rate-llm.kikoribera03.workers.dev/v1/content/fact
Use when an agent needs something true to say and must not repeat itself across a session: one curious fact, in English or Spanish, by topic: science, computing, history or nature. Takes parameters, returns an id so you can avoid repeats across a session, and accepts a seed for a reproducible answer
https://flat-rate-llm.kikoribera03.workers.dev/v1/content/riddle
Use when an agent has to run a guessing game and must mark the answer without seeing it first: one riddle by difficulty, in English or Spanish, with the answer AND the SHA-256 of the answer in lowercase. The hash is the point: an agent can check whether its guess is right without reading the solutio
https://flat-rate-llm.kikoribera03.workers.dev/v1/content/advice
Use when an agent must end a reply with something usable rather than a platitude: one piece of practical advice about work, life or money, in English or Spanish. Short, concrete and usable - not a fortune cookie. Filterable by topic, with an id to avoid repeats and a seed for reproducibility.
https://flat-rate-llm.kikoribera03.workers.dev/v1/content/word-of-the-day
Use when an agent runs something daily and everyone must get the same thing that day: the word of the day with its definition, part of speech and an example sentence, in English or Spanish. Genuinely of the day: it is picked deterministically from the UTC date, so everyone gets the same word and you
https://flat-rate-llm.kikoribera03.workers.dev/v1/red/email-check
Use when an agent must decide whether to write to an address, or clean a list before sending: it scores one email 0-100 with a verdict (ok, risky, disposable, undeliverable, invalid) and the evidence under it: every point lost is itemised with the field that proves it. 12,141 disposable domains from
How to call
curl -sS -i -X GET https://flat-rate-llm.kikoribera03.workers.dev/mcp # expect HTTP 402 Payment Required (about $0.005/call)
Listed in
Directories this entry was found in.