Call 800+ tools
from your own code.
One REST endpoint per tool, or one MCP server for all of them. JSON in, JSON out — and every response tells you what it cost and what’s left.
curl -X POST https://api.iotools.cloud/v1/tool/case-converter \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{ "inputString": "hello world",
"caseStyle": "uppercase" }'{
"outputs": { "outputString": "HELLO WORLD" },
"credits_used": 1,
"credits_remaining": 999
}Get started
There is no paid plan to buy first — the Builder plan raises your limits, it does not unlock endpoints.
Create a free account
No card, no sales call. The free tier reaches every endpoint the paid one does.
Mint an API key
From your account page. It is shown once — store it somewhere safe.
Call any tool
The response carries the result, cost and balance, so you never need a second request.
Two ways to call
One endpoint per tool
One POST per tool, fields flat in the body — no wrapper. Every schema is published, so you can generate a client instead of hand-writing one. Failures are RFC 9457 documents with a stable code to branch on.
curl -X POST https://api.iotools.cloud/v1/tool/case-converter \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{ "inputString": "hello world" }'One server for all of them
The same tools, callable by AI agents — point Claude, Cursor or Windsurf at our MCP endpoint. It advertises five tools, not 800+: an agent searches, reads the schema it needs, then runs it, for about a thousand tokens instead of two hundred thousand.
{
"mcpServers": {
"iotools": {
"type": "http",
"url": "https://mcp.iotools.cloud/mcp",
"headers": { "Authorization": "Bearer YOUR_API_KEY" }
}
}
}Every response, one shape
Success
200What you asked for, what it cost, and what is left — in the same response, every time.
{
"request_id": "req_8f2c1a",
"tool": "case-converter",
"tool_version": "1.0.0",
"outputs": { "outputString": "HELLO WORLD" },
"credits_used": 1,
"credits_remaining": 999
}Failure
4xx / 5xxA stable code to branch on, not a message to parse. Failed calls are refunded — see the error reference.
{
"type": "https://iotools.cloud/docs/errors/insufficient_credits",
"title": "Insufficient credits",
"status": 402,
"code": "insufficient_credits",
"request_id": "req_8f2c1b"
}For AI agents
An agent that hasn’t memorized a slug needs a way to find the right tool without guessing one. Both surfaces rank with the same search, so an agent gets the same answer either way — what changes is how much of the work you have to spell out.
Over the REST API
An agent with nothing but an HTTP tool can’t discover the catalog on its own, so the prompt carries the sequence: search by intent, read the schema of the slug it picked, then call it.
Use the IO Tools REST API to convert the attached CSV to JSON.
My key is in $IOTOOLS_KEY. Send it as
"Authorization: Bearer $IOTOOLS_KEY" on every request.
1. Find the tool — do not guess a slug:
GET https://api.iotools.cloud/v1/tools/search?q=convert+csv+to+json&limit=5
2. Read the schema of the slug you picked:
GET https://api.iotools.cloud/v1/tool/{slug}
3. Run it with the fields that schema declared:
POST https://api.iotools.cloud/v1/tool/{slug}
The fields go at the top level of the body, with no wrapper:
{ "fieldName": "…" }
Every response carries credits_used and credits_remaining,
so report what the job cost when you are done.Over the MCP server
Connect the server once with the config above and search_tools becomes a tool like any other. The three REST calls collapse into the client’s own tool-calling loop, so the prompt is just the task.
Convert the attached CSV to JSON
using the iotools MCP server.search_toolsdescribe_toolget_creditsget_usageCoding agents can also start from /llms.txt, a plain-text index of the site built for language models.
It asks before it spends
An agent picks its own tools and calls them as often as it likes — nothing about a tool-calling loop naturally stops at your allowance. So every paid call is put up for approval before anything is charged, quoting the price. Clients that support MCP elicitation show it to you:
String Case Converter costs 3 credits. Run it?Every call, not just the first — there is no “remember this”. The prompt lands after your inputs are validated and before a single credit moves, the only window where “no” is free. How your client shows it is up to the client.
Clients that can’t show a prompt keep working — but a single call over 50 credits is refused rather than spent silently.
Browse the catalog
Every API-enabled tool sits in one of six categories.
Converters
Convert between formats, encodings, and units — Base64, CSV and JSON, timestamps, and more. Fast, free, and processed right in your browser.
Formatters
Format, beautify, minify, and validate code and data — JSON, HTML, CSS, SQL, and regex. Clean up messy input in one click, with nothing to upload.
Generators
Generate exactly what you need and on demand — passwords, UUIDs, QR codes, hashes, random numbers, and more. Secure, instant, and free.
Calculators
Crunch the numbers fast — from everyday math to specialized conversions and unit work. Free online calculators that run entirely in your browser.
Editors
Edit and transform text, code, and images with quick, focused editors that run entirely in your browser — nothing to install, and no sign-up needed.
Utilities
Everyday developer and web utilities — DNS and IP lookups, redirect and certificate checkers, and other quick diagnostics. Free and privacy-friendly.
What it costs
Using most tools in your browser is free and unlimited. Calling them from code costs credits — every call, including tools that are free on the site. Reading the catalog costs nothing.
Free account
Builder plan
How a call is priced
A call costs whichever is larger: the tool's own weight, or your plan's minimum per call.
Most of the catalog has no weight at all, so it costs the minimum — 3 on a free account, 1 on Builder.
The AI tools cost more, because there is a real vendor bill behind them.
Failed calls are free — credits are refunded on any 4xx or 5xx.