Skip to content
verify mcp Beta VerifyMCP is currently in beta. If you notice any issues, get in touch and we’ll put it right.

dev.workers.kikoribera03.flat-rate-llm/x402-tools

REMOTE · FLAT-RATE-LLM.KIKORIBERA03.WORKERS.DEV

61 x402 pay-per-call tools that chain: each answer names the next call. No API key, no account.

0 this week 72 Trust /100

Last scanned (2 hours ago)

Scores higher than 58% of remote servers

Reachable. Last reached 5 Nov 2026.

Trust breakdown (7 categories)

How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. How we score → Why this is hard to score →

Endpoint Security46
Transport & Reachability100
Schema Quality & AI Usability70
  • AI-judged instruction clarity (excellent).Pass
  • Context-footprint check failed: tool/resource definitions use about 13734 tokens (~173/item across 79 items; 79 tools + 0 resources), over budget; trim descriptions and params. See how to fix → Fail
  • Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management100
  • No destabilizing schema changes in the last 30 days.Pass
Tool Coverage100
  • 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
  • 100% of tool parameters carry a description.Pass
Tool Safety75
  • No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
  • 0 of 1 tool(s) whose name or description implies an irreversible operation declare an MCP destructiveHint annotation; "evm_can_i_send" implies "send" and declares no destructiveHint at all, which the MCP spec reads as destructive by default. See how to fix → Fail
  • An AI judge read all 80 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
  • Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
Changelog

Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.

  • 5 Nov 26 0
    • Tool “security_prompt_injection” rewrote its description, which is the text the model reads security
    • Tool “time_convert” rewrote its description, which is the text the model reads security
    • Tool “time_now” rewrote its description, which is the text the model reads security
    • Tool “util_uuid” rewrote its description, which is the text the model reads security
  • 3 Nov 26 0
    • “do” added an optional parameter “auto_plan” cosmetic
    • “do” added an optional parameter “market_steps” cosmetic
    • “do” added an optional parameter “plan_steps” cosmetic

    3 cosmetic changes on this day. Switch on “Show cosmetic changes” to see them.

  • 27 Oct 26 −1
    • The server rewrote its instructions, which are the text every model session reads security
    • Tool “catalog” rewrote its description, which is the text the model reads security
    • Tool “evm_verdict” rewrote its description, which is the text the model reads security
    • Destructive annotations: pass → 0 functional
    • New tool “evm_can_i_send” functional
    • New tool “evm_gas_window” functional
    • New tool “messages” functional
    • New tool “security_prompt_injection” functional
    • New tool “x402_recommend” functional
    • “evm_verdict” added an optional parameter “requestKey” cosmetic
  • 26 Oct 26 −1
    • Tool “util_units” rewrote its description, which is the text the model reads security
    • Tool “util_sha256” rewrote its description, which is the text the model reads security
    • Tool “ai_document” rewrote its description, which is the text the model reads security
    • Tool “ai_image” rewrote its description, which is the text the model reads security
    • Tool “ai_image_describe” rewrote its description, which is the text the model reads security
    • Tool “ai_image_edit” rewrote its description, which is the text the model reads security
    • Tool “ai_image_styled” rewrote its description, which is the text the model reads security
    • Tool “ai_speech” rewrote its description, which is the text the model reads security
    • Tool “ai_transcribe” rewrote its description, which is the text the model reads security
    • Tool “ai_translate” rewrote its description, which is the text the model reads security
    • Tool “chat_completions” rewrote its description, which is the text the model reads security
    • Tool “content_advice” rewrote its description, which is the text the model reads security
    • Tool “content_fact” rewrote its description, which is the text the model reads security
    • Tool “content_horror_story” rewrote its description, which is the text the model reads security
    • Tool “content_joke” rewrote its description, which is the text the model reads security
    • Tool “content_riddle” rewrote its description, which is the text the model reads security
    • Tool “content_roast” rewrote its description, which is the text the model reads security
    • Tool “content_word_of_the_day” rewrote its description, which is the text the model reads security
    • Tool “crypto_sanctions” rewrote its description, which is the text the model reads security
    • Tool “do” rewrote its description, which is the text the model reads security
    • Tool “evm_balance” rewrote its description, which is the text the model reads security
    • Tool “evm_block” rewrote its description, which is the text the model reads security
    • Tool “evm_call” rewrote its description, which is the text the model reads security
    • Tool “evm_chains” rewrote its description, which is the text the model reads security
    • Tool “evm_ens” rewrote its description, which is the text the model reads security
    • Tool “evm_erc20_allowance” rewrote its description, which is the text the model reads security
    • Tool “evm_erc20_balance” rewrote its description, which is the text the model reads security
    • Tool “evm_estimate_gas” rewrote its description, which is the text the model reads security
    • Tool “evm_fees” rewrote its description, which is the text the model reads security
    • Tool “evm_gas” rewrote its description, which is the text the model reads security
    • Tool “evm_is_contract” rewrote its description, which is the text the model reads security
    • Tool “evm_nft_owner” rewrote its description, which is the text the model reads security
    • Tool “evm_nonce” rewrote its description, which is the text the model reads security
    • Tool “evm_portfolio” rewrote its description, which is the text the model reads security
    • Tool “evm_receipt” rewrote its description, which is the text the model reads security
    • Tool “evm_storage” rewrote its description, which is the text the model reads security
    • Tool “evm_token_info” rewrote its description, which is the text the model reads security
    • Tool “evm_token_price” rewrote its description, which is the text the model reads security
    • Tool “evm_token_safety” rewrote its description, which is the text the model reads security
    • Tool “evm_tx” rewrote its description, which is the text the model reads security
    • Tool “evm_verdict” rewrote its description, which is the text the model reads security
    • Tool “fx_convert” rewrote its description, which is the text the model reads security
    • Tool “random_coinflip” rewrote its description, which is the text the model reads security
    • Tool “random_dice” rewrote its description, which is the text the model reads security
    • Tool “random_number” rewrote its description, which is the text the model reads security
    • Tool “random_password” rewrote its description, which is the text the model reads security
    • Tool “random_pick” rewrote its description, which is the text the model reads security
    • Tool “random_shuffle” rewrote its description, which is the text the model reads security
    • Tool “red_asn” rewrote its description, which is the text the model reads security
    • Tool “red_cert” rewrote its description, which is the text the model reads security
    • Tool “red_dnsbl” rewrote its description, which is the text the model reads security
    • Tool “red_domain_check” rewrote its description, which is the text the model reads security
    • Tool “red_email_check” rewrote its description, which is the text the model reads security
    • Tool “red_ip” rewrote its description, which is the text the model reads security
    • Tool “red_whois” rewrote its description, which is the text the model reads security
    • Tool “time_convert” rewrote its description, which is the text the model reads security
    • Tool “time_now” rewrote its description, which is the text the model reads security
    • Tool “time_zones” rewrote its description, which is the text the model reads security
    • Tool “util_address” rewrote its description, which is the text the model reads security
    • Tool “util_base64” rewrote its description, which is the text the model reads security
    • Tool “util_hex” rewrote its description, which is the text the model reads security
    • Tool “util_iban” rewrote its description, which is the text the model reads security
    • Tool “util_keccak256” rewrote its description, which is the text the model reads security
    • Tool “util_phone” rewrote its description, which is the text the model reads security
    • Tool “util_selector” rewrote its description, which is the text the model reads security
    • Tool “util_uuid” rewrote its description, which is the text the model reads security
    • Tool “util_vat” rewrote its description, which is the text the model reads security
    • Tool “util_verify_signature” rewrote its description, which is the text the model reads security
    • Tool “weather_forecast” rewrote its description, which is the text the model reads security
    • Tool “weather_now” rewrote its description, which is the text the model reads security
    • Tool “web_read” rewrote its description, which is the text the model reads security
    • Tool “web_status” rewrote its description, which is the text the model reads security
    • Schema quality: 136 → 165 ▼ functional
  • 18 Oct 26 0
    • The server rewrote its instructions, which are the text every model session reads security
    • Tool “catalog” rewrote its description, which is the text the model reads security
    • Tool “llm_completion” rewrote its description, which is the text the model reads security
    • New tool “chat_completions” functional
  • 13 Oct 26 0
    • Tool “do” rewrote its description, which is the text the model reads security
  • 12 Oct 26 0
    • The server rewrote its instructions, which are the text every model session reads security
    • Tool “catalog” rewrote its description, which is the text the model reads security
    • New tool “do” functional
    • New tool “evm_verdict” functional
  • 9 Oct 26 +2
    • Stability: 0.90 → pass security
Diagnostics

Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.

Captured 5 Nov 2026 · Probed https://flat-rate-llm.kikoribera03.workers.dev/mcp

TLS valid

Negotiated TLS 1.3 with TLS_AES_128_GCM_SHA256 .

Subject Issuer Valid from Valid until Key Signature Serial
CN=kikoribera03.workers.dev CN=WE1,O=Google Trust Services,C=US 8 Sept 2026 7 Dec 2026 ECDSA 256 ECDSA-SHA256 9e9a4a2d2a49facd13f6a9a565df5132
SANs: kikoribera03.workers.dev, *.kikoribera03.workers.dev
CN=WE1,O=Google Trust Services,C=US (CA) CN=GTS Root R4,O=Google Trust Services LLC,C=US 13 Dec 2023 20 Feb 2029 ECDSA 256 ECDSA-SHA384 7ff31977972c224a76155d13b6d685e3
CN=GTS Root R4,O=Google Trust Services LLC,C=US (CA) CN=GlobalSign Root CA,OU=Root CA,O=GlobalSign nv-sa,C=BE 15 Nov 2023 28 Jan 2028 ECDSA 384 SHA256-RSA 7fe530bf331343bedd821610493d8a1b

Background: What to check on a remote MCP endpoint →

DNSSEC insecure

Validation of flat-rate-llm.kikoribera03.workers.dev. — Not signed

Zone DS Keys Algorithms Outcome
. trust_anchor 20326, 38696 8, 8 Verified
dev. present 60074 8 Verified
workers.dev. absent Unsigned (proven) parent-signed NSEC/NSEC3 proves an unsigned delegation
Authentication No authorisation required

The endpoint answered without asking for a token. Anyone who knows the URL can reach it.

Result No authorisation required
HTTP status 200

Background: How OAuth 2.1 works in the 2026 MCP spec →

Transports 2 probes
Transport URL Outcome Status Location
streamable-http https://flat-rate-llm.kikoribera03.workers.dev/mcp Verified 200
http (plaintext) http://flat-rate-llm.kikoribera03.workers.dev/mcp Served over HTTP 200
MCP tools · 79 exposed · ~13,662 tokens

The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →

Tool Tokens
ai_document ~192

Use when an agent must read a document it was handed: it turns it into clean Markdown in about a second - pass an https URL or base64 of a PDF, Word, Excel, PowerPoint, HTML, CSV or XML file and get the text back with its headings, tables and page markers, plus the token count. It reads the text layer, so a scanned page with no text layer comes back without text. You are only charged if the Markdown is delivered. No API key, no account. $0.01 per call, paid over x402 (USDC).

NameTypeReqDescription
documentstring–The document, as base64. Use this or url.
filenamestring–Name with extension, e.g. invoice.pdf. Helps the converter pick the parser. Default: taken from the URL.
urlstring–https URL of the document to convert. Use this or document.

No output schema declared.

No examples provided.

ai_image ~189

Use when an agent needs a picture it can hand straight to the next step: a 1024x1024 JPEG from a text prompt with FLUX.1 [schnell] in about 2 seconds. Returns a hosted image URL valid for 24 hours that you can hand straight to the next tool; add inline=true to also get the base64. Choose 1-8 diffusion steps (default 4). You are only charged if the image is delivered. No API key, no account. $0.02 per call, paid over x402 (USDC).

NameTypeReqDescription
inlineboolean–Also return the JPEG as base64. Default false.
promptstringyesWhat to draw, up to 2048 characters. English works best.
stepsnumber–Diffusion steps, 1-8. More is sharper and slower. Default 4.

No output schema declared.

No examples provided.

ai_image_describe ~188

Use when an agent has an image and needs words it can act on, in about a second: pass an https URL or base64 and ask anything about it, from a one-line caption to reading a sign. Pairs with the rest of the chain: describe an image, translate the description, then have it read aloud. You are only charged if the description is delivered. No API key, no account. $0.005 per call, paid over x402 (USDC).

NameTypeReqDescription
imagestring–The image, as base64. Use this or url.
max_tokensnumber–Length limit of the answer, 16-512. Default 128.
promptstring–What to ask about the image. Default: a one-sentence description.
urlstring–https URL of the image to describe. Use this or image.

No output schema declared.

No examples provided.

ai_image_edit ~271

Use when an agent must change part of an image and leave the rest untouched: pass the image and a black-and-white mask, and Stable Diffusion inpainting repaints only the white area following your prompt. Image and mask go as https URLs or as base64, up to 10 MB each. Returns a hosted image URL valid for 24 hours. You are only charged if the edit is delivered. No API key, no account. $0.02 per call, paid over x402 (USDC).

NameTypeReqDescription
guidancenumber–How closely to follow the prompt, 0-20.
imagestring–The image to edit, as base64. Use this or url.
maskstring–The mask, as base64. Use this or mask_url.
mask_urlstring–https URL of the mask: white where it should repaint, black where it must not. Use this or mask.
promptstringyesWhat to paint into the masked area, up to 2048 characters.
seednumber–Same inputs and same seed give the same edit.
stepsnumber–Diffusion steps, 1-20.
urlstring–https URL of the image to edit. Use this or image.

No output schema declared.

No examples provided.

ai_image_styled ~288

Use when an agent needs an illustration rather than a photo: DreamShaper 8 LCM from a text prompt in about 2 seconds - painterly and character art rather than photoreal. Takes a seed for a repeatable result, a negative prompt, and your own width and height. Returns a hosted image URL valid for 24 hours; add inline=true to also get the base64. You are only charged if the image is delivered. No API key, no account. $0.01 per call, paid over x402 (USDC).

NameTypeReqDescription
guidancenumber–How closely to follow the prompt, 0-20.
heightnumber–Height in pixels, a multiple of 8 between 256 and 1536. Default 1024.
inlineboolean–Also return the image as base64. Default false.
negative_promptstring–What to keep out of the image, up to 1024 characters.
promptstringyesWhat to draw, up to 2048 characters. English works best.
seednumber–Same prompt and same seed give the same image.
stepsnumber–Diffusion steps, 1-20.
widthnumber–Width in pixels, a multiple of 8 between 256 and 1536. Default 1024.

No output schema declared.

No examples provided.

ai_speech ~181

Use when an agent must be heard and not read, in English, Spanish, French, Chinese, Japanese or Korean: Deepgram Aura-2 for English and Spanish, MeloTTS for the rest. Returns a hosted audio URL valid for 24 hours (MP3 for English and Spanish, WAV otherwise) plus its size; add inline=true to also get the base64. Up to 2000 characters per call. You are only charged if the audio is delivered. No API key, no account. $0.01 per call, paid over x402 (USDC).

NameTypeReqDescription
inlineboolean–Also return the WAV as base64. Default false.
langstring–en, es, fr, zh, ja or ko. Default en.
textstringyesWhat to say, up to 2000 characters.

No output schema declared.

No examples provided.

ai_transcribe ~197

Use when an agent is handed audio and needs text it can work with: Whisper large v3 turbo - pass an https URL (mp3, wav, flac, m4a, ogg, up to 10 MB) or base64 audio in a POST. Returns the text, the detected language with its probability, the duration, and timed segments; add words=true for word-level timestamps. Around 100 languages. You are only charged if the transcript is delivered. No API key, no account. $0.02 per call, paid over x402 (USDC).

NameTypeReqDescription
audiostring–Alternative to url: the audio as base64 (POST only).
languagestring–Optional ISO code to skip detection, e.g. es.
urlstring–https URL of the audio file, up to 10 MB.
wordsboolean–Include word-level timestamps. Default false.

No output schema declared.

No examples provided.

ai_translate ~193

Use when an agent must say something in a language it was not given: about 100 languages with Meta M2M100 1.2B - pass the text and the target language (ISO code or English name); the source language is detected if omitted. Long texts are split by sentence, keeping order and line breaks. Up to 2000 characters per call. Chains with /v1/ai/transcribe and /v1/ai/speech. You are only charged if the translation is delivered. No API key, no account. $0.005 per call, paid over x402 (USDC).

NameTypeReqDescription
fromstring–Optional source language; detected when omitted.
textstringyesWhat to translate, up to 2000 characters.
tostringyesTarget language: ISO code (es, fr, de, zh, ja...) or English name (spanish).

No output schema declared.

No examples provided.

catalog ~56

FREE, no payment needed. Lists all 78 tools with a real example of the input and of the output each one returns, plus what a call costs and how to pay for it. Call this first if a tool answered HTTP 402.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

chat_completions ~285

Use when an agent must call an LLM with no account and no token metering: chat completions with the exact request and response shape of the OpenAI API - point your existing client at this URL and it works, no code change. One flat price per call whatever the size of the prompt or the answer — no token metering, no API key, no account, no rate limit. Automatic failover across several large models. You are only charged if the completion is delivered. $0.005 per call, paid over x402 (USDC).

NameTypeReqDescription
max_tokensnumber–Output token cap, up to 4000. Does not change the price.
messagesstring–The conversation, as in the OpenAI API: [{"role":"system|user|assistant","content":"..."}]. In a POST, send it as a real JSON array, exactly as an OpenAI client does; in a GET, pass that same JSON as…
modelstring–Ignored on purpose: the service picks the model and fails over between several. Accepted so an OpenAI client can send it unchanged.
promptstring–Shortcut for a single user message, if you do not want to build the array.
temperaturenumber–Passed through to the model when given.

No output schema declared.

No examples provided.

content_advice ~149

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. $0.005 per call, paid over x402 (USDC).

NameTypeReqDescription
excludearray–Ids already seen, comma-separated in a GET.
languagestring–en | es. Defaults to en.
seedstring–Same seed always returns the same advice.
topicstring–work | life | money. Omit for any.

No output schema declared.

No examples provided.

content_fact ~150

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. $0.005 per call, paid over x402 (USDC).

NameTypeReqDescription
excludearray–Ids already seen, comma-separated in a GET.
languagestring–en | es. Defaults to en.
seedstring–Same seed always returns the same fact.
topicstring–science | computing | history | nature. Omit for any.

No output schema declared.

No examples provided.

content_horror_story ~180

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 then land the second. Takes parameters, returns an id to avoid repeats, and accepts a seed for a reproducible answer. $0.005 per call, paid over x402 (USDC).

NameTypeReqDescription
excludearray–Ids already seen, comma-separated in a GET.
languagestring–en | es. Defaults to en.
seedstring–Same seed always returns the same story.
themestring–domestic | technological | cosmic | folk. Omit for any.

No output schema declared.

No examples provided.

content_joke ~151

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 reproducible answer. $0.005 per call, paid over x402 (USDC).

NameTypeReqDescription
categorystring–programming | crypto | general. Omit for any.
excludearray–Ids already seen, comma-separated in a GET.
languagestring–en | es. Defaults to en.
seedstring–Same seed always returns the same joke.

No output schema declared.

No examples provided.

content_riddle ~163

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 solution first, which no other riddle endpoint lets you do. $0.005 per call, paid over x402 (USDC).

NameTypeReqDescription
difficultystring–easy | medium | hard. Omit for any.
excludearray–Ids already seen, comma-separated in a GET.
languagestring–en | es. Defaults to en.
seedstring–Same seed always returns the same riddle.

No output schema declared.

No examples provided.

content_roast ~207

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 generic; this one lets a code-review agent roast the actual stack in front of it. Bilingual, seedable and repeat-free. $0.005 per call, paid over x402 (USDC).

NameTypeReqDescription
excludearray–Ids already seen, comma-separated in a GET.
languagestring–en | es. Defaults to en.
seedstring–Same seed always returns the same roast.
severitystring–mild | medium | savage. Omit for any.
targetstring–javascript | python | css | git | regex | kubernetes | agile | legacy. Omit for any.

No output schema declared.

No examples provided.

content_word_of_the_day ~154

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 can reproduce any past day by passing it. The usual endpoints just return a random word and call it the word of the day. $0.005 per call, paid over x402 (USDC).

NameTypeReqDescription
datestring–YYYY-MM-DD in UTC. Defaults to today, and any past date is reproducible.
languagestring–en | es. Defaults to en.

No output schema declared.

No examples provided.

crypto_sanctions ~152

Use when an agent must decide whether it may transact with an address at all: it checks it against the OFAC SDN list published by the US Treasury, across 16 currencies including Ethereum, Bitcoin, Tron and USDT. A hit returns the actual list entry - sanctioned entity, its type and its sanctions programmes - not a risk score. Exact matching only, never fuzzy. Every answer carries the publication date of the list snapshot. No API key, no account. $0.01 per call, paid over x402 (USDC).

NameTypeReqDescription
addressstringyesThe crypto address to check. Any chain: EVM, Bitcoin, Tron, Litecoin, Monero and the rest of the list.

No output schema declared.

No examples provided.

do ~438

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 up to 3 steps, feeding each result into the next. Priced per job: the 402 challenge quotes YOUR job before you sign, from $0.02. If nothing fits, nothing is charged. $0.02 per call, paid over x402 (USDC).

NameTypeReqDescription
auto_planobject–Optional POST-only automatic planner, mutually exclusive with explicit plans. Fixed charge $0.015 + tool_budget_usdc, at most $0.15 total, with no rebate for unused budget. External delegation additi…
inputstring–Optional data the job needs: a URL, an EVM address, a domain, or text.
jobstringyesThe job to do, in plain words. Example: read this page and translate it to Spanish.
market_stepsarray–Optional POST-only explicit external plan: 1-3 objects with url and params from a verified catalogue entry. Requires enabled isolated purchasing wallet; no example data is reused. Current execution s…
max_stepsnumber–How many tools may be chained, 1 to 3. Default 2.
plan_stepsarray–Optional POST-only explicit mixed plan: 1-3 total steps, each {route, params} for a local catalogue tool or {url, params} for an eligible verified market entry. Use exact top-level $previous after th…

No output schema declared.

No examples provided.

evm_balance ~173

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 token balances (/v1/evm/erc20-balance) or for a whole-wallet view (/v1/evm/portfolio). Flat price, no rate limits, no API key, no account. $0.005 per call, paid over x402 (USDC).

NameTypeReqDescription
addressstringyes0x-prefixed address to look up.
chainstring–base | ethereum | polygon | arbitrum | optimism. Defaults to base.

No output schema declared.

No examples provided.

evm_block ~136

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 all of them in one call). Flat price, no rate limits, no API key, no account. $0.005 per call, paid over x402 (USDC).

NameTypeReqDescription
chainstring–base | ethereum | polygon | arbitrum | optimism.

No output schema declared.

No examples provided.

evm_call ~195

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, token data or NFT owners: those have typed routes that decode the answer for you. No API key, no rate limit. $0.005 per call, paid over x402 (USDC).

NameTypeReqDescription
blockstring–Block tag or number. Defaults to latest.
chainstring–base | ethereum | polygon | arbitrum | optimism.
datastringyes0x-prefixed calldata: 4-byte selector plus encoded arguments.
fromstring–Optional caller address, for calls that check msg.sender.
tostringyesContract address to call.

No output schema declared.

No examples provided.

evm_can_i_send ~197

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 earlier ones are still in flight, whether the destination is a contract, and how stale the chain head is. Replaces five separate reads. No API key, no account. $0.02 per call, paid over x402 (USDC).

NameTypeReqDescription
chainstring–base | ethereum | polygon | arbitrum | optimism. Defaults to base.
datastring–Optional 0x calldata.
fromstringyesThe address that would sign and pay.
tostringyesDestination address.
valuestring–Optional native amount in wei, as a decimal string.

No output schema declared.

No examples provided.

evm_chains ~159

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 there (/v1/evm/gas, and /v1/evm/fees for EIP-1559 caps). No API key, no account. $0.005 per call, paid over x402 (USDC).

NameTypeReqDescription
chainstring–Optional: check just one. base | ethereum | polygon | arbitrum | optimism. All of them when omitted.

No output schema declared.

No examples provided.

evm_ens ~151

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 formed (/v1/util/address) or that it is a wallet (/v1/evm/is-contract). No API key. $0.005 per call, paid over x402 (USDC).

NameTypeReqDescription
addressstring–Address to reverse-resolve. Use instead of name.
namestring–ENS name to resolve, such as vitalik.eth.

No output schema declared.

No examples provided.

evm_erc20_allowance ~173

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 (/v1/evm/erc20-balance) or for whether the token is safe (/v1/evm/token-safety). No API key. $0.005 per call, paid over x402 (USDC).

NameTypeReqDescription
chainstring–base | ethereum | polygon | arbitrum | optimism.
ownerstringyesAddress that owns the tokens.
spenderstringyesAddress allowed to spend them.
tokenstringyesERC20 contract address.

No output schema declared.

No examples provided.

evm_erc20_balance ~182

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 you. Do not use for the native coin (/v1/evm/balance) or for what a contract is allowed to spend (/v1/evm/erc20-allowance). No API key, no account. $0.005 per call, paid over x402 (USDC).

NameTypeReqDescription
addressstringyesWallet to look up.
chainstring–base | ethereum | polygon | arbitrum | optimism.
tokenstringyesERC20 contract address.

No output schema declared.

No examples provided.

evm_estimate_gas ~191

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 of a plain transfer (/v1/evm/gas) or for EIP-1559 caps (/v1/evm/fees). No API key, no account. $0.005 per call, paid over x402 (USDC).

NameTypeReqDescription
chainstring–base | ethereum | polygon | arbitrum | optimism.
datastring–Optional 0x calldata.
fromstring–Sender address.
tostringyesDestination address.
valuestring–Optional value in wei, as a decimal string.

No output schema declared.

No examples provided.

evm_fees ~142

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/gas) or to price one specific call (/v1/evm/estimate-gas). No API key, no account. $0.005 per call, paid over x402 (USDC).

NameTypeReqDescription
chainstring–base | ethereum | polygon | arbitrum | optimism.

No output schema declared.

No examples provided.

evm_gas ~155

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 maxFeePerGas and maxPriorityFeePerGas) or to price a specific call (/v1/evm/estimate-gas). Flat price, no API key, no account. $0.005 per call, paid over x402 (USDC).

NameTypeReqDescription
chainstring–base | ethereum | polygon | arbitrum | optimism.

No output schema declared.

No examples provided.

evm_gas_window ~180

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 question to be worth asking at all. Do not use to price one transaction (/v1/evm/estimate-gas) or for EIP-1559 caps (/v1/evm/fees). $0.005 per call, paid over x402 (USDC).

NameTypeReqDescription
blocksstring–How many blocks of history, 32 to 1024. Defaults to 1024.
chainstring–base | ethereum | polygon | arbitrum | optimism. Defaults to base.

No output schema declared.

No examples provided.

evm_is_contract ~147

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 whether a token is safe (/v1/evm/token-safety) or worth trusting (/v1/evm/verdict). No API key, no account. $0.005 per call, paid over x402 (USDC).

NameTypeReqDescription
addressstringyesAddress to inspect.
chainstring–base | ethereum | polygon | arbitrum | optimism.

No output schema declared.

No examples provided.

evm_nft_owner ~150

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 balances: this answers one token id. No API key, no account. $0.005 per call, paid over x402 (USDC).

NameTypeReqDescription
chainstring–base | ethereum | polygon | arbitrum | optimism.
contractstringyesERC721 contract address.
tokenIdstringyesToken id, in decimal.

No output schema declared.

No examples provided.

evm_nonce ~143

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/evm/balance for the funds, /v1/evm/estimate-gas for the cost). No API key, no account. $0.005 per call, paid over x402 (USDC).

NameTypeReqDescription
addressstringyesAddress to look up.
chainstring–base | ethereum | polygon | arbitrum | optimism.

No output schema declared.

No examples provided.

evm_portfolio ~162

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/erc20-balance) or for what the tokens are worth (/v1/evm/token-price). No API key, no account. $0.005 per call, paid over x402 (USDC).

NameTypeReqDescription
addressstringyesWallet to inspect.
chainstring–base | ethereum | polygon | arbitrum | optimism.
tokensarray–Up to 20 ERC20 contract addresses.

No output schema declared.

No examples provided.

evm_receipt ~155

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. Do not use for the transaction's own fields like value or recipient (/v1/evm/tx returns both merged). No API key, no account. $0.005 per call, paid over x402 (USDC).

NameTypeReqDescription
chainstring–base | ethereum | polygon | arbitrum | optimism.
hashstringyes32-byte transaction hash.

No output schema declared.

No examples provided.

evm_storage ~175

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/call is the honest way) or for token data (/v1/evm/token-info). No API key, no account. $0.005 per call, paid over x402 (USDC).

NameTypeReqDescription
addressstringyesContract to read.
chainstring–base | ethereum | polygon | arbitrum | optimism.
slotstring–Slot number in decimal, or a 0x slot key such as an EIP-1967 hash.

No output schema declared.

No examples provided.

evm_token_info ~156

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-balance), the price (/v1/evm/token-price) or the risk (/v1/evm/token-safety). No API key, no account. $0.005 per call, paid over x402 (USDC).

NameTypeReqDescription
chainstring–base | ethereum | polygon | arbitrum | optimism.
tokenstringyesERC20 contract address.

No output schema declared.

No examples provided.

evm_token_price ~176

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, so the number can be audited instead of trusted. No aggregator and no API key: the source is the chain itself. Via eth_call. $0.005 per call, paid over x402 (USDC).

NameTypeReqDescription
chainstring–base | ethereum | polygon | arbitrum | optimism.
quotestring–Token to price it against. Defaults to the chain's native USDC.
tokenstringyesERC20 contract address to price.

No output schema declared.

No examples provided.

evm_token_safety ~162

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 is renounced. It returns the EVIDENCE - the exact selector found and its byte offset - so an agent can apply its own policy. Deterministic: same contract, same answer. $0.01 per call, paid over x402 (USDC).

NameTypeReqDescription
chainstring–base | ethereum | polygon | arbitrum | optimism.
tokenstringyesERC20 contract address to check.

No output schema declared.

No examples provided.

evm_tx ~156

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 been mined at all (/v1/evm/receipt answers found: false) or to judge it before signing (/v1/evm/estimate-gas). No API key, no account. $0.005 per call, paid over x402 (USDC).

NameTypeReqDescription
chainstring–base | ethereum | polygon | arbitrum | optimism.
hashstringyesTransaction hash.

No output schema declared.

No examples provided.

evm_verdict ~281

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 selector by selector. Label and card come from the bytecode and live state, never from a model. A repeated requestKey is never charged twice. Research, not investment advice. $0.02 per call, paid over x402 (USDC).

NameTypeReqDescription
chainstring–base | ethereum | polygon | arbitrum | optimism.
requestKeystring–Optional idempotency key you choose, 8 to 128 characters of letters, digits, dot, dash, colon or underscore. Send the same key with the same input and you get your first answer back and are NOT charg…
tokenstringyesERC20 contract address to judge.

No output schema declared.

No examples provided.

fx_convert ~198

Use when an agent has to convert money in a figure someone will audit: between any two of the ~30 currencies in the European Central Bank's official reference rates, on today's publication or on a past date within the last 90 days. Returns the rate used, its publication date and whether it was crossed through the euro. This is the auditable rate accounting and customs ask for, not a live market quote: it is published once a day and it is reproducible. $0.005 per call, paid over x402 (USDC).

NameTypeReqDescription
amountnumber–Amount to convert. Defaults to 1.
datestring–Optional publication date, YYYY-MM-DD, within the last 90 days. Defaults to the latest publication.
fromstringyesSource currency, ISO 4217, e.g. USD.
tostringyesTarget currency, ISO 4217, e.g. EUR.

No output schema declared.

No examples provided.

llm_completion ~161

LLM inference at a flat $0.005 per call, with no account, no API key and no token metering. POST a prompt, get the completion: the same price for 10 tokens or 4000, while metered gateways scale with usage. Automatic failover across several large models; typical response under 1s. Pay per call in USDC over x402 - nothing to sign up for. $0.005 per call, paid over x402 (USDC).

NameTypeReqDescription
maxTokensnumber–Output token cap, up to 4000. Does not change the price.
promptstringyesThe request for the model. Up to 24000 characters.
sistemastring–Optional system instruction.

No output schema declared.

No examples provided.

messages ~311

Use when an agent is written against the Anthropic Messages API and must call a model with no account: the same request and response shape - system as its own field, content as text blocks, stop_reason - so pointing your client at this URL is all it takes. One flat price per call, whatever the size. Automatic failover across several large models. Do not use for the OpenAI shape (/v1/chat/completions serves that one). You are only charged if the answer is delivered. $0.005 per call, paid over x402 (USDC).

NameTypeReqDescription
max_tokensnumber–Output token cap, up to 4000. Does not change the price. Required by the real API; here it is optional.
messagesstring–The conversation, as in the Anthropic API: [{"role":"user|assistant","content":"..."}]. In a POST send a real JSON array, exactly as an Anthropic client does; in a GET pass that same JSON as text. Bo…
modelstring–Ignored on purpose: the service picks the model and fails over between several. Accepted so an Anthropic client can send it unchanged.
promptstring–Shortcut for a single user message, if you do not want to build the array.
systemstring–The system prompt, as its own field (this is how the Anthropic API does it).
temperaturenumber–Passed through to the model when given.

No output schema declared.

No examples provided.

random_coinflip ~126

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/random/shuffle). No API key, no account. $0.005 per call, paid over x402 (USDC).

NameTypeReqDescription
countnumber–How many coins to flip, 1-100. Defaults to 1.

No output schema declared.

No examples provided.

random_dice ~165

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 use to choose from a list you already have (/v1/random/pick) or for a secret (/v1/random/password). $0.005 per call, paid over x402 (USDC).

NameTypeReqDescription
countnumber–How many dice to roll, 1-100. Defaults to 1.
facesnumber–Faces per die, 2-1000000. Defaults to 6.

No output schema declared.

No examples provided.

random_number ~170

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/random/pick) or for a secret (/v1/random/password). $0.005 per call, paid over x402 (USDC).

NameTypeReqDescription
countnumber–How many to draw, 1-100. Defaults to 1.
maxnumber–Highest value, inclusive. Defaults to 100.
minnumber–Lowest value, inclusive. Defaults to 1.
uniqueboolean–No repeats. Needs a range at least as wide as count.

No output schema declared.

No examples provided.

random_password ~168

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 dictate. Do not use for ids that only need to be unique (/v1/util/uuid). $0.005 per call, paid over x402 (USDC).

NameTypeReqDescription
alphabetstring–alnum | legible | hex | completo. Defaults to legible.
countnumber–How many to generate, 1-50. Defaults to 1.
lengthnumber–Characters per secret, 8-256. Defaults to 20.

No output schema declared.

No examples provided.

random_pick ~174

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 in a range (/v1/random/number). No API key, no account. $0.005 per call, paid over x402 (USDC).

NameTypeReqDescription
countnumber–How many to pick, 1-100. Defaults to 1.
itemsstringyesThe options, comma-separated. A JSON array of strings is also accepted in a POST body.
repeatboolean–Allow the same item more than once. Defaults to false.

No output schema declared.

No examples provided.

Install

How do I install the dev.workers.kikoribera03.flat-rate-llm/x402-tools MCP server?

dev.workers.kikoribera03.flat-rate-llm/x402-tools is a hosted endpoint at https://flat-rate-llm.kikoribera03.workers.dev/mcp, so there is nothing to install locally. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.

remote · flat-rate-llm.kikoribera03.workers.dev

# add to Claude Code
claude mcp add --transport http dev-workers-kikoribera03-flat-rate-llm-x402-tool 'https://flat-rate-llm.kikoribera03.workers.dev/mcp'
Common questions

What is the dev.workers.kikoribera03.flat-rate-llm/x402-tools MCP server?

dev.workers.kikoribera03.flat-rate-llm/x402-tools is an MCP server listed in the public MCP registry as dev.workers.kikoribera03.flat-rate-llm/x402-tools. 61 x402 pay-per-call tools that chain: each answer names the next call. No API key, no account. This page covers its hosted endpoint (https://flat-rate-llm.kikoribera03.workers.dev/mcp).

Is the dev.workers.kikoribera03.flat-rate-llm/x402-tools MCP server safe to use?

dev.workers.kikoribera03.flat-rate-llm/x402-tools scores 72 out of 100 on VerifyMCP. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.

What tools does the dev.workers.kikoribera03.flat-rate-llm/x402-tools MCP server expose?

dev.workers.kikoribera03.flat-rate-llm/x402-tools exposes 79 tools: catalog, llm_completion, do, evm_balance, evm_erc20_balance, and 74 more. Their descriptions and schemas cost roughly 13,662 tokens of context every time the server is loaded.

Does the dev.workers.kikoribera03.flat-rate-llm/x402-tools MCP server require authentication?

No. We connected to dev.workers.kikoribera03.flat-rate-llm/x402-tools without credentials and it answered, so anything it exposes is reachable by anyone who knows the address.

Is the dev.workers.kikoribera03.flat-rate-llm/x402-tools MCP server still maintained?

dev.workers.kikoribera03.flat-rate-llm/x402-tools is still listed as active in the MCP registry. We last reached this channel on 5 November 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.