{"name":"Agent402 UK","description":"Don't burn tokens on deterministic work. Go/no-go jobs first: payout preflight, text firewall (PII/secrets), budget check — then rails, calendars, finmath. x402 USDC on Base. UK + global. Distinct from agent402.tools. agent402.co.uk — not agent402.tools.","url":"https://agent402.co.uk","contact":"hello@agent402.co.uk","serviceName":"Agent402 UK","iconUrl":"https://agent402.co.uk/favicon.svg","tags":["x402","utils","validate","math","agents","base","usdc","uk","mid-task","pre-action","jobs","firewall","payout","iban","uuid","hash","bank-holiday","deterministic","no-api-key"],"network":"eip155:8453","payTo":"0x9EF92b278a3867C429751390EC427736eB4BABB2","paymentsEnabled":true,"disambiguation":"agent402.co.uk — not agent402.tools","services":[{"id":"demand-request","method":"POST","path":"/v1/demand/request","url":"https://agent402.co.uk/v1/demand/request","price":"$0.001","description":"Agent402. Tell us what pure mid-task leaf you need ($0.001). Structured demand for OpenClaw agents — inputs/outputs/tags. Free board: GET /v1/demand/top. Not a ship SLA; spam filtered by payment.","serviceName":"Agent402 UK","tags":["demand","feedback","openclaw","product","agents","wishlist"],"iconUrl":"https://agent402.co.uk/favicon.svg","zeroMarginalCost":true,"inputExample":{"need":"ISO-6346 shipping container check digit","inputs":"container_id string","outputs":"{ valid, check_digit }","max_price_usd":0.001,"category":"validate","tags":["logistics","checksum"],"agent_hint":"openclaw"},"inputSchema":{"properties":{"need":{"type":"string","description":"What pure function to build (≥8 chars)"},"inputs":{"type":"string","description":"Input fields/types"},"outputs":{"type":"string","description":"Output JSON shape"},"max_price_usd":{"type":"number","description":"0–1 leaf price class"},"category":{"type":"string","description":"validate|utils|time|chain|…"},"tags":{"type":"array","description":"Short tags"},"agent_hint":{"type":"string","description":"Your agent/skill name"}},"required":["need"]},"outputExample":{"valid":true,"duplicate":false,"request":{"id":"dem_abc","votes":1,"status":"open"}}},{"id":"demand-vote","method":"POST","path":"/v1/demand/vote","url":"https://agent402.co.uk/v1/demand/vote","price":"$0.001","description":"Agent402. Upvote an existing demand request by id ($0.001). Prefer vote over duplicate requests. Free list: GET /v1/demand/top.","serviceName":"Agent402 UK","tags":["demand","vote","openclaw","agents"],"iconUrl":"https://agent402.co.uk/favicon.svg","zeroMarginalCost":true,"inputExample":{"id":"dem_2d7c81790b1c"},"inputSchema":{"properties":{"id":{"type":"string","description":"Demand id from GET /v1/demand/top (must exist or vote 404s after pay)"}},"required":["id"]},"outputExample":{"ok":true,"request":{"id":"dem_2d7c81790b1c","votes":2}}},{"id":"scaffold-tool","method":"POST","path":"/v1/scaffold/tool","url":"https://agent402.co.uk/v1/scaffold/tool","price":"$0.001","description":"Agent402. $0.001 pure-function scaffold: natural-language description → JS/Python leaf code + OpenAPI fragment + x402 call pattern. Deterministic templates (no LLM). Teaches agents how to ship more structure_only tools.","serviceName":"Agent402 UK","tags":["scaffold","codegen","education","utils","deterministic","agents"],"iconUrl":"https://agent402.co.uk/favicon.svg","zeroMarginalCost":true,"inputExample":{"description":"luhn checksum for card numbers","language":"js"},"inputSchema":{"properties":{"description":{"type":"string","description":"What pure function to scaffold (validators/codecs only)"},"language":{"type":"string","description":"js | python"}},"required":["description"]},"outputExample":{"valid":true,"matched_template":"luhn","code":"export function luhnCheck...","constraints":{"pure":true,"no_network":true,"no_llm":true}}},{"id":"scaffold-templates","method":"GET","path":"/v1/scaffold/templates","url":"https://agent402.co.uk/v1/scaffold/templates","price":"$0.001","description":"Agent402. List scaffold templates available for POST /v1/scaffold/tool (pure leaf catalog).","serviceName":"Agent402 UK","tags":["scaffold","discovery","deterministic"],"iconUrl":"https://agent402.co.uk/favicon.svg","zeroMarginalCost":true,"inputExample":{},"inputSchema":{"properties":{}},"outputExample":{"count":6,"templates":[{"id":"luhn","title":"Luhn checksum"}]}},{"id":"html-to-md","method":"POST","path":"/v1/utils/html/to-markdown","url":"https://agent402.co.uk/v1/utils/html/to-markdown","price":"$0.001","description":"Agent402. HTML→Markdown best-effort pure convert + approx token count. Mid-task context shrink — not a browser. Pair with text-metrics.","serviceName":"Agent402 UK","tags":["utils","html","markdown","tokens","deterministic"],"iconUrl":"https://agent402.co.uk/favicon.svg","zeroMarginalCost":true,"inputExample":{"html":"<h1>Hi</h1><p>Hello <b>world</b></p>"},"inputSchema":{"properties":{"html":{"type":"string","description":"HTML fragment"}},"required":["html"]},"outputExample":{"valid":true,"markdown":"# Hi\n\nHello **world**","approx_tokens":5}},{"id":"count-tokens","method":"POST","path":"/v1/utils/count-tokens","url":"https://agent402.co.uk/v1/utils/count-tokens","price":"$0.001","description":"Agent402. BPE-style token count for cl100k/o200k families (gpt-4, gpt-4o, …). High-quality LOCAL estimate — NOT exact tiktoken, no OpenAI API (structure_only). $0.001 vs UFA $0.003. Returns approx_tokens + model + method:estimate. Pair with token-cost.","serviceName":"Agent402 UK","tags":["utils","tokens","budget","bpe","cl100k","o200k","deterministic","agents"],"iconUrl":"https://agent402.co.uk/favicon.svg","zeroMarginalCost":true,"inputExample":{"text":"Hello, world!","model":"gpt-4o"},"inputSchema":{"properties":{"text":{"type":"string","description":"Text to count (UTF-8, max 500k chars)"},"model":{"type":"string","description":"Model id or encoding: gpt-4o | cl100k_base | o200k_base | …"},"encoding":{"type":"string","description":"Alias for model: cl100k_base | o200k_base"}},"required":["text"]},"outputExample":{"valid":true,"approx_tokens":4,"token_count":4,"encoding":"o200k_base","model":"gpt-4o","method":"estimate"}},{"id":"cost-estimate","method":"POST","path":"/v1/utils/cost-estimate","url":"https://agent402.co.uk/v1/utils/cost-estimate","price":"$0.001","description":"Cost estimate for x402 tool budgets: N×price_per_call vs batch_price. Decide sequential vs batch before spending USDC. Not an LLM token counter. Search: cost estimate batch pricing tool-call budget.","serviceName":"Agent402 UK","tags":["cost-estimate","cost estimate","budget","x402-budget","batch-pricing","tool-call-cost","micropayment","sequential-vs-batch","agents","deterministic"],"iconUrl":"https://agent402.co.uk/favicon.svg","zeroMarginalCost":true,"inputExample":{"calls":"50","price_per_call":"0.001","batch_size":"50","batch_price":"0.010"},"inputSchema":{"properties":{"calls":{"type":"string","description":"Number of single calls"},"price_per_call":{"type":"string","description":"USD per single"},"batch_size":{"type":"string","description":"Items per batch"},"batch_price":{"type":"string","description":"USD per batch"}}},"outputExample":{"sequential_usd":0.05,"batched_usd":0.01,"savings_usd":0.04,"prefer":"batch"}},{"id":"uk-postcode-format","method":"POST","path":"/v1/validate/uk-postcode","url":"https://agent402.co.uk/v1/validate/uk-postcode","price":"$0.001","description":"Agent402. UK postcode format normalize (outward+inward). Structure only — for geo use GET /v1/data/uk/postcode.","serviceName":"Agent402 UK","tags":["validate","uk","postcode","format","deterministic"],"iconUrl":"https://agent402.co.uk/favicon.svg","zeroMarginalCost":true,"inputExample":{"postcode":"sw1a1aa"},"inputSchema":{"properties":{"postcode":{"type":"string","description":"UK postcode"}},"required":["postcode"]},"outputExample":{"valid_format":true,"formatted":"SW1A 1AA"}},{"id":"hash","method":"POST","path":"/v1/utils/hash","url":"https://agent402.co.uk/v1/utils/hash","price":"$0.001","description":"Agent402 UK (agent402.co.uk — not agent402.tools). Integrity hash: SHA-256/512/1/MD5 hex of UTF-8. Cache keys, content-addressed blobs, download verify, tool-output digests — without local crypto. Deterministic CPU util; no AI. Search: sha256 checksum digest hash.","serviceName":"Agent402 UK","tags":["utils","crypto","hash","sha256","sha512","md5","checksum","digest","deterministic","mid-task"],"iconUrl":"https://agent402.co.uk/favicon.svg","zeroMarginalCost":true,"inputExample":{"text":"hello","algorithm":"sha256"},"inputSchema":{"properties":{"text":{"type":"string","description":"UTF-8 text to hash"},"algorithm":{"type":"string","description":"sha256 | sha1 | md5 | sha512 (default sha256)"}},"required":["text"]},"outputExample":{"algorithm":"sha256","hex":"2cf24dba5fb0a30e26e83b2ac5b9e29e1b161e5c1fa7425e73043362938b9824","bytes":5}},{"id":"base64","method":"POST","path":"/v1/utils/base64","url":"https://agent402.co.uk/v1/utils/base64","price":"$0.001","description":"Agent402 UK. Encode or decode Base64 for headers, JWT fragments, and binary-safe transport. Call mid-task when the model must not invent padding or corrupt bytes. Deterministic; action encode|decode.","serviceName":"Agent402 UK","tags":["utils","encoding","base64","deterministic"],"iconUrl":"https://agent402.co.uk/favicon.svg","zeroMarginalCost":true,"inputExample":{"action":"encode","text":"hello"},"inputSchema":{"properties":{"action":{"type":"string","description":"encode | decode"},"text":{"type":"string","description":"Input text or base64 string"}},"required":["action","text"]},"outputExample":{"action":"encode","encoded":"aGVsbG8=","text":"hello"}},{"id":"uuid","method":"GET","path":"/v1/utils/uuid","url":"https://agent402.co.uk/v1/utils/uuid","price":"$0.001","description":"UUID generator: batch RFC-4122 UUID v4 (1–100) for correlation IDs, job keys, idempotency tokens. Cryptographically random — not sequential/ULID. Prefer over model-invented IDs. agent402.co.uk not tools. Search: uuid generator uuid-v4.","serviceName":"Agent402 UK","tags":["uuid","uuid-v4","uuid-generator","generate-uuid","correlation-id","idempotency","batch","utils","deterministic","mid-task"],"iconUrl":"https://agent402.co.uk/favicon.svg","zeroMarginalCost":true,"inputExample":{"count":"3"},"inputSchema":{"properties":{"count":{"type":"string","description":"How many UUIDs (1-100)"}}},"outputExample":{"version":"v4","count":3,"uuids":["550e8400-e29b-41d4-a716-446655440000","6ba7b810-9dad-11d1-80b4-00c04fd430c8","7c9e6679-7425-40de-944b-e07fc1f90ae7"]}},{"id":"json-format","method":"POST","path":"/v1/utils/json/format","url":"https://agent402.co.uk/v1/utils/json/format","price":"$0.001","description":"Agent402 UK. Validate and pretty-print JSON; returns parse errors agents can act on. Use before writing configs, tool args, or cache blobs. Deterministic; indent 0–8.","serviceName":"Agent402 UK","tags":["utils","json","format","deterministic"],"iconUrl":"https://agent402.co.uk/favicon.svg","zeroMarginalCost":true,"inputExample":{"json":"{\"a\":1}","indent":2},"inputSchema":{"properties":{"json":{"type":"string","description":"JSON string"},"indent":{"type":"number","description":"Indent spaces 0-8"}},"required":["json"]},"outputExample":{"valid":true,"formatted":"{\n  \"a\": 1\n}","type":"object"}},{"id":"json-diff","method":"POST","path":"/v1/utils/json/diff","url":"https://agent402.co.uk/v1/utils/json/diff","price":"$0.001","description":"Agent402 UK. Structural JSON diff (added/removed/changed paths). Use for mid-task state comparison, config drift, or tool-output checks. Deterministic; not a semantic LLM diff.","serviceName":"Agent402 UK","tags":["utils","json","diff","deterministic"],"iconUrl":"https://agent402.co.uk/favicon.svg","zeroMarginalCost":true,"inputExample":{"a":{"x":1},"b":{"x":2,"y":3}},"inputSchema":{"properties":{"a":{"type":"object","description":"Left value"},"b":{"type":"object","description":"Right value"}},"required":["a","b"]},"outputExample":{"equal":false,"added":["y"],"removed":[],"changed":[{"path":"x","from":1,"to":2}]}},{"id":"json-patch","method":"POST","path":"/v1/utils/json/patch","url":"https://agent402.co.uk/v1/utils/json/patch","price":"$0.001","description":"Agent402 UK. Apply RFC 6902 JSON Patch (add/remove/replace/move/copy/test) to a document. Use for agent state/config updates without rewriting whole blobs. Pure deterministic; max 100 ops; atomic on failure.","serviceName":"Agent402 UK","tags":["utils","json","patch","rfc6902","deterministic"],"iconUrl":"https://agent402.co.uk/favicon.svg","zeroMarginalCost":true,"inputExample":{"document":{"a":1,"b":{"c":2}},"patch":[{"op":"replace","path":"/a","value":3},{"op":"add","path":"/b/d","value":4}]},"inputSchema":{"properties":{"document":{"type":"object","description":"JSON document to patch"},"patch":{"type":"array","description":"RFC 6902 ops array (max 100)"}},"required":["document","patch"]},"outputExample":{"valid":true,"ops_applied":2,"document":{"a":3,"b":{"c":2,"d":4}}}},{"id":"timestamp","method":"GET","path":"/v1/utils/timestamp","url":"https://agent402.co.uk/v1/utils/timestamp","price":"$0.001","description":"Agent402 UK. Convert Unix ↔ ISO timestamps; omit t for now. Use when the agent needs exact epoch/ISO without inventing formats. Deterministic formatting.","serviceName":"Agent402 UK","tags":["utils","time","timestamp","deterministic"],"iconUrl":"https://agent402.co.uk/favicon.svg","zeroMarginalCost":true,"inputExample":{"t":"1710000000"},"inputSchema":{"properties":{"t":{"type":"string","description":"Unix seconds/ms or ISO string; omit for now"}}},"outputExample":{"valid":true,"unix_seconds":1710000000,"iso":"2024-03-09T16:00:00.000Z"}},{"id":"text-metrics","method":"POST","path":"/v1/utils/text/metrics","url":"https://agent402.co.uk/v1/utils/text/metrics","price":"$0.001","description":"Agent402 UK. Chars/bytes/words/lines + rough token estimate for budget-aware agents. Call before large prompts or billable LLM steps. Deterministic counts; token estimate is approximate.","serviceName":"Agent402 UK","tags":["utils","text","tokens","metrics","deterministic"],"iconUrl":"https://agent402.co.uk/favicon.svg","zeroMarginalCost":true,"inputExample":{"text":"hello world"},"inputSchema":{"properties":{"text":{"type":"string","description":"Text to measure"}},"required":["text"]},"outputExample":{"chars":11,"bytes":11,"words":2,"lines":1,"approx_tokens":3}},{"id":"md-html","method":"POST","path":"/v1/utils/markdown/to-html","url":"https://agent402.co.uk/v1/utils/markdown/to-html","price":"$0.001","description":"Agent402 UK. Markdown → HTML (CommonMark via marked). Use for agent-generated docs, tickets, or emails that need deterministic rendering — not LLM HTML invention.","serviceName":"Agent402 UK","tags":["utils","markdown","html","deterministic"],"iconUrl":"https://agent402.co.uk/favicon.svg","zeroMarginalCost":true,"inputExample":{"markdown":"# Hi"},"inputSchema":{"properties":{"markdown":{"type":"string","description":"Markdown source"}},"required":["markdown"]},"outputExample":{"html":"<h1>Hi</h1>\n"}},{"id":"slugify","method":"POST","path":"/v1/utils/slugify","url":"https://agent402.co.uk/v1/utils/slugify","price":"$0.001","description":"Agent402 UK. URL-safe slugify with unicode normalization. Call when building paths, SKUs, or SEO slugs from free text so the agent does not invent unsafe characters.","serviceName":"Agent402 UK","tags":["utils","text","slug","url","deterministic"],"iconUrl":"https://agent402.co.uk/favicon.svg","zeroMarginalCost":true,"inputExample":{"text":"Hello, World!"},"inputSchema":{"properties":{"text":{"type":"string","description":"Text to slugify"}},"required":["text"]},"outputExample":{"slug":"hello-world"}},{"id":"email","method":"POST","path":"/v1/validate/email","url":"https://agent402.co.uk/v1/validate/email","price":"$0.001","description":"Validate email address syntax (RFC-style) before CRM write or outreach. Returns domain + valid_syntax. Pure format gate — not MX, not disposable DNS, not deliverability. Search: validate email email validation.","serviceName":"Agent402 UK","tags":["email","email-validation","validate-email","syntax","rfc","outreach","crm","pre-action","structure_only","deterministic"],"iconUrl":"https://agent402.co.uk/favicon.svg","zeroMarginalCost":true,"inputExample":{"email":"user@example.com"},"inputSchema":{"properties":{"email":{"type":"string","description":"Email address"}},"required":["email"]},"outputExample":{"valid_syntax":true,"domain":"example.com"}},{"id":"iban","method":"POST","path":"/v1/validate/iban","url":"https://agent402.co.uk/v1/validate/iban","price":"$0.001","description":"IBAN validate offline: ISO 13616 length + mod-97 checksum; electronic form for SEPA/payout. structure_only — not bank-name/BIC/existence. Gate before transfer. agent402.co.uk not tools. Search: IBAN validation validate IBAN SEPA.","serviceName":"Agent402 UK","tags":["iban","iban-validation","validate-iban","sepa","mod97","iso13616","payment-validation","payout","pre-action","structure_only","deterministic","mid-task"],"iconUrl":"https://agent402.co.uk/favicon.svg","zeroMarginalCost":true,"inputExample":{"iban":"GB82 WEST 1234 5698 7654 32"},"inputSchema":{"properties":{"iban":{"type":"string","description":"IBAN (spaces ok); e.g. GB82WEST12345698765432"}},"required":["iban"]},"outputExample":{"valid":true,"country":"GB","electronic":"GB82WEST12345698765432"}},{"id":"luhn","method":"POST","path":"/v1/validate/luhn","url":"https://agent402.co.uk/v1/validate/luhn","price":"$0.001","description":"Agent402 UK. Luhn checksum for card-like digit strings (response masks digits). Use before storing payment identifiers when full PCI lookup is out of scope. Deterministic.","serviceName":"Agent402 UK","tags":["validate","luhn","checksum","deterministic"],"iconUrl":"https://agent402.co.uk/favicon.svg","zeroMarginalCost":true,"inputExample":{"number":"4111111111111111"},"inputSchema":{"properties":{"number":{"type":"string","description":"Digits to check"}},"required":["number"]},"outputExample":{"valid":true,"digits":16,"masked":"4111********1111"}},{"id":"phone","method":"POST","path":"/v1/validate/phone","url":"https://agent402.co.uk/v1/validate/phone","price":"$0.001","description":"Agent402 UK. E.164 format phone check (no carrier or HLR lookup). Use to reject malformed numbers before SMS/CRM steps. Deterministic format only.","serviceName":"Agent402 UK","tags":["validate","phone","e164","deterministic"],"iconUrl":"https://agent402.co.uk/favicon.svg","zeroMarginalCost":true,"inputExample":{"phone":"+447700900123"},"inputSchema":{"properties":{"phone":{"type":"string","description":"Phone number"}},"required":["phone"]},"outputExample":{"valid_e164_format":true,"country_code":"44"}},{"id":"json-schema","method":"POST","path":"/v1/validate/json-schema","url":"https://agent402.co.uk/v1/validate/json-schema","price":"$0.001","description":"JSON Schema validator for agent tool outputs: instance vs schema (type, required, properties, enum, min/max). Catch LLM structured-output mistakes before side effects. Deterministic subset. Search: json schema json-schema schema validation.","serviceName":"Agent402 UK","tags":["json-schema","json schema","schema-validation","json-validator","llm-outputs","structured-output","validate","pre-action","deterministic","mid-task"],"iconUrl":"https://agent402.co.uk/favicon.svg","zeroMarginalCost":true,"inputExample":{"instance":{"age":3},"schema":{"type":"object","required":["age"],"properties":{"age":{"type":"integer","minimum":0}}}},"inputSchema":{"properties":{"instance":{"type":"object","description":"Value to validate"},"schema":{"type":"object","description":"JSON Schema subset"}},"required":["instance","schema"]},"outputExample":{"valid":true,"errors":[]}},{"id":"npv","method":"POST","path":"/v1/math/npv","url":"https://agent402.co.uk/v1/math/npv","price":"$0.002","description":"Finmath NPV: net present value of cashflows (rate + array). Deterministic finance math LLMs miscompute. POST rate + cashflows → NPV. Search: NPV net present value finmath.","serviceName":"Agent402 UK","tags":["finmath","npv","net-present-value","cashflows","discount","finance","math","deterministic"],"iconUrl":"https://agent402.co.uk/favicon.svg","zeroMarginalCost":true,"inputExample":{"rate":0.1,"cashflows":[-100,40,50,60]},"inputSchema":{"properties":{"rate":{"type":"number","description":"Discount rate per period"},"cashflows":{"type":"array","description":"Cashflows by period"}},"required":["rate","cashflows"]},"outputExample":{"npv":22.95393344269037}},{"id":"irr","method":"POST","path":"/v1/math/irr","url":"https://agent402.co.uk/v1/math/irr","price":"$0.002","description":"Agent402 UK. Internal rate of return (Newton-Raphson) for a cashflow series. Use when the agent must not approximate IRR with token math. Returns irr + converged.","serviceName":"Agent402 UK","tags":["math","finance","irr","deterministic"],"iconUrl":"https://agent402.co.uk/favicon.svg","zeroMarginalCost":true,"inputExample":{"cashflows":[-100,40,50,60]},"inputSchema":{"properties":{"cashflows":{"type":"array","description":"Cashflows by period"},"guess":{"type":"number","description":"Initial guess (default 0.1)"}},"required":["cashflows"]},"outputExample":{"irr":0.228901,"converged":true}},{"id":"black-scholes","method":"POST","path":"/v1/math/black-scholes","url":"https://agent402.co.uk/v1/math/black-scholes","price":"$0.002","description":"Black-Scholes finmath: European call/put price + Greeks (delta, gamma, theta, vega, rho). Inputs S,K,T,r,sigma. Deterministic BSM — do not approximate options with an LLM. Search: black scholes options pricing finmath.","serviceName":"Agent402 UK","tags":["finmath","black-scholes","black scholes","bsm","options","options-pricing","greeks","delta","european-option","math","deterministic"],"iconUrl":"https://agent402.co.uk/favicon.svg","zeroMarginalCost":true,"inputExample":{"S":100,"K":100,"T":1,"r":0.05,"sigma":0.2,"type":"call"},"inputSchema":{"properties":{"S":{"type":"number","description":"Spot"},"K":{"type":"number","description":"Strike"},"T":{"type":"number","description":"Years to expiry"},"r":{"type":"number","description":"Risk-free rate"},"sigma":{"type":"number","description":"Volatility"},"type":{"type":"string","description":"call | put"}},"required":["S","K","T","r","sigma"]},"outputExample":{"type":"call","price":10.450583572185565,"greeks":{"delta":0.6368306511756191,"gamma":0.018762017345846895}}},{"id":"impermanent-loss","method":"POST","path":"/v1/math/impermanent-loss","url":"https://agent402.co.uk/v1/math/impermanent-loss","price":"$0.002","description":"Agent402 UK. Uniswap-style constant-product impermanent loss for a price ratio (new/old). Use for DeFi risk checks agents would otherwise guess. Deterministic pct.","serviceName":"Agent402 UK","tags":["math","defi","impermanent-loss","amm","deterministic"],"iconUrl":"https://agent402.co.uk/favicon.svg","zeroMarginalCost":true,"inputExample":{"price_ratio":1.5},"inputSchema":{"properties":{"price_ratio":{"type":"number","description":"New/old price ratio"}},"required":["price_ratio"]},"outputExample":{"price_ratio":1.5,"impermanent_loss_pct":-2.020305089104421}},{"id":"sharpe","method":"POST","path":"/v1/math/sharpe","url":"https://agent402.co.uk/v1/math/sharpe","price":"$0.002","description":"Agent402 UK. Sharpe ratio from a return series (+ optional risk-free). Deterministic portfolio metric — do not invent means/std from tokens.","serviceName":"Agent402 UK","tags":["math","finance","sharpe","risk","deterministic"],"iconUrl":"https://agent402.co.uk/favicon.svg","zeroMarginalCost":true,"inputExample":{"returns":[0.01,-0.02,0.015,0],"risk_free":0},"inputSchema":{"properties":{"returns":{"type":"array","description":"Period returns"},"risk_free":{"type":"number","description":"Risk-free per period"}},"required":["returns"]},"outputExample":{"sharpe":0.122,"mean":0.00125,"stdev":0.0152}},{"id":"compound","method":"POST","path":"/v1/math/compound","url":"https://agent402.co.uk/v1/math/compound","price":"$0.002","description":"Agent402 UK. Compound interest: principal, rate, periods, optional compounds_per_period. Exact growth math for agent planners that should not approximate exponents.","serviceName":"Agent402 UK","tags":["math","finance","compound","interest","deterministic"],"iconUrl":"https://agent402.co.uk/favicon.svg","zeroMarginalCost":true,"inputExample":{"principal":1000,"rate":0.05,"periods":10,"compounds_per_period":1},"inputSchema":{"properties":{"principal":{"type":"number","description":"Starting amount"},"rate":{"type":"number","description":"Rate per period"},"periods":{"type":"number","description":"Number of periods"},"compounds_per_period":{"type":"number","description":"Compounds per period"}},"required":["principal","rate","periods"]},"outputExample":{"amount":1628.894626777442,"interest":628.894626777442}},{"id":"money","method":"POST","path":"/v1/math/money","url":"https://agent402.co.uk/v1/math/money","price":"$0.001","description":"Agent402. Decimal money arithmetic at ISO 4217 minor-unit scale — no float. Ops: add|sub|mul|div|allocate|round. Invoice lines, fee splits, tax multipliers, payout allocation. Pure deterministic leaf; amounts as strings.","serviceName":"Agent402 UK","tags":["math","money","decimal","currency","allocate","invoice","deterministic","global"],"iconUrl":"https://agent402.co.uk/favicon.svg","zeroMarginalCost":true,"inputExample":{"op":"allocate","amount":"10.00","parts":3,"currency":"USD"},"inputSchema":{"properties":{"op":{"type":"string","description":"add | sub | mul | div | allocate | round"},"currency":{"type":"string","description":"ISO 4217 code for scale (JPY=0, USD/GBP=2, BHD=3; USDC=6). Default scale 2"},"scale":{"type":"string","description":"Optional override 0-18 minor digits"},"amounts":{"type":"array","description":"For add: list of decimal strings"},"a":{"type":"string","description":"Left operand (money decimal string)"},"b":{"type":"string","description":"Right operand or factor/divisor"},"amount":{"type":"string","description":"For allocate|round|mul|div alias of a"},"parts":{"type":"number","description":"allocate into N equal parts (1-100); number preferred (string also accepted)"},"ratios":{"type":"array","description":"allocate by weights e.g. [1,2,1]"},"mode":{"type":"string","description":"half_up | half_even | floor | ceil | down | up (mul/div/round)"}},"required":["op"]},"outputExample":{"valid":true,"op":"allocate","currency":"USD","scale":2,"results":["3.34","3.33","3.33"],"sum":"10.00"}},{"id":"cron-next","method":"GET","path":"/v1/time/cron-next","url":"https://agent402.co.uk/v1/time/cron-next","price":"$0.001","description":"Agent402 UK. Next N fire times for a cron expression (IANA tz-aware). Use for schedule planning agents that must not invent calendar math. count 1–50.","serviceName":"Agent402 UK","tags":["time","cron","schedule","deterministic"],"iconUrl":"https://agent402.co.uk/favicon.svg","zeroMarginalCost":true,"inputExample":{"expression":"0 9 * * 1-5","count":"5","tz":"Europe/London"},"inputSchema":{"properties":{"expression":{"type":"string","description":"Cron expression"},"count":{"type":"string","description":"How many next runs (1-50)"},"tz":{"type":"string","description":"IANA timezone"}},"required":["expression"]},"outputExample":{"valid":true,"next":["2026-08-11T08:00:00.000Z","2026-08-12T08:00:00.000Z"]}},{"id":"cron","method":"POST","path":"/v1/time/cron","url":"https://agent402.co.uk/v1/time/cron","price":"$0.001","description":"Agent402 UK. Validate a cron expression and return next N fire times (IANA tz-aware). POST body for scheduler loops; optional from (ISO). Complements GET /v1/time/cron-next. count 1–50. Pure deterministic.","serviceName":"Agent402 UK","tags":["time","cron","schedule","validate","deterministic"],"iconUrl":"https://agent402.co.uk/favicon.svg","zeroMarginalCost":true,"inputExample":{"expression":"0 9 * * 1-5","count":5,"tz":"Europe/London","from":"2026-08-11T00:00:00Z"},"inputSchema":{"properties":{"expression":{"type":"string","description":"Cron expression (5 or 6 field)"},"count":{"type":"number","description":"How many next runs (1-50)"},"tz":{"type":"string","description":"IANA timezone (default UTC)"},"from":{"type":"string","description":"ISO origin for next fires (default now)"}},"required":["expression"]},"outputExample":{"valid":true,"expression":"0 9 * * 1-5","timezone":"Europe/London","from":"2026-08-11T00:00:00.000Z","count":5,"next":["2026-08-11T08:00:00.000Z","2026-08-12T08:00:00.000Z"],"normalized":"0 9 * * 1-5"}},{"id":"tz-convert","method":"GET","path":"/v1/time/convert","url":"https://agent402.co.uk/v1/time/convert","price":"$0.001","description":"Agent402 UK. Convert a timestamp between IANA timezones. Use for multi-region agent calendars without DST mistakes. Query: from, to, optional time (default now).","serviceName":"Agent402 UK","tags":["time","timezone","convert","deterministic"],"iconUrl":"https://agent402.co.uk/favicon.svg","zeroMarginalCost":true,"inputExample":{"time":"2026-08-10T12:00:00Z","from":"UTC","to":"America/New_York"},"inputSchema":{"properties":{"time":{"type":"string","description":"ISO time (default now)"},"from":{"type":"string","description":"Source IANA timezone"},"to":{"type":"string","description":"Target IANA timezone"}},"required":["from","to"]},"outputExample":{"valid":true,"utc_iso":"2026-08-10T12:00:00.000Z","from":"UTC","to":"America/New_York"}},{"id":"business-days","method":"GET","path":"/v1/time/business-days","url":"https://agent402.co.uk/v1/time/business-days","price":"$0.001","description":"Business days calculator: count working days between dates (inclusive). Default weekends-only; country=GB excludes UK bank holidays (GOV.UK). SLA/delivery ETA. Search: business days working days.","serviceName":"Agent402 UK","tags":["business-days","business days","working-days","working days","sla","deadline","bank-holiday","uk","calendar","time","deterministic"],"iconUrl":"https://agent402.co.uk/favicon.svg","zeroMarginalCost":true,"inputExample":{"start":"2026-08-01","end":"2026-08-10","country":"GB","region":"england-and-wales"},"inputSchema":{"properties":{"start":{"type":"string","description":"Start date YYYY-MM-DD"},"end":{"type":"string","description":"End date YYYY-MM-DD"},"country":{"type":"string","description":"GB|UK enables UK bank holidays"},"region":{"type":"string","description":"england-and-wales | scotland | northern-ireland"},"division":{"type":"string","description":"Alias for region (GOV.UK key)"},"exclude_holidays":{"type":"string","description":"true|false — default true when country/region set"}},"required":["start","end"]},"outputExample":{"start":"2026-08-01","end":"2026-08-10","business_days":6,"note":"Weekends and UK bank holidays excluded."}},{"id":"add-business-days","method":"GET","path":"/v1/time/add-business-days","url":"https://agent402.co.uk/v1/time/add-business-days","price":"$0.001","description":"Agent402 UK. Add (or subtract) N business days from a start date. Optional country=GB + region for UK bank holidays (GOV.UK). Use for deadline / cut-off math without inventing holiday calendars.","serviceName":"Agent402 UK","tags":["time","business","uk","sla","bank-holiday","deterministic"],"iconUrl":"https://agent402.co.uk/favicon.svg","zeroMarginalCost":true,"inputExample":{"start":"2026-08-28","days":"3","country":"GB","region":"england-and-wales"},"inputSchema":{"properties":{"start":{"type":"string","description":"Start date YYYY-MM-DD"},"days":{"type":"string","description":"Business days to add (negative = backward)"},"country":{"type":"string","description":"GB|UK enables UK holidays"},"region":{"type":"string","description":"england-and-wales | scotland | northern-ireland"}},"required":["start","days"]},"outputExample":{"start":"2026-08-28","days":3,"result":"2026-09-03","region":"england-and-wales"}},{"id":"is-business-day","method":"GET","path":"/v1/time/is-business-day","url":"https://agent402.co.uk/v1/time/is-business-day","price":"$0.001","description":"Agent402 UK. Is a date a business day? Weekends always off; with country=GB also checks UK bank holidays for the region. Cheap probe for cut-off and SLA agents.","serviceName":"Agent402 UK","tags":["time","business","uk","bank-holiday","deterministic"],"iconUrl":"https://agent402.co.uk/favicon.svg","zeroMarginalCost":true,"inputExample":{"date":"2026-08-31","country":"GB","region":"england-and-wales"},"inputSchema":{"properties":{"date":{"type":"string","description":"Date YYYY-MM-DD"},"country":{"type":"string","description":"GB|UK enables UK holidays"},"region":{"type":"string","description":"england-and-wales | scotland | northern-ireland"}},"required":["date"]},"outputExample":{"date":"2026-08-31","is_business_day":false,"is_holiday":true,"holiday":{"title":"Summer bank holiday"}}},{"id":"uk-bank-holidays","method":"GET","path":"/v1/uk/bank-holidays","url":"https://agent402.co.uk/v1/uk/bank-holidays","price":"$0.001","description":"Agent402 UK (agent402.co.uk — not agent402.tools). Official UK bank holidays (England & Wales, Scotland, Northern Ireland) from GOV.UK OGL JSON. Filter division+year. Payroll, CHAPS cut-offs, SLA calendars — prefer over Nager /v1/data/holidays for UK. Search: UK bank holiday GOV.UK calendar.","serviceName":"Agent402 UK","tags":["time","uk","bank-holiday","bank-holidays","calendar","govuk","ogl","payroll","chaps","sla","holidays"],"iconUrl":"https://agent402.co.uk/favicon.svg","zeroMarginalCost":true,"inputExample":{"division":"england-and-wales","year":"2026"},"inputSchema":{"properties":{"division":{"type":"string","description":"england-and-wales | scotland | northern-ireland (or all)"},"region":{"type":"string","description":"Alias for division"},"year":{"type":"string","description":"Calendar year filter"},"from":{"type":"string","description":"From YYYY-MM-DD inclusive"},"to":{"type":"string","description":"To YYYY-MM-DD inclusive"}}},"outputExample":{"count":8,"events":[{"title":"New Year’s Day","date":"2026-01-01","division":"england-and-wales"}],"source":"https://www.gov.uk/bank-holidays.json"}},{"id":"validate-batch","method":"POST","path":"/v1/validate/batch","url":"https://agent402.co.uk/v1/validate/batch","price":"$0.010","description":"Agent402 UK. Batch pre-action validation: up to 50 email/IBAN/phone/Luhn/json-schema checks in one x402 payment ($0.010). Partial success per item. Prefer over N sequential validates when n≥5.","serviceName":"Agent402 UK","tags":["validate","batch","pre-action","kyb","email","iban"],"iconUrl":"https://agent402.co.uk/favicon.svg","zeroMarginalCost":true,"inputExample":{"items":[{"op":"email","email":"a@example.com"},{"op":"iban","iban":"GB82WEST12345698765432"},{"op":"phone","phone":"+447700900123","id":"p1"}]},"inputSchema":{"properties":{"items":{"type":"array","description":"1-50 ops; each needs op + fields (email|iban|luhn|phone|json-schema)"},"stop_on_error":{"type":"boolean","description":"Stop after first item error (default false)"}},"required":["items"]},"outputExample":{"summary":{"total":3,"succeeded":3,"failed":0},"results":[{"ok":true,"op":"email","result":{"valid_syntax":true}}]}},{"id":"utils-batch","method":"POST","path":"/v1/utils/batch","url":"https://agent402.co.uk/v1/utils/batch","price":"$0.010","description":"Agent402 UK. Batch deterministic utils: hash, base64, JSON format/diff, text metrics, markdown→HTML, slugify, UUID. Up to 50 ops, one $0.010 payment. Prefer when n≥5 mid-task tools.","serviceName":"Agent402 UK","tags":["utils","batch","hash","json","agent-tools"],"iconUrl":"https://agent402.co.uk/favicon.svg","zeroMarginalCost":true,"inputExample":{"items":[{"op":"hash","text":"hello","algorithm":"sha256"},{"op":"base64","action":"encode","text":"hello"},{"op":"slugify","text":"Hello, World!"}]},"inputSchema":{"properties":{"items":{"type":"array","description":"1-50 ops: hash|base64|json-format|json-diff|text-metrics|markdown-to-html|slugify|uuid"},"stop_on_error":{"type":"boolean","description":"Stop after first item error (default false)"}},"required":["items"]},"outputExample":{"summary":{"total":3,"succeeded":3,"failed":0},"results":[{"ok":true,"op":"hash","result":{"hex":"2cf24dba..."}}]}},{"id":"uk-company-number","method":"POST","path":"/v1/validate/uk-company-number","url":"https://agent402.co.uk/v1/validate/uk-company-number","price":"$0.001","description":"Agent402 UK. Normalise/validate UK company number format (zero-pad, SC/NI prefixes). Pure logic — no register lookup, no API key. Use before KYB steps to reject garbage numbers.","serviceName":"Agent402 UK","tags":["validate","uk","company-number","kyb","deterministic"],"iconUrl":"https://agent402.co.uk/favicon.svg","zeroMarginalCost":true,"inputExample":{"company_number":"123456"},"inputSchema":{"properties":{"company_number":{"type":"string","description":"Company number (digits or SC/NI/… prefix)"}},"required":["company_number"]},"outputExample":{"valid_format":true,"company_number":"00123456","jurisdiction_hint":"england-wales"}},{"id":"uk-bank","method":"POST","path":"/v1/validate/uk-bank","url":"https://agent402.co.uk/v1/validate/uk-bank","price":"$0.001","description":"Agent402 UK (agent402.co.uk — not agent402.tools). Vocalink UK bank modulus on sort code + account (MOD10/11/DBLAL + exceptions). Checksum only — not bank name/existence. Pre-action payout gate; rare x402 niche. Search: UK sort code account modulus Vocalink.","serviceName":"Agent402 UK","tags":["validate","uk","bank","modulus","vocalink","sort-code","account-number","payout","pre-action","structure_only","deterministic"],"iconUrl":"https://agent402.co.uk/favicon.svg","zeroMarginalCost":true,"inputExample":{"sort_code":"200000","account_number":"55779911"},"inputSchema":{"properties":{"sort_code":{"type":"string","description":"6-digit sort code (##-##-## ok)"},"account_number":{"type":"string","description":"Account number (6–10 digits)"}},"required":["sort_code","account_number"]},"outputExample":{"valid":true,"sort_code":"200000","account_number":"55779911","algorithm":"vocalink-modulus","provenance":{"depth":"checksum_only"}}},{"id":"vat-format","method":"POST","path":"/v1/validate/vat-format","url":"https://agent402.co.uk/v1/validate/vat-format","price":"$0.001","description":"Agent402. Multi-country VAT number format gate (EU27 + GB/XI + EL rules). Structure only — not live VIES. Global pre-action before tax/invoice steps.","serviceName":"Agent402 UK","tags":["validate","vat","eu","tax","global","pre-action","deterministic"],"iconUrl":"https://agent402.co.uk/favicon.svg","zeroMarginalCost":true,"inputExample":{"vat":"DE123456789"},"inputSchema":{"properties":{"vat":{"type":"string","description":"VAT with country prefix"},"country":{"type":"string","description":"Optional ISO if body has no prefix"}},"required":["vat"]},"outputExample":{"valid_format":true,"country":"DE","known_rule":true}},{"id":"bic","method":"POST","path":"/v1/validate/bic","url":"https://agent402.co.uk/v1/validate/bic","price":"$0.001","description":"Agent402. SWIFT BIC / ISO 9362 format (8 or 11). Global bank routing gate — format only, not directory lookup.","serviceName":"Agent402 UK","tags":["validate","bic","swift","iban","global","deterministic"],"iconUrl":"https://agent402.co.uk/favicon.svg","zeroMarginalCost":true,"inputExample":{"bic":"DEUTDEFF"},"inputSchema":{"properties":{"bic":{"type":"string","description":"BIC/SWIFT code"}},"required":["bic"]},"outputExample":{"valid_format":true,"country":"DE","bank_code":"DEUT"}},{"id":"lei","method":"POST","path":"/v1/validate/lei","url":"https://agent402.co.uk/v1/validate/lei","price":"$0.001","description":"Agent402. Legal Entity Identifier (ISO 17442) format + mod-97 checksum. Global KYB gate — not GLEIF live lookup.","serviceName":"Agent402 UK","tags":["validate","lei","kyb","global","deterministic"],"iconUrl":"https://agent402.co.uk/favicon.svg","zeroMarginalCost":true,"inputExample":{"lei":"5493001KJTIIGC8Y1R12"},"inputSchema":{"properties":{"lei":{"type":"string","description":"20-char LEI"}},"required":["lei"]},"outputExample":{"valid":true,"valid_checksum":true}},{"id":"eori","method":"POST","path":"/v1/validate/eori","url":"https://agent402.co.uk/v1/validate/eori","price":"$0.001","description":"Agent402. EORI format gate (country + local id) for customs/trade agents. Structure only — not live registration.","serviceName":"Agent402 UK","tags":["validate","eori","customs","eu","global","deterministic"],"iconUrl":"https://agent402.co.uk/favicon.svg","zeroMarginalCost":true,"inputExample":{"eori":"GB123456789000"},"inputSchema":{"properties":{"eori":{"type":"string","description":"EORI number"}},"required":["eori"]},"outputExample":{"valid_format":true,"country":"GB"}},{"id":"aba-routing","method":"POST","path":"/v1/validate/aba-routing","url":"https://agent402.co.uk/v1/validate/aba-routing","price":"$0.001","description":"Agent402. US ABA routing number 9-digit format + Federal Reserve weighted checksum (3-7-1). $0.001 structure/checksum only — not bank existence or ACH reachability.","serviceName":"Agent402 UK","tags":["validate","aba","routing","us","payments","checksum","deterministic"],"iconUrl":"https://agent402.co.uk/favicon.svg","zeroMarginalCost":true,"inputExample":{"routing":"021000021"},"inputSchema":{"properties":{"routing":{"type":"string","description":"9-digit ABA routing number"}},"required":["routing"]},"outputExample":{"valid":true,"valid_format":true,"valid_checksum":true,"electronic":"021000021","provenance":{"depth":"checksum_only"}}},{"id":"isin","method":"POST","path":"/v1/validate/isin","url":"https://agent402.co.uk/v1/validate/isin","price":"$0.001","description":"Agent402. ISIN (ISO 6166) format + Luhn check digit for securities ids. $0.001 pure leaf — not exchange listing or CUSIP/SEDOL registry.","serviceName":"Agent402 UK","tags":["validate","isin","securities","finance","checksum","deterministic"],"iconUrl":"https://agent402.co.uk/favicon.svg","zeroMarginalCost":true,"inputExample":{"isin":"US0378331005"},"inputSchema":{"properties":{"isin":{"type":"string","description":"12-char ISIN (e.g. US0378331005)"}},"required":["isin"]},"outputExample":{"valid":true,"valid_format":true,"valid_checksum":true,"country":"US","nsin":"037833100","provenance":{"depth":"checksum_only"}}},{"id":"business-days-intl","method":"GET","path":"/v1/time/business-days-intl","url":"https://agent402.co.uk/v1/time/business-days-intl","price":"$0.001","description":"Agent402. Business days between dates for any ISO country using Nager.Date public holidays + weekends. Global SLA math. For official UK bank holidays use country=GB on /v1/time/business-days + /v1/uk/bank-holidays.","serviceName":"Agent402 UK","tags":["time","business","holidays","global","sla","nager"],"iconUrl":"https://agent402.co.uk/favicon.svg","zeroMarginalCost":true,"inputExample":{"start":"2026-08-01","end":"2026-08-31","country":"DE"},"inputSchema":{"properties":{"start":{"type":"string","description":"YYYY-MM-DD"},"end":{"type":"string","description":"YYYY-MM-DD"},"country":{"type":"string","description":"ISO alpha-2"},"exclude_holidays":{"type":"string","description":"default true"}},"required":["start","end","country"]},"outputExample":{"country":"DE","business_days":21,"holiday_days":1}},{"id":"eth-units","method":"POST","path":"/v1/utils/eth-units","url":"https://agent402.co.uk/v1/utils/eth-units","price":"$0.001","description":"Agent402. Convert wei ↔ gwei ↔ ether as precise decimal strings. Global EVM agent mid-task — no float drift.","serviceName":"Agent402 UK","tags":["utils","ethereum","wei","web3","global","deterministic"],"iconUrl":"https://agent402.co.uk/favicon.svg","zeroMarginalCost":true,"inputExample":{"amount":"1.5","from":"ether","to":"wei"},"inputSchema":{"properties":{"amount":{"type":"string","description":"Amount"},"from":{"type":"string","description":"wei|gwei|ether"},"to":{"type":"string","description":"wei|gwei|ether"}},"required":["amount","from","to"]},"outputExample":{"valid":true,"result":"1500000000000000000"}},{"id":"token-amount","method":"POST","path":"/v1/utils/token-amount","url":"https://agent402.co.uk/v1/utils/token-amount","price":"$0.001","description":"Agent402. Scale human token amounts to/from atomic units for any decimals 0–36 (ERC-20 style). Global DeFi agent glue.","serviceName":"Agent402 UK","tags":["utils","tokens","defi","decimals","global","deterministic"],"iconUrl":"https://agent402.co.uk/favicon.svg","zeroMarginalCost":true,"inputExample":{"amount":"1.5","decimals":"6","direction":"to_atomic"},"inputSchema":{"properties":{"amount":{"type":"string","description":"Amount string"},"decimals":{"type":"string","description":"0-36"},"direction":{"type":"string","description":"to_atomic | to_human"}},"required":["amount","decimals","direction"]},"outputExample":{"valid":true,"result":"1500000"}},{"id":"geo-distance","method":"GET","path":"/v1/geo/distance","url":"https://agent402.co.uk/v1/geo/distance","price":"$0.001","description":"Agent402. Haversine great-circle distance between two lat/lon points (km or mi). Global logistics mid-task — not road routing.","serviceName":"Agent402 UK","tags":["geo","distance","haversine","global","deterministic"],"iconUrl":"https://agent402.co.uk/favicon.svg","zeroMarginalCost":true,"inputExample":{"lat1":"51.5","lon1":"-0.12","lat2":"48.85","lon2":"2.35","unit":"km"},"inputSchema":{"properties":{"lat1":{"type":"string","description":"Origin lat"},"lon1":{"type":"string","description":"Origin lon"},"lat2":{"type":"string","description":"Dest lat"},"lon2":{"type":"string","description":"Dest lon"},"unit":{"type":"string","description":"km|mi"}},"required":["lat1","lon1","lat2","lon2"]},"outputExample":{"valid":true,"distance":343,"unit":"km"}},{"id":"duration","method":"POST","path":"/v1/utils/duration","url":"https://agent402.co.uk/v1/utils/duration","price":"$0.001","description":"Agent402. Parse ISO-8601 duration (PnYnMnDTnHnMnS) to components + total_seconds. Global schedule agents.","serviceName":"Agent402 UK","tags":["utils","time","duration","iso8601","global","deterministic"],"iconUrl":"https://agent402.co.uk/favicon.svg","zeroMarginalCost":true,"inputExample":{"duration":"P1DT2H30M"},"inputSchema":{"properties":{"duration":{"type":"string","description":"ISO-8601 duration"}},"required":["duration"]},"outputExample":{"valid":true,"days":1,"hours":2,"minutes":30,"total_seconds":95400}},{"id":"caip2","method":"GET","path":"/v1/chain/caip2","url":"https://agent402.co.uk/v1/chain/caip2","price":"$0.001","description":"Agent402. Parse CAIP-2 chain ids (eip155:8453, solana:mainnet). Multi-chain agent routing glue.","serviceName":"Agent402 UK","tags":["chain","caip","ethereum","solana","global","deterministic"],"iconUrl":"https://agent402.co.uk/favicon.svg","zeroMarginalCost":true,"inputExample":{"id":"eip155:8453"},"inputSchema":{"properties":{"id":{"type":"string","description":"CAIP-2 chain id"}},"required":["id"]},"outputExample":{"valid":true,"namespace":"eip155","reference":"8453","label":"Base"}},{"id":"caip10","method":"GET","path":"/v1/chain/caip10","url":"https://agent402.co.uk/v1/chain/caip10","price":"$0.001","description":"Agent402. Parse CAIP-10 account ids (namespace:reference:address). Cross-chain identity mid-task.","serviceName":"Agent402 UK","tags":["chain","caip","account","global","deterministic"],"iconUrl":"https://agent402.co.uk/favicon.svg","zeroMarginalCost":true,"inputExample":{"id":"eip155:8453:0x9EF92b278a3867C429751390EC427736eB4BABB2"},"inputSchema":{"properties":{"id":{"type":"string","description":"CAIP-10 account id"}},"required":["id"]},"outputExample":{"valid":true,"caip2":"eip155:8453","address":"0x9EF9…"}},{"id":"pre-action","method":"POST","path":"/v1/validate/pre-action","url":"https://agent402.co.uk/v1/validate/pre-action","price":"$0.003","description":"Pre-action validate kit: email+IBAN+phone+Luhn+UK VAT+company#+Vocalink uk-bank+currency/country in one $0.003. Fail-fast structure gates before payout/CRM. Search: pre-action preaction before pay.","serviceName":"Agent402 UK","tags":["pre-action","preaction","structure-gate","fail-fast","iban","email","uk-bank","kyb","payout-gate","kit","batch","deterministic"],"iconUrl":"https://agent402.co.uk/favicon.svg","zeroMarginalCost":true,"inputExample":{"email":"a@example.com","iban":"GB82WEST12345698765432","sort_code":"200000","account_number":"55779911"},"inputSchema":{"properties":{"email":{"type":"string","description":"Email syntax"},"iban":{"type":"string","description":"IBAN"},"phone":{"type":"string","description":"Phone"},"uk_vat":{"type":"string","description":"UK VAT"},"company_number":{"type":"string","description":"UK company number"},"sort_code":{"type":"string","description":"With account_number for modulus"},"account_number":{"type":"string","description":"With sort_code for modulus"}}},"outputExample":{"all_ok":true,"summary":{"total":3,"passed":3,"failed":0},"kit":"pre-action-validate"}},{"id":"sepa-countries","method":"GET","path":"/v1/payments/sepa-countries","url":"https://agent402.co.uk/v1/payments/sepa-countries","price":"$0.001","description":"Agent402 UK. Static SEPA country ISO list for payout routing agents. Not live EPC membership — structure table only.","serviceName":"Agent402 UK","tags":["payments","sepa","iban","static","deterministic"],"iconUrl":"https://agent402.co.uk/favicon.svg","zeroMarginalCost":true,"inputExample":{},"inputSchema":{"properties":{}},"outputExample":{"count":40,"includes_gb":true}},{"id":"uk-vat","method":"POST","path":"/v1/validate/uk-vat","url":"https://agent402.co.uk/v1/validate/uk-vat","price":"$0.001","description":"Agent402 UK. Validate UK VAT number format (GB/XI + 9/12 digits or GD/HA). Pure logic — not live HMRC/VIES. Pre-action gate before tax steps.","serviceName":"Agent402 UK","tags":["validate","uk","vat","tax","deterministic"],"iconUrl":"https://agent402.co.uk/favicon.svg","zeroMarginalCost":true,"inputExample":{"vat":"GB123456789"},"inputSchema":{"properties":{"vat":{"type":"string","description":"VAT number"}},"required":["vat"]},"outputExample":{"valid_format":true,"prefix":"GB","electronic":"GB123456789"}},{"id":"uk-sort-code","method":"POST","path":"/v1/validate/uk-sort-code","url":"https://agent402.co.uk/v1/validate/uk-sort-code","price":"$0.001","description":"Agent402 UK. Validate/normalise UK sort code to ##-##-## (6 digits). Format only — not bank lookup. Use before payout rails.","serviceName":"Agent402 UK","tags":["validate","uk","bank","sort-code","deterministic"],"iconUrl":"https://agent402.co.uk/favicon.svg","zeroMarginalCost":true,"inputExample":{"sort_code":"200000"},"inputSchema":{"properties":{"sort_code":{"type":"string","description":"6-digit sort code"}},"required":["sort_code"]},"outputExample":{"valid_format":true,"formatted":"20-00-00","digits":"200000"}},{"id":"uk-account-number","method":"POST","path":"/v1/validate/uk-account-number","url":"https://agent402.co.uk/v1/validate/uk-account-number","price":"$0.001","description":"Agent402 UK. Validate UK account number shape (6–8 digits, zero-pad to 8). Optional sort_code. Format only — not Vocalink modulus.","serviceName":"Agent402 UK","tags":["validate","uk","bank","account","deterministic"],"iconUrl":"https://agent402.co.uk/favicon.svg","zeroMarginalCost":true,"inputExample":{"account_number":"12345678","sort_code":"20-00-00"},"inputSchema":{"properties":{"account_number":{"type":"string","description":"Account number"},"sort_code":{"type":"string","description":"Optional sort code"}},"required":["account_number"]},"outputExample":{"valid_format":true,"digits":"12345678"}},{"id":"currency-code","method":"POST","path":"/v1/validate/currency-code","url":"https://agent402.co.uk/v1/validate/currency-code","price":"$0.001","description":"Agent402 UK. Quick currency code gate (common ISO 4217 + USDC/EURC). Use before FX convert. Not full ISO table.","serviceName":"Agent402 UK","tags":["validate","currency","fx","deterministic"],"iconUrl":"https://agent402.co.uk/favicon.svg","zeroMarginalCost":true,"inputExample":{"code":"GBP"},"inputSchema":{"properties":{"code":{"type":"string","description":"Currency code"}},"required":["code"]},"outputExample":{"code":"GBP","valid_format":true,"known_common":true}},{"id":"country-code","method":"POST","path":"/v1/validate/country-code","url":"https://agent402.co.uk/v1/validate/country-code","price":"$0.001","description":"Agent402 UK. ISO alpha-2 country code format + common allowlist (UK→GB). Pre-action for geo-routed tools.","serviceName":"Agent402 UK","tags":["validate","country","geo","deterministic"],"iconUrl":"https://agent402.co.uk/favicon.svg","zeroMarginalCost":true,"inputExample":{"code":"GB"},"inputSchema":{"properties":{"code":{"type":"string","description":"ISO alpha-2"}},"required":["code"]},"outputExample":{"code":"GB","iso_alpha2":"GB","known_common":true}},{"id":"jwt-decode","method":"POST","path":"/v1/utils/jwt/decode","url":"https://agent402.co.uk/v1/utils/jwt/decode","price":"$0.001","description":"Agent402 UK. Decode JWT header+payload without verifying signature. Debug OIDC/agent tokens mid-task. Never trust claims for auth from this alone.","serviceName":"Agent402 UK","tags":["utils","jwt","auth","debug","deterministic"],"iconUrl":"https://agent402.co.uk/favicon.svg","zeroMarginalCost":true,"inputExample":{"token":"eyJhbGciOiJub25lIn0.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4ifQ."},"inputSchema":{"properties":{"token":{"type":"string","description":"JWT string"}},"required":["token"]},"outputExample":{"valid":true,"payload":{"sub":"1234567890"},"signature_present":false}},{"id":"url-parse","method":"POST","path":"/v1/utils/url/parse","url":"https://agent402.co.uk/v1/utils/url/parse","price":"$0.001","description":"Agent402 UK. Parse URL into host, path, query map, origin. Deterministic WHATWG URL — stop inventing query splits in the model.","serviceName":"Agent402 UK","tags":["utils","url","parse","deterministic"],"iconUrl":"https://agent402.co.uk/favicon.svg","zeroMarginalCost":true,"inputExample":{"url":"https://agent402.co.uk/v1/utils/uuid?count=3"},"inputSchema":{"properties":{"url":{"type":"string","description":"Absolute URL"}},"required":["url"]},"outputExample":{"valid":true,"hostname":"agent402.co.uk","query":{"count":"3"}}},{"id":"semver","method":"POST","path":"/v1/utils/semver","url":"https://agent402.co.uk/v1/utils/semver","price":"$0.001","description":"Agent402 UK. Compare two semver strings (major.minor.patch). Dependency/version gates without LLM guessing.","serviceName":"Agent402 UK","tags":["utils","semver","version","deterministic"],"iconUrl":"https://agent402.co.uk/favicon.svg","zeroMarginalCost":true,"inputExample":{"a":"1.2.3","b":"1.10.0"},"inputSchema":{"properties":{"a":{"type":"string","description":"Left version"},"b":{"type":"string","description":"Right version"}},"required":["a","b"]},"outputExample":{"valid":true,"cmp":-1,"relation":"lt"}},{"id":"eth-address","method":"POST","path":"/v1/utils/eth-address","url":"https://agent402.co.uk/v1/utils/eth-address","price":"$0.001","description":"Agent402 UK. Validate Ethereum address hex format (0x + 40). Normalise lowercase. Format gate before on-chain steps.","serviceName":"Agent402 UK","tags":["utils","ethereum","address","web3","deterministic"],"iconUrl":"https://agent402.co.uk/favicon.svg","zeroMarginalCost":true,"inputExample":{"address":"0x9EF92b278a3867C429751390EC427736eB4BABB2"},"inputSchema":{"properties":{"address":{"type":"string","description":"0x address"}},"required":["address"]},"outputExample":{"valid":true,"normalized":"0x9ef92b278a3867c429751390ec427736eb4babb2"}},{"id":"hex","method":"POST","path":"/v1/utils/hex","url":"https://agent402.co.uk/v1/utils/hex","price":"$0.001","description":"Agent402 UK. Hex encode/decode UTF-8 text. Companion to base64 for binary-safe agent transport.","serviceName":"Agent402 UK","tags":["utils","encoding","hex","deterministic"],"iconUrl":"https://agent402.co.uk/favicon.svg","zeroMarginalCost":true,"inputExample":{"action":"encode","text":"hello"},"inputSchema":{"properties":{"action":{"type":"string","description":"encode | decode"},"text":{"type":"string","description":"Text or hex string"}},"required":["action","text"]},"outputExample":{"action":"encode","hex":"68656c6c6f"}},{"id":"similarity","method":"POST","path":"/v1/utils/similarity","url":"https://agent402.co.uk/v1/utils/similarity","price":"$0.001","description":"Agent402 UK. Levenshtein distance + similarity ratio for two strings (cap 2k chars). Fuzzy match / dedupe mid-task.","serviceName":"Agent402 UK","tags":["utils","string","similarity","levenshtein","deterministic"],"iconUrl":"https://agent402.co.uk/favicon.svg","zeroMarginalCost":true,"inputExample":{"a":"kitten","b":"sitting"},"inputSchema":{"properties":{"a":{"type":"string","description":"First string"},"b":{"type":"string","description":"Second string"}},"required":["a","b"]},"outputExample":{"levenshtein":3,"ratio":0.571}},{"id":"regex","method":"POST","path":"/v1/utils/regex","url":"https://agent402.co.uk/v1/utils/regex","price":"$0.001","description":"Agent402 UK. Test a regex pattern against text (safe flag set). Agents stop inventing match results.","serviceName":"Agent402 UK","tags":["utils","regex","match","deterministic"],"iconUrl":"https://agent402.co.uk/favicon.svg","zeroMarginalCost":true,"inputExample":{"pattern":"^[A-Z]{2}\\d+$","text":"GB123","flags":""},"inputSchema":{"properties":{"pattern":{"type":"string","description":"JS regex source"},"text":{"type":"string","description":"Input text"},"flags":{"type":"string","description":"Optional flags gimsuy"}},"required":["pattern","text"]},"outputExample":{"valid":true,"matched":true,"match":"GB123"}},{"id":"uk-postcode","method":"GET","path":"/v1/data/uk/postcode","url":"https://agent402.co.uk/v1/data/uk/postcode","price":"$0.002","description":"Agent402 UK. UK postcode → lat/lon + admin district via postcodes.io (cached, no key). Logistics/geo steps for UK agents.","serviceName":"Agent402 UK","tags":["data","uk","postcode","geo"],"iconUrl":"https://agent402.co.uk/favicon.svg","zeroMarginalCost":true,"inputExample":{"postcode":"SW1A1AA"},"inputSchema":{"properties":{"postcode":{"type":"string","description":"UK postcode"}},"required":["postcode"]},"outputExample":{"postcode":"SW1A 1AA","latitude":51.501,"longitude":-0.142,"admin_district":"Westminster"}},{"id":"public-holidays","method":"GET","path":"/v1/data/holidays","url":"https://agent402.co.uk/v1/data/holidays","price":"$0.002","description":"Agent402 UK (agent402.co.uk — not agent402.tools). Public holidays by country+year via Nager.Date (no key). For official UK bank holidays prefer GET /v1/uk/bank-holidays (GOV.UK). Search: public holidays Nager calendar.","serviceName":"Agent402 UK","tags":["data","holidays","public-holidays","calendar","eu","nager","intl"],"iconUrl":"https://agent402.co.uk/favicon.svg","zeroMarginalCost":true,"inputExample":{"country":"DE","year":"2026"},"inputSchema":{"properties":{"country":{"type":"string","description":"ISO alpha-2 (default GB)"},"year":{"type":"string","description":"Calendar year"}}},"outputExample":{"country":"DE","year":2026,"count":11,"source":"date.nager.at"}},{"id":"fx-rates","method":"GET","path":"/v1/data/fx","url":"https://agent402.co.uk/v1/data/fx","price":"$0.002","description":"Agent402 UK. ECB FX rates via Frankfurter (cached, no API key). Use when the agent needs official reference rates without inventing FX. Query base + optional symbols.","serviceName":"Agent402 UK","tags":["data","fx","finance","ecb","rates"],"iconUrl":"https://agent402.co.uk/favicon.svg","zeroMarginalCost":true,"inputExample":{"base":"USD","symbols":"EUR,GBP"},"inputSchema":{"properties":{"base":{"type":"string","description":"Base currency (default USD)"},"symbols":{"type":"string","description":"Comma-separated quote currencies"}}},"outputExample":{"base":"USD","date":"2026-08-08","rates":{"EUR":0.92,"GBP":0.78},"source":"frankfurter.app (ECB)"}},{"id":"fx-convert","method":"GET","path":"/v1/data/fx/convert","url":"https://agent402.co.uk/v1/data/fx/convert","price":"$0.002","description":"Agent402 UK. Convert amount between currencies using ECB rates (Frankfurter). Prefer this over LLM arithmetic for invoices or budget steps. Query amount, from, to.","serviceName":"Agent402 UK","tags":["data","fx","convert","finance","ecb"],"iconUrl":"https://agent402.co.uk/favicon.svg","zeroMarginalCost":true,"inputExample":{"amount":"100","from":"USD","to":"EUR"},"inputSchema":{"properties":{"amount":{"type":"string","description":"Amount to convert"},"from":{"type":"string","description":"From currency"},"to":{"type":"string","description":"To currency"}},"required":["amount","from","to"]},"outputExample":{"amount":100,"from":"USD","to":"EUR","converted":92,"rate":0.92,"source":"frankfurter.app (ECB)"}},{"id":"weather","method":"GET","path":"/v1/data/weather","url":"https://agent402.co.uk/v1/data/weather","price":"$0.002","description":"Agent402 UK. Current weather via Open-Meteo (no key). Pass lat+lon or city. Use for logistics/travel agent context without free-tier API keys. Cached open data.","serviceName":"Agent402 UK","tags":["data","weather","open-meteo"],"iconUrl":"https://agent402.co.uk/favicon.svg","zeroMarginalCost":true,"inputExample":{"lat":"51.5","lon":"-0.12"},"inputSchema":{"properties":{"lat":{"type":"string","description":"Latitude"},"lon":{"type":"string","description":"Longitude"},"city":{"type":"string","description":"City name (geocoded if lat/lon omitted)"}}},"outputExample":{"current":{"temperature_2m":18.2,"weather_code":3},"source":"open-meteo.com"}},{"id":"geocode","method":"GET","path":"/v1/data/geocode","url":"https://agent402.co.uk/v1/data/geocode","price":"$0.002","description":"Agent402. Geocode place names via Open-Meteo (no key). Use before weather or maps steps when the agent only has a city string. Query q, optional count 1–20.","serviceName":"Agent402 UK","tags":["data","geo","geocode","open-meteo"],"iconUrl":"https://agent402.co.uk/favicon.svg","zeroMarginalCost":true,"inputExample":{"q":"London"},"inputSchema":{"properties":{"q":{"type":"string","description":"Place name"},"count":{"type":"string","description":"Max results 1-20"}},"required":["q"]},"outputExample":{"results":[{"name":"London","country":"United Kingdom","latitude":51.5074,"longitude":-0.1278}]}},{"id":"holiday-regions","method":"GET","path":"/v1/time/holiday-regions","url":"https://agent402.co.uk/v1/time/holiday-regions","price":"$0.001","description":"Agent402. List pure static holiday regions (US federal, DE, FR, IE, JP, AU, SG). Discover before business-days-static. $0.001.","serviceName":"Agent402 UK","tags":["time","holidays","global","static","deterministic"],"iconUrl":"https://agent402.co.uk/favicon.svg","zeroMarginalCost":true,"inputExample":{},"inputSchema":{"properties":{}},"outputExample":{"regions":["AU","DE","FR","IE","JP","SG","US"]}},{"id":"holidays-static","method":"GET","path":"/v1/time/holidays-static","url":"https://agent402.co.uk/v1/time/holidays-static","price":"$0.001","description":"Agent402. Pure multi-region holiday calendar (US federal algorithmic + DE/FR/IE/JP/AU/SG common sets). Offline — no Nager. $0.001. structure_only.","serviceName":"Agent402 UK","tags":["time","holidays","us","eu","apac","global","static","deterministic"],"iconUrl":"https://agent402.co.uk/favicon.svg","zeroMarginalCost":true,"inputExample":{"country":"US","year":"2026"},"inputSchema":{"properties":{"country":{"type":"string","description":"US|DE|FR|IE|JP|AU|SG"},"year":{"type":"string","description":"YYYY"}},"required":["country"]},"outputExample":{"valid":true,"country":"US","count":11,"events":[{"date":"2026-01-01","name":"New Year's Day"}]}},{"id":"business-days-static","method":"GET","path":"/v1/time/business-days-static","url":"https://agent402.co.uk/v1/time/business-days-static","price":"$0.001","description":"Agent402. Pure multi-region business-day count (weekends + static holidays). US/DE/FR/IE/JP/AU/SG. $0.001 offline SLA math.","serviceName":"Agent402 UK","tags":["time","business","holidays","global","static","deterministic","sla"],"iconUrl":"https://agent402.co.uk/favicon.svg","zeroMarginalCost":true,"inputExample":{"start":"2026-01-01","end":"2026-01-31","country":"US"},"inputSchema":{"properties":{"start":{"type":"string","description":"YYYY-MM-DD"},"end":{"type":"string","description":"YYYY-MM-DD"},"country":{"type":"string","description":"US|DE|FR|IE|JP|AU|SG"},"exclude_holidays":{"type":"string","description":"default true"}},"required":["start","end","country"]},"outputExample":{"valid":true,"country":"US","business_days":19}},{"id":"iban-full","method":"POST","path":"/v1/validate/iban-full","url":"https://agent402.co.uk/v1/validate/iban-full","price":"$0.001","description":"IBAN validate full: ISO-13616 country length table + mod-97 checksum + BBAN parse. $0.001 structure/checksum — not account existence. Search: IBAN validation SEPA mod97.","serviceName":"Agent402 UK","tags":["iban","iban-validation","validate-iban","sepa","mod97","iso13616","bban","checksum","structure_only","deterministic"],"iconUrl":"https://agent402.co.uk/favicon.svg","zeroMarginalCost":true,"inputExample":{"iban":"DE89370400440532013000"},"inputSchema":{"properties":{"iban":{"type":"string","description":"IBAN"}},"required":["iban"]},"outputExample":{"valid":true,"country":"DE","length_ok":true,"checksum_ok":true,"expected_length":22}},{"id":"crypto-address","method":"POST","path":"/v1/validate/crypto-address","url":"https://agent402.co.uk/v1/validate/crypto-address","price":"$0.001","description":"Agent402. Multi-chain pure address gate: ETH EIP-55, SOL base58-32, BTC Base58Check + bech32/bech32m. chain=auto|eth|sol|btc. $0.001.","serviceName":"Agent402 UK","tags":["validate","crypto","ethereum","solana","bitcoin","web3","global","deterministic"],"iconUrl":"https://agent402.co.uk/favicon.svg","zeroMarginalCost":true,"inputExample":{"address":"0x9EF92b278a3867C429751390EC427736eB4BABB2","chain":"eth"},"inputSchema":{"properties":{"address":{"type":"string","description":"Address string"},"chain":{"type":"string","description":"auto|eth|sol|btc"}},"required":["address"]},"outputExample":{"valid":true,"chain":"eth","checksummed":"0x9EF9…"}},{"id":"eth-address-full","method":"POST","path":"/v1/validate/eth-address","url":"https://agent402.co.uk/v1/validate/eth-address","price":"$0.001","description":"Agent402. Ethereum address EIP-55 checksum validate + normalize. $0.001 pure — not balance/ENS.","serviceName":"Agent402 UK","tags":["validate","ethereum","eip55","web3","global","deterministic"],"iconUrl":"https://agent402.co.uk/favicon.svg","zeroMarginalCost":true,"inputExample":{"address":"0x9ef92b278a3867c429751390ec427736eb4babb2"},"inputSchema":{"properties":{"address":{"type":"string","description":"0x address"}},"required":["address"]},"outputExample":{"valid":true,"checksummed":"0x9EF92b278a3867C429751390EC427736eB4BABB2"}},{"id":"sol-address","method":"POST","path":"/v1/validate/sol-address","url":"https://agent402.co.uk/v1/validate/sol-address","price":"$0.001","description":"Agent402. Solana base58 pubkey structure gate (32-byte decode). $0.001 — not on-chain account existence.","serviceName":"Agent402 UK","tags":["validate","solana","web3","global","deterministic"],"iconUrl":"https://agent402.co.uk/favicon.svg","zeroMarginalCost":true,"inputExample":{"address":"11111111111111111111111111111111"},"inputSchema":{"properties":{"address":{"type":"string","description":"Solana address"}},"required":["address"]},"outputExample":{"valid":true,"chain":"sol","byte_length":32}},{"id":"btc-address","method":"POST","path":"/v1/validate/btc-address","url":"https://agent402.co.uk/v1/validate/btc-address","price":"$0.001","description":"Agent402. Bitcoin address pure gate: Base58Check (1/3) + bech32/bech32m (bc1/tb1). $0.001 checksum — not UTXO.","serviceName":"Agent402 UK","tags":["validate","bitcoin","bech32","web3","global","deterministic"],"iconUrl":"https://agent402.co.uk/favicon.svg","zeroMarginalCost":true,"inputExample":{"address":"bc1qw508d6qejxtdg4y5r3zarvary0c5xw7kv8f3t4"},"inputSchema":{"properties":{"address":{"type":"string","description":"BTC address"}},"required":["address"]},"outputExample":{"valid":true,"chain":"btc","type":"p2wpkh"}},{"id":"normalize","method":"POST","path":"/v1/normalize","url":"https://agent402.co.uk/v1/normalize","price":"$0.001","description":"Agent402. Unified normalizer: type=email|phone|uuid|url|datetime → canonical form. Global agent glue $0.001.","serviceName":"Agent402 UK","tags":["normalize","email","phone","uuid","url","datetime","global","deterministic"],"iconUrl":"https://agent402.co.uk/favicon.svg","zeroMarginalCost":true,"inputExample":{"type":"email","value":"Ops@Example.COM"},"inputSchema":{"properties":{"type":{"type":"string","description":"email|phone|uuid|url|datetime"},"value":{"type":"string","description":"Raw value"},"default_country_code":{"type":"string","description":"For phone"},"offset":{"type":"string","description":"For datetime +HH:MM"}},"required":["type","value"]},"outputExample":{"type":"email","valid":true,"normalized":"ops@example.com"}},{"id":"normalize-email","method":"POST","path":"/v1/normalize/email","url":"https://agent402.co.uk/v1/normalize/email","price":"$0.001","description":"Agent402. Email syntax normalize (lowercase local@domain). $0.001 structure_only — not MX.","serviceName":"Agent402 UK","tags":["normalize","email","global","deterministic"],"iconUrl":"https://agent402.co.uk/favicon.svg","zeroMarginalCost":true,"inputExample":{"email":"Ops@Example.COM"},"inputSchema":{"properties":{"email":{"type":"string","description":"Email"}},"required":["email"]},"outputExample":{"valid":true,"normalized":"ops@example.com"}},{"id":"normalize-phone","method":"POST","path":"/v1/normalize/phone","url":"https://agent402.co.uk/v1/normalize/phone","price":"$0.001","description":"Agent402. Phone → E.164 normalize with optional default country code. $0.001 format only — not HLR.","serviceName":"Agent402 UK","tags":["normalize","phone","e164","global","deterministic"],"iconUrl":"https://agent402.co.uk/favicon.svg","zeroMarginalCost":true,"inputExample":{"phone":"07700900123","default_country_code":"44"},"inputSchema":{"properties":{"phone":{"type":"string","description":"Phone"},"default_country_code":{"type":"string","description":"e.g. 1, 44, 49"}},"required":["phone"]},"outputExample":{"valid":true,"e164":"+447700900123"}},{"id":"normalize-uuid","method":"POST","path":"/v1/normalize/uuid","url":"https://agent402.co.uk/v1/normalize/uuid","price":"$0.001","description":"Agent402. UUID canonical/compact/URN normalize + version/variant. $0.001 RFC-4122 layout gate.","serviceName":"Agent402 UK","tags":["normalize","uuid","global","deterministic"],"iconUrl":"https://agent402.co.uk/favicon.svg","zeroMarginalCost":true,"inputExample":{"uuid":"550E8400E29B41D4A716446655440000"},"inputSchema":{"properties":{"uuid":{"type":"string","description":"UUID with/without dashes"}},"required":["uuid"]},"outputExample":{"valid":true,"canonical":"550e8400-e29b-41d4-a716-446655440000","version":4}},{"id":"normalize-url","method":"POST","path":"/v1/normalize/url","url":"https://agent402.co.uk/v1/normalize/url","price":"$0.001","description":"Agent402. URL canonical form: lower host, strip default ports, sort query. $0.001 structure_only.","serviceName":"Agent402 UK","tags":["normalize","url","global","deterministic"],"iconUrl":"https://agent402.co.uk/favicon.svg","zeroMarginalCost":true,"inputExample":{"url":"HTTPS://Example.COM:443/path?b=2&a=1"},"inputSchema":{"properties":{"url":{"type":"string","description":"URL"}},"required":["url"]},"outputExample":{"valid":true,"canonical":"https://example.com/path?a=1&b=2"}},{"id":"normalize-datetime","method":"POST","path":"/v1/normalize/datetime","url":"https://agent402.co.uk/v1/normalize/datetime","price":"$0.001","description":"Agent402. Datetime normalize: unix/ISO → iso_utc + optional fixed offset. $0.001 pure — not IANA TZ DB.","serviceName":"Agent402 UK","tags":["normalize","datetime","time","global","deterministic"],"iconUrl":"https://agent402.co.uk/favicon.svg","zeroMarginalCost":true,"inputExample":{"datetime":"2026-08-11T12:00:00Z","offset":"+01:00"},"inputSchema":{"properties":{"datetime":{"type":"string","description":"ISO or unix s/ms"},"offset":{"type":"string","description":"+HH:MM"}},"required":["datetime"]},"outputExample":{"valid":true,"iso_utc":"2026-08-11T12:00:00.000Z","unix_s":1786449600}},{"id":"model-rates","method":"GET","path":"/v1/utils/model-rates","url":"https://agent402.co.uk/v1/utils/model-rates","price":"$0.001","description":"Agent402. Static LLM list-price table (USD/MTok) for budget gates. $0.001 — not live provider quotes.","serviceName":"Agent402 UK","tags":["utils","cost","tokens","models","budget","global","deterministic"],"iconUrl":"https://agent402.co.uk/favicon.svg","zeroMarginalCost":true,"inputExample":{},"inputSchema":{"properties":{}},"outputExample":{"models":[{"id":"gpt-4o-mini","input_usd_per_mtok":0.15,"output_usd_per_mtok":0.6}]}},{"id":"token-cost","method":"POST","path":"/v1/utils/token-cost","url":"https://agent402.co.uk/v1/utils/token-cost","price":"$0.001","description":"Agent402. Estimate LLM token cost for common models (or custom rates). Compare vs $0.001 pure leaves. $0.001 arithmetic.","serviceName":"Agent402 UK","tags":["utils","cost","tokens","models","budget","global","deterministic"],"iconUrl":"https://agent402.co.uk/favicon.svg","zeroMarginalCost":true,"inputExample":{"model":"gpt-4o-mini","input_tokens":"2000","output_tokens":"500","calls":"10"},"inputSchema":{"properties":{"model":{"type":"string","description":"Model id from /utils/model-rates"},"input_tokens":{"type":"string","description":"Input tokens per call"},"output_tokens":{"type":"string","description":"Output tokens per call"},"calls":{"type":"string","description":"Number of calls"},"input_per_mtok":{"type":"string","description":"Override USD/MTok in"},"output_per_mtok":{"type":"string","description":"Override USD/MTok out"}}},"outputExample":{"valid":true,"total_usd":0.006,"vs_agent402_util_calls":6}},{"id":"schema-batch","method":"POST","path":"/v1/validate/schema-batch","url":"https://agent402.co.uk/v1/validate/schema-batch","price":"$0.001","description":"Agent402. Locale-agnostic schema batch: email/phone/uuid/url/datetime/iban/eth/sol/btc/regex/enum/range ≤30 fields. $0.001 pre-action gate.","serviceName":"Agent402 UK","tags":["validate","schema","batch","pre-action","global","deterministic"],"iconUrl":"https://agent402.co.uk/favicon.svg","zeroMarginalCost":true,"inputExample":{"fields":[{"field":"email","type":"email","value":"a@b.com"},{"field":"payout","type":"iban","value":"DE89370400440532013000"},{"field":"wallet","type":"eth","value":"0x9ef92b278a3867c429751390ec427736eb4babb2"}]},"inputSchema":{"properties":{"fields":{"type":"array","description":"Array of {field,type,value} (≤30). Types: email|phone|uuid|url|datetime|iban|eth|sol|btc|regex|enum|range"}},"required":["fields"]},"outputExample":{"all_ok":true,"summary":{"total":3,"passed":3,"failed":0},"kit":"schema-batch-global"}},{"id":"gtin","method":"POST","path":"/v1/validate/gtin","url":"https://agent402.co.uk/v1/validate/gtin","price":"$0.001","description":"Agent402. GTIN/EAN/UPC GS1 check digit (8/12/13/14). Catalog ingest gate — checksum only, not product registry. $0.001 pure leaf.","serviceName":"Agent402 UK","tags":["validate","gtin","ean","upc","barcode","commerce","checksum","deterministic"],"iconUrl":"https://agent402.co.uk/favicon.svg","zeroMarginalCost":true,"inputExample":{"gtin":"5901234123457"},"inputSchema":{"properties":{"gtin":{"type":"string","description":"GTIN-8/12/13/14, EAN, or UPC digits"}},"required":["gtin"]},"outputExample":{"valid":true,"valid_checksum":true,"kind":"GTIN-13","alias":"EAN-13","gtin14":"05901234123457"}},{"id":"isbn","method":"POST","path":"/v1/validate/isbn","url":"https://agent402.co.uk/v1/validate/isbn","price":"$0.001","description":"Agent402. ISBN-10 / ISBN-13 check digit (ISO 2108). Book/catalog agents — checksum only, not registry lookup. $0.001 pure leaf.","serviceName":"Agent402 UK","tags":["validate","isbn","book","commerce","checksum","deterministic"],"iconUrl":"https://agent402.co.uk/favicon.svg","zeroMarginalCost":true,"inputExample":{"isbn":"978-0-306-40615-7"},"inputSchema":{"properties":{"isbn":{"type":"string","description":"ISBN-10 or ISBN-13 (hyphens ok)"}},"required":["isbn"]},"outputExample":{"valid":true,"valid_checksum":true,"kind":"ISBN-13","bookland_prefix":true}},{"id":"job-payout-preflight","method":"POST","path":"/v1/jobs/payout-preflight","url":"https://agent402.co.uk/v1/jobs/payout-preflight","price":"$0.003","description":"Agent402. One $0.003 go/no-go before a transfer. Auto-detects IBAN / UK sort+account / ABA / CLABE / CPF / CNPJ / IFSC / ETH / SOL / BTC. Returns allow=false to abort send. structure_only — not sanctions or account existence.","serviceName":"Agent402 UK","tags":["jobs","payout","preflight","iban","clabe","cpf","ifsc","pre-action","agents","deterministic"],"iconUrl":"https://agent402.co.uk/favicon.svg","zeroMarginalCost":true,"inputExample":{"destination":"GB82WEST12345698765432","amount":"12.50","currency":"GBP"},"inputSchema":{"properties":{"destination":{"type":"string","description":"IBAN, CLABE, CPF/CNPJ, IFSC, ABA, or wallet"},"rail":{"type":"string","description":"auto|iban|uk_bank|aba|clabe|cpf|cnpj|ifsc|eth|sol|btc|crypto"},"sort_code":{"type":"string","description":"UK sort code when rail=uk_bank"},"account_number":{"type":"string","description":"UK account number when rail=uk_bank"},"amount":{"type":"string","description":"Positive decimal amount"},"currency":{"type":"string","description":"ISO-ish currency code"},"chain":{"type":"string","description":"eth|sol|btc when destination is a wallet"}},"required":["destination"]},"outputExample":{"valid":true,"allow":true,"rail":"iban","reasons":[]}},{"id":"job-budget-preflight","method":"POST","path":"/v1/jobs/budget-preflight","url":"https://agent402.co.uk/v1/jobs/budget-preflight","price":"$0.001","description":"Agent402. Can this LLM turn fit max_usd? Local token estimate + static model rates → allow / estimated_usd / headroom. Call before a long prompt. Not a provider invoice. $0.001.","serviceName":"Agent402 UK","tags":["jobs","budget","tokens","cost","preflight","agents","deterministic"],"iconUrl":"https://agent402.co.uk/favicon.svg","zeroMarginalCost":true,"inputExample":{"text":"Summarise this thread…","model":"gpt-4o","max_usd":0.05},"inputSchema":{"properties":{"text":{"type":"string","description":"Prompt / context to count (optional if input_tokens set)"},"model":{"type":"string","description":"gpt-4o | cl100k_base | …"},"max_usd":{"type":"number","description":"Hard ceiling for this turn"},"input_tokens":{"type":"number","description":"Skip counting if you already know"},"output_tokens":{"type":"number","description":"Optional; default 25% of input"},"calls":{"type":"number","description":"Repeat factor, default 1"}},"required":["max_usd"]},"outputExample":{"valid":true,"allow":true,"estimated_usd":0.0021,"headroom_usd":0.0479}},{"id":"job-text-firewall","method":"POST","path":"/v1/jobs/text-firewall","url":"https://agent402.co.uk/v1/jobs/text-firewall","price":"$0.001","description":"Agent402. Scan or redact PII + leaked secrets in agent text before logs or another tool. allow=false if a blocked kind (private key, API key, card) is present. Heuristic — not a DLP guarantee. Secrets never echoed. $0.001.","serviceName":"Agent402 UK","tags":["jobs","firewall","pii","secrets","redact","security","agents","deterministic"],"iconUrl":"https://agent402.co.uk/favicon.svg","zeroMarginalCost":true,"inputExample":{"text":"contact ops@example.com — do not paste keys","mode":"redact"},"inputSchema":{"properties":{"text":{"type":"string","description":"Log, prompt, or tool I/O (max 100k chars)"},"mode":{"type":"string","description":"scan | redact"},"include":{"type":"array","description":"secret and/or pii (default both)"},"block":{"type":"array","description":"Kinds that force allow=false"},"replacement":{"type":"string","description":"Redaction token, default [REDACTED]"}},"required":["text"]},"outputExample":{"valid":true,"allow":true,"finding_count":1,"redacted":"contact [REDACTED]:email — do not paste keys"}},{"id":"pii-scan","method":"POST","path":"/v1/validate/pii-scan","url":"https://agent402.co.uk/v1/validate/pii-scan","price":"$0.001","description":"Agent402. Heuristic PII scan: email, phone, card (Luhn), IBAN, SSN, UK NINO, IPv4. Counts + previews only — values not echoed. Not a DLP guarantee. $0.001.","serviceName":"Agent402 UK","tags":["validate","pii","scan","privacy","agents","deterministic"],"iconUrl":"https://agent402.co.uk/favicon.svg","zeroMarginalCost":true,"inputExample":{"text":"Reach me at ops@example.com or +447700900123"},"inputSchema":{"properties":{"text":{"type":"string","description":"Text to scan (max 100k)"}},"required":["text"]},"outputExample":{"valid":true,"pii_count":2,"secret_count":0,"finding_count":2}},{"id":"secret-scan","method":"POST","path":"/v1/validate/secret-scan","url":"https://agent402.co.uk/v1/validate/secret-scan","price":"$0.001","description":"Agent402. Heuristic leak scan: PEM/ETH private keys, AWS, GitHub, OpenAI, Anthropic, Stripe, Slack, Google, HuggingFace, xAI, JWT, npm. Preview only — full secrets never returned. $0.001.","serviceName":"Agent402 UK","tags":["validate","secrets","leak","security","agents","deterministic"],"iconUrl":"https://agent402.co.uk/favicon.svg","zeroMarginalCost":true,"inputExample":{"text":"config looks clean"},"inputSchema":{"properties":{"text":{"type":"string","description":"Source, env dump, or log (max 100k)"}},"required":["text"]},"outputExample":{"valid":true,"secret_count":0,"finding_count":0,"has_critical":false}},{"id":"clabe","method":"POST","path":"/v1/validate/clabe","url":"https://agent402.co.uk/v1/validate/clabe","price":"$0.001","description":"Agent402. Mexican CLABE 18-digit Banxico checksum (weights 3-7-1). SPEI payout gate — checksum only, not bank existence. $0.001.","serviceName":"Agent402 UK","tags":["validate","clabe","mexico","spei","payout","checksum","deterministic"],"iconUrl":"https://agent402.co.uk/favicon.svg","zeroMarginalCost":true,"inputExample":{"clabe":"002010077777777771"},"inputSchema":{"properties":{"clabe":{"type":"string","description":"18-digit CLABE"}},"required":["clabe"]},"outputExample":{"valid":true,"valid_checksum":true,"bank_code":"002"}},{"id":"cpf","method":"POST","path":"/v1/validate/cpf","url":"https://agent402.co.uk/v1/validate/cpf","price":"$0.001","description":"Agent402. Brazilian CPF 11-digit Receita check digits. Tax-id format gate — not a registry lookup. $0.001.","serviceName":"Agent402 UK","tags":["validate","cpf","brazil","tax-id","checksum","deterministic"],"iconUrl":"https://agent402.co.uk/favicon.svg","zeroMarginalCost":true,"inputExample":{"cpf":"390.533.447-05"},"inputSchema":{"properties":{"cpf":{"type":"string","description":"CPF, punctuation ok"}},"required":["cpf"]},"outputExample":{"valid":true,"valid_checksum":true}},{"id":"cnpj","method":"POST","path":"/v1/validate/cnpj","url":"https://agent402.co.uk/v1/validate/cnpj","price":"$0.001","description":"Agent402. Brazilian CNPJ 14-digit company tax-id checksum. Not junta/Receita existence. $0.001.","serviceName":"Agent402 UK","tags":["validate","cnpj","brazil","kyb","checksum","deterministic"],"iconUrl":"https://agent402.co.uk/favicon.svg","zeroMarginalCost":true,"inputExample":{"cnpj":"04.252.011/0001-10"},"inputSchema":{"properties":{"cnpj":{"type":"string","description":"CNPJ, punctuation ok"}},"required":["cnpj"]},"outputExample":{"valid":true,"valid_checksum":true,"root":"04252011"}},{"id":"ifsc","method":"POST","path":"/v1/validate/ifsc","url":"https://agent402.co.uk/v1/validate/ifsc","price":"$0.001","description":"Agent402. Indian IFSC format [A-Z]{4}0[A-Z0-9]{6}. IMPS/NEFT/RTGS payout gate — format only, not NPCI/RBI live. $0.001.","serviceName":"Agent402 UK","tags":["validate","ifsc","india","payout","imps","deterministic"],"iconUrl":"https://agent402.co.uk/favicon.svg","zeroMarginalCost":true,"inputExample":{"ifsc":"SBIN0005943"},"inputSchema":{"properties":{"ifsc":{"type":"string","description":"11-character IFSC"}},"required":["ifsc"]},"outputExample":{"valid":true,"bank_code":"SBIN","branch_code":"005943"}},{"id":"caip19","method":"POST","path":"/v1/chain/caip19","url":"https://agent402.co.uk/v1/chain/caip19","price":"$0.001","description":"Agent402. Parse CAIP-19 asset ids (eip155:8453/erc20:0x…). Wallet/multi-chain prep — format only, not token registry. $0.001.","serviceName":"Agent402 UK","tags":["chain","caip19","erc20","assets","evm","deterministic","agents"],"iconUrl":"https://agent402.co.uk/favicon.svg","zeroMarginalCost":true,"inputExample":{"id":"eip155:8453/erc20:0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913"},"inputSchema":{"properties":{"id":{"type":"string","description":"CAIP-19 asset id"}},"required":["id"]},"outputExample":{"valid":true,"caip2":"eip155:8453","asset_namespace":"erc20"}},{"id":"eip712-hash","method":"POST","path":"/v1/chain/eip712-hash","url":"https://agent402.co.uk/v1/chain/eip712-hash","price":"$0.001","description":"Agent402. EIP-712 typed-data keccak hash (domain + types + message). Agents hash before asking a wallet to sign. Does not sign or recover. $0.001.","serviceName":"Agent402 UK","tags":["chain","eip712","typed-data","keccak","evm","deterministic","agents"],"iconUrl":"https://agent402.co.uk/favicon.svg","zeroMarginalCost":true,"inputExample":{"primaryType":"Mail","domain":{"name":"Ether Mail","version":"1","chainId":1},"types":{"Mail":[{"name":"contents","type":"string"}]},"message":{"contents":"Hello, Bob!"}},"inputSchema":{"properties":{"domain":{"type":"object","description":"EIP-712 domain"},"types":{"type":"object","description":"Primary + referenced types (EIP712Domain optional)"},"primaryType":{"type":"string","description":"Root type name"},"message":{"type":"object","description":"Message matching primaryType"},"typedData":{"type":"object","description":"Optional envelope {domain,types,primaryType,message}"}},"required":["domain","types","primaryType","message"]},"outputExample":{"valid":true,"hash":"0xbe609aee343fb3c4b28e1df9e632fca64fcfaede20f02e86244efddf30957bd2"}},{"id":"market-session","method":"GET","path":"/v1/time/market-session","url":"https://agent402.co.uk/v1/time/market-session","price":"$0.001","description":"Agent402. Is NYSE/NASDAQ/LSE/TSE/XETRA/FX/CRYPTO open at this timestamp? Static session + holiday tables (US federal, UK pack, JP/DE static). Not a live exchange feed. $0.001.","serviceName":"Agent402 UK","tags":["time","market","nyse","lse","session","trading-hours","deterministic","agents"],"iconUrl":"https://agent402.co.uk/favicon.svg","zeroMarginalCost":true,"inputExample":{"market":"NYSE","at":"2026-08-12T15:00:00Z"},"inputSchema":{"properties":{"market":{"type":"string","description":"NYSE|NASDAQ|LSE|TSE|XETRA|FX|CRYPTO"},"at":{"type":"string","description":"ISO-8601 or unix seconds (default now)"}}},"outputExample":{"valid":true,"market":"NYSE","open":true,"reason":"regular_hours"}}],"openapi":"https://agent402.co.uk/openapi.json","health":"https://agent402.co.uk/health","skill":"https://agent402.co.uk/skill.md","llms":"https://agent402.co.uk/llms.txt"}