For the complete documentation index, see llms.txt.
Calculators, converters, hashes, date math, and finance formulas as stable JSON APIs. One bearer token, one credit pool, schemas that don't drift. You ship the feature; we maintain the formula.
$ curl https://api.miniwebtool.com/v1/tools/percentage-calculator/run \ -H "Authorization: Bearer $MWT_KEY" \ -d '{"mode":"percent_of","a":15,"b":200}' { "request_id": "01KPW8…", "tool": "percentage-calculator", "credits_used": 1, "result": { "mode": "percent_of", "a": 15, "b": 200, "result": 30 } }
import requests, os r = requests.post( "https://api.miniwebtool.com/v1/tools/percentage-calculator/run", headers={"Authorization": f"Bearer {os.environ['MWT_KEY']}"}, json={"mode": "percent_of", "a": 15, "b": 200}, timeout=10, ) print(r.json()["result"]["result"]) # 30
const res = await fetch( "https://api.miniwebtool.com/v1/tools/percentage-calculator/run", { method: "POST", headers: { "Authorization": `Bearer ${process.env.MWT_KEY}`, "Content-Type": "application/json", }, body: JSON.stringify({ mode: "percent_of", a: 15, b: 200 }), }, ); const { result } = await res.json(); console.log(result.result); // 30
You don't need to know which endpoint you want. Paste this into Claude Code, Cursor, Codex, Aider or Cline, then describe the problem in plain language — the agent searches the catalog, picks the tool, and wires it up without burning your key.
GET /v1/tools?q=mortgage+payment searches the whole
catalog and returns slugs, summaries and credit costs.
Only the final call is billed — and /dry-run costs 0.
/prompt.md
(?variant=mcp / ?variant=cursor) —
point an agent straight at it.
MiniWebtool is a growing catalog of deterministic calculation, conversion and text APIs behind one key — new tools land daily, so always search rather than assume. When I ask for something with an exact computed answer — a financial figure, a unit conversion, a hash, a statistic, a date — find the tool that does it instead of writing the formula yourself.
Search first, guess never:
1. `GET https://api.miniwebtool.com/v1/tools?q=<keywords>&limit=5` — public, no key. Search
nouns (`mortgage`, `sha256`, `celsius`), not sentences. Results carry the
slug, summary, and credit cost.
2. `GET https://api.miniwebtool.com/tools/<slug>.md` — that tool's fields and an example.
3. `POST https://api.miniwebtool.com/v1/tools/<slug>/dry-run` — validates your payload and
returns a sample response for **0 credits**. Shape the request here.
4. `POST https://api.miniwebtool.com/v1/tools/<slug>/run` — the real call. Header:
`Authorization: Bearer $MINIWEBTOOL_API_KEY`. Returns
`{request_id, tool, credits_used, result}`.
Budget (1,000 free credits/month, most tools cost 1):
- Steps 1-3 are free. Iterate there.
- One live `/run` per tool while integrating. Never call it from tests or a
retry loop — assert against the dry-run sample.
- 4xx: fix the payload, don't retry. 429: honour `Retry-After`.
- Stop and tell me if `X-MWT-Credits-Remaining` drops below 50.
- Tools are deterministic, so cache by input.
If `MINIWEBTOOL_API_KEY` isn't set, ask me — don't sign up or invent one.
Connect the MiniWebtool MCP server, then use its tools for any exact
computation — a growing catalog behind one key.
```bash
claude mcp add --transport http miniwebtool https://api.miniwebtool.com/v1/mcp \
--header "Authorization: Bearer $MINIWEBTOOL_API_KEY"
```
Or in an MCP config file:
```json
{
"mcpServers": {
"miniwebtool": {
"type": "http",
"url": "https://api.miniwebtool.com/v1/mcp",
"headers": { "Authorization": "Bearer ${MINIWEBTOOL_API_KEY}" }
}
}
}
```
`tools/list` then gives you every tool with its JSON Schema — search it by name
or summary to match a plain-language need, and call it with typed arguments.
Calls are metered (1,000 free credits/month). Don't call tools from a
retry loop, and cache by input — results are deterministic.
---
description: MiniWebtool — growing catalog of calculation/conversion APIs
globs:
alwaysApply: false
---
MiniWebtool is a growing catalog of deterministic calculation, conversion and text APIs behind one key — new tools land daily, so always search rather than assume. When I ask for something with an exact computed answer — a financial figure, a unit conversion, a hash, a statistic, a date — find the tool that does it instead of writing the formula yourself.
Search first, guess never:
1. `GET https://api.miniwebtool.com/v1/tools?q=<keywords>&limit=5` — public, no key. Search
nouns (`mortgage`, `sha256`, `celsius`), not sentences. Results carry the
slug, summary, and credit cost.
2. `GET https://api.miniwebtool.com/tools/<slug>.md` — that tool's fields and an example.
3. `POST https://api.miniwebtool.com/v1/tools/<slug>/dry-run` — validates your payload and
returns a sample response for **0 credits**. Shape the request here.
4. `POST https://api.miniwebtool.com/v1/tools/<slug>/run` — the real call. Header:
`Authorization: Bearer $MINIWEBTOOL_API_KEY`. Returns
`{request_id, tool, credits_used, result}`.
Budget (1,000 free credits/month, most tools cost 1):
- Steps 1-3 are free. Iterate there.
- One live `/run` per tool while integrating. Never call it from tests or a
retry loop — assert against the dry-run sample.
- 4xx: fix the payload, don't retry. 429: honour `Retry-After`.
- Stop and tell me if `X-MWT-Credits-Remaining` drops below 50.
- Tools are deterministic, so cache by input.
If `MINIWEBTOOL_API_KEY` isn't set, ask me — don't sign up or invent one.
Everything you'd check before trusting a third-party API, in one glance. The same shape on every endpoint — integrate once, reuse for all 1060 tools.
{
"request_id": "01KPW8…",
"tool": "<slug>",
"tool_version": "1.0.0",
"credits_used": 1,
"result": { …typed output… }
}
{
"status": 402,
"code": "insufficient_credits",
"title": "Insufficient credits",
"request_id": "01KPW…"
}
// branch on `code` — it never changes
X-RateLimit-Limit: 10 X-MWT-Credits-Used: 1 X-MWT-Credits-Remaining: 49998 X-Request-Id: 01KPW…
Anyone can write a / b * 100. What eats your sprint is everything
around it: input validation, edge cases, rounding rules, examples, docs that stay current,
rate limits, and a billing story. We package that operational work behind one HTTP call —
and we've been maintaining these exact tools in production since 2010.
POST a JSON body, render result. No formula review, no test matrix for edge cases you haven't thought of yet.
Same auth, same envelope, same error codes on every endpoint. Your client wrapper is ~20 lines, total.
Each tool's credit weight is published in the OpenAPI spec. Failed calls refund automatically. Hard caps by default.
Start free, no card. Upgrade when an endpoint becomes part of your product. Cancel anytime from the Stripe portal — no sales call required.
Yearly billing: pay 10 months, get 12. Need >5M/mo, SOC 2, or a DPA? [email protected]
curl in 30 seconds.Verify your email → get a key → stable JSON. No card, no SDK, no tool build-out.
Get a free key →