VerifyLite

Pay-per-call tools for AI agents, paid in USDC on Base via x402 (no API keys): website safety checks, prompt-injection screening, JSON repair for LLM output, web page reader, link previews, domain/email/SEO checks, RSS reader, audio transcription, Base on-chain data and Chainlink prices, plus time/UUID/random utilities. Failed calls are not charged.

Documentation

VerifyLite

Pay-per-call website safety checks, web page reading, link previews, domain and email checks, SEO audits, URL validation, prompt-injection checks, JSON repair, news/RSS reading, audio transcription, Base on-chain data, and agent basics (time, UUIDs, randomness, IP checks, paid ping) for AI agents. Every call is paid per request in USDC on Base via x402: no accounts, no API keys. Requests that fail are not charged.

This repository documents the hosted service. The service's source code is not public.

What it does

ServiceHTTP endpointMCP toolPrice
URL syntax check (never contacts the site)POST /verifyverify_url$0.005
Website safety checkPOST /safecheck_site_safety$0.009
Website safety check + Google Web Risk (malware, phishing)POST /safe-procheck_site_safety_pro$0.10
Batch website safety check (up to 8 URLs)POST /safe-batchcheck_sites_batch$0.008 per URL
Audio/video transcription with SRT and WebVTT captionsPOST /transcribetranscribe_audio$0.05 per file
Web page as clean markdownPOST /readread_page$0.0028
Link preview (title, description, image, favicon)POST /previewlink_preview$0.002
Domain report (registration, expiry, DNS, SPF/DMARC)POST /domaindomain_report$0.007
Email check (format, accepts mail, disposable/role)POST /email-checkcheck_email$0.003
SEO check (indexability, title/description, robots, sitemap)POST /seo-checkseo_check$0.01
JSON repair for LLM output, with optional JSON Schema checkPOST /sanitize-jsonrepair_json$0.0039
Prompt-injection check for text or a web page (hidden instructions, jailbreaks, exfiltration, hidden Unicode/HTML)POST /injection-checkcheck_prompt_injection$0.0044
News/RSS reader: latest headlines, links, dates, summaries from any feed or sitePOST /feedread_feed$0.0038
Base on-chain data (Base mainnet, read-only)
Wallet balance: ETH, USDC, transaction count, wallet or contractPOST /chain/balancechain_balance$0.0035
Transaction status: success/failed/pending, fee, confirmations, decoded USDC transfersPOST /chain/txchain_tx$0.0055
Token info: name, symbol, decimals, total supplyPOST /chain/tokenchain_token$0.0048
Contract inspection: code size, EIP-1967 proxy, ERC-20/721/1155 detectionPOST /chain/contractchain_contract$0.0046
Gas prices and typical transaction costsPOST /chain/gaschain_gas$0.0015
Block info: number, time, transaction count, base feePOST /chain/blockchain_block$0.0016
Crypto prices from Chainlink: ETH, BTC, cbBTC, SOL, USDC, DAI, EUR in USDPOST /chain/pricecrypto_price$0.0029
Agent basics
Current time in UTC and any time zonePOST /timeget_time$0.0011
UUID v4 or v7, up to 100POST /uuidnew_uuid$0.0012
Secure random numbers or a random pick from a listPOST /randomrandom_number$0.0013
IP address check (public, private, reserved); your own IP over HTTPPOST /ipip_info$0.0014
Paid ping, for testing x402 payment clientsPOST /pingping$0.001
Current pricesGET /list_pricesfree

Prices are introductory launch prices and may change. The live prices are always in the payment request, in list_prices, and on the service page.

Website safety check

A passive check: it reads what the site publicly serves, the way a browser does, and doesn't probe for vulnerabilities. It looks at:

  • TLS certificate validity
  • HTTP to HTTPS redirect, the redirect chain, and redirects to other domains
  • Security headers (HSTS, CSP, X-Frame-Options, X-Content-Type-Options, Referrer-Policy)
  • Mixed content and forms that submit over plain HTTP
  • Domain age from the official registry (RDAP)
  • Pro only: Google Web Risk lookup for malware, social engineering (phishing), and unwanted software

It returns a verdict (safe, caution, or unsafe), a 0-100 score, and every finding as a flag with its evidence. safe means no warning signs were found, not a guarantee.

Transcription

Whisper (turbo) on a GPU. Send a link to an audio or video file up to 25 MB, about 25 minutes of typical MP3. You get back the full text, timed segments, ready-made SRT and WebVTT captions, and the detected language. Optionally, it also translates the speech to English.

Using it over MCP

Any MCP client that supports x402 payments can call the tools. Point it at the remote server:

{
  "mcpServers": {
    "verifylite": {
      "type": "http",
      "url": "https://verifylite.hydratinghealingtouch.workers.dev/mcp"
    }
  }
}

Claude Code:

claude mcp add --transport http verifylite https://verifylite.hydratinghealingtouch.workers.dev/mcp

list_prices is free. A paid tool called without payment returns an x402 payment request. Clients built with @x402/mcp (createx402MCPClient) pay it and retry automatically.

Using it over HTTP

Send a POST with a JSON body. Without payment, the response is 402 Payment Required with the x402 payment requirements. An x402 client (for example @x402/fetch) pays and retries.

curl -i -X POST https://verifylite.hydratinghealingtouch.workers.dev/safe \
  -H 'content-type: application/json' \
  -d '{"url": "https://example.com"}'
# HTTP/2 402 ... payment-required: <x402 requirements>

Request bodies:

EndpointBody
/verify, /safe, /safe-pro{"url": "https://..."}
/safe-batch{"urls": ["https://...", "https://..."]}
/transcribe{"url": "https://.../audio.mp3", "language": "en", "translate": false} (language and translate optional)
/read, /preview, /seo-check{"url": "https://..."}
/domain{"domain": "example.com"}
/email-check{"email": "name@example.com"}
/sanitize-json{"text": "<broken JSON or LLM reply>", "schema": {...}} (schema optional, up to 30,000 characters)
/injection-check{"text": "..."} (up to 50,000 characters) or {"url": "https://..."}
/feed{"url": "https://...", "limit": 20} (limit optional, 1 to 50)
/chain/balance, /chain/token, /chain/contract{"address": "0x..."}
/chain/tx{"hash": "0x..."}
/chain/gas{}
/chain/price{"pair": "ETH/USD"} (omit for all pairs)
/chain/block{"number": "latest"} (optional)
/time{"tz": "America/Chicago"} (optional)
/uuid{"version": "v7", "count": 5} (both optional)
/random{"min": 1, "max": 6, "count": 2} or {"choices": ["a", "b", "c"]} (all optional)
/ip{"ip": "203.0.113.7"} (omit to get your own IP)
/ping{"echo": "hello"} (optional)

Example responses are in examples/.

Payments

  • Network: Base mainnet (eip155:8453)
  • Asset: USDC
  • Facilitator: Coinbase CDP
  • Not charged on failure: any error response (invalid input, unreachable site, file too large, failed transcription, blocklist unavailable, transaction not found, Base network unreachable) cancels the payment.

Contact

Operated by Unfallowed Ground LLC. Open an issue in this repository for questions or problems.