Documentation
Connect your agent
Two ways in. Use MCP if your agent already speaks it — it gets discovery and payment in one place. Use plain HTTP if you want to see every byte. They run the same code and charge the same amount.
Everything below is on Base Sepolia with test USDC. Your agent needs a wallet holding test USDC and nothing else — the gas is paid by the facilitator, not by you.
Option A
Over MCP
Add the server to your agent's MCP configuration. In Claude Code that is .mcp.json; other clients use the same shape.
{
"mcpServers": {
"aiskills402": {
"url": "https://mcp.aiskills402.com/mcp"
}
}
}Two free tools appear, plus one paid tool per skill:
search_skills— the catalog, with the price of each skill.get_skill— one skill: price, input limits, output shape.execute_humanize_long— runs Humanize Long. Costs $0.08 and needs a wallet.execute_humanize— runs Humanize. Costs $0.03 and needs a wallet.
Each skill gets its own paid tool rather than one shared execute, so your agent sees the price in the tool list before calling anything.
Your agent must be able to sign x402 payments. Without a wallet the paid tool answers with a 402 payload describing what it wants; with one, the client signs and repeats automatically.
Option B
Over plain HTTP
Discovery is free and needs no key:
curl https://api.aiskills402.com/v1/skills
curl https://api.aiskills402.com/v1/skills/humanize-longCalling the endpoint without paying returns 402 Payment Required and, in accepts, everything needed to pay: amount, asset, network and recipient.
curl -X POST https://api.aiskills402.com/v2/skills/humanize-long/execute \
-H "Content-Type: application/json" \
-d '{"input": "<your text>"}'Sign one of the offered requirements, base64 the payload, and repeat the request with it in X-PAYMENT. The response is 200 with the result and the transaction hash.
curl -X POST https://api.aiskills402.com/v2/skills/humanize-long/execute \
-H "Content-Type: application/json" \
-H "X-PAYMENT: <base64 signed authorization>" \
-d '{"input": "<your text>"}'Any x402 client library does the signing for you — the reference client is documented at x402.org.
The money
What you are charged, and when
The amount is fixed and shown before anything runs. It is taken only after the work succeeds — we verify the signature, do the work, and then settle. If the run fails, the authorization is cancelled and no transfer happens.
Skills are priced by how much text they accept. The cost of a rewrite grows with the length, so a single price for every size would either overcharge a short email or sell a long article at a loss. Pick the smallest one that fits your text.
| Skill | Takes | Price |
|---|---|---|
| humanize-long | up to ~5,100 words | $0.08 |
| humanize | up to ~1,300 words | $0.03 |
| Outcome | You are charged |
|---|---|
| Success | the skill's price |
| Run failed | nothing |
| Cost cap hit mid-run | nothing |
| Input rejected before the run | nothing — 400 before the 402 |
| Skill paused or unavailable | nothing — 503 |
Every response carries settled. Treat that field, not the HTTP status, as the answer to “did I pay”.
When it says no
Errors your agent will meet
| Code | What to do |
|---|---|
| input_too_short | Send at least 300 characters. Shorter text is not worth rewriting. |
| input_too_large | Use a skill that takes longer text, or split it. The response tells you the limit. |
| input_required | The body needs an `input` field holding a string. |
| skill_not_found | Check the slug against /v1/skills. |
| skill_unavailable | Paused or between versions. Retry later — you were not charged. |
| payment_replay | That authorization was already used. Sign a fresh one. |
| budget_exceeded | The run cost more than its cap and was stopped. Not charged. |
| translated | The model answered in the wrong language, so the run is void. Not charged. |
Your text
What we keep
By default, nothing readable. We store a SHA-256 fingerprint of the input and of the output — enough to prove later which input produced which output, without us holding your text.
Send "retain": true and a full copy is kept for 30 days and then deleted automatically. Failed runs are never kept, even with the flag set.
Honestly
What this does not do
The rewrite is judged on reading like a person wrote it, with every factual claim preserved and the length kept. It is not sold as a way to get past AI detectors, and we measured why: the same guarantees that keep your facts intact are what detectors recognise. Anyone promising both is promising one of them falsely.
Payments are on a test network. Nothing here moves real money yet.