Agent Extraction API
activeInvoice-to-JSON, ERC-20 token risk, company contacts and web-to-RAG for AI agents. Pay per call with x402 (USDC on Base). No signup, no API key. Core products: invoice-json ($0.003 per page), token-risk ($0.005), site-contacts ($0.003), page-rag ($0.001). Utilities $0.001 per call; directory dataset downloads $1. 1 free call per route per caller with real parameters; a request without parameters…
- Transactions · 30d
- 39
- Volume · 30d
- $0.1075
- Unique buyers · 30d
- 6
- Uptime · 30d
- 100.0%
- Latency p50
- 47ms
- Reported calls · 30d
- 12
Endpoints (49 live)
GET/api/mcp-servers— Search 4,259 MCP (Model Context Protocol) servers by keyword, category, language (python/typescript/go/rust...), scope (cloud/local) and official flag. Returns repo URL and description. (0.001 USDC on Base)GET/api/gas— Live gas prices across 5 EVM chains in one call (Ethereum, Base, Arbitrum, Optimism, Polygon): gas price in gwei, latest block, and the cost of an ETH transfer, an ERC-20/USDC transfer and a swap in native coin and USD, plus a ranking of which chain is cheapest right now. Public RPC nodes with failover; no keys. (0.0015 USDC on Base)GET/api/extract-json— Messy text + JSON Schema in, clean JSON out. Uses a small LLM (Cloudflare Workers AI, Llama 3.1 8B, JSON mode) when available, else a deterministic key:value/regex extractor; the result is type-checked against your schema and missing fields are null. Limits: text <= 6,000 chars, schema <= 30 top-level properties (flat objects, arrays of scalars); the model can misread ambiguous text, so check important values. Params: text, schema (JSON string), mode=auto|heuristic. GET query or POST JSON body. (0.01 USDC on Base)GET/api/email-verify— Email address check WITHOUT sending mail or SMTP probing: RFC-style syntax check, domain MX/A records via DNS-over-HTTPS, disposable-domain flag (CC0 blocklist, ~9,900 domains), role-address flag (info@, support@...), free-mail flag. Verdict: deliverable_domain | risky | invalid. Cannot confirm that the mailbox itself exists. Addresses are not stored or logged. (0.002 USDC on Base)GET/api/page-markdown— Convert a public web page to clean Markdown (title, headings, paragraphs, lists, links, code), scripts/nav/footer removed, max ~60k chars. robots.txt respected. (0.0025 USDC on Base)GET/api/base-gas— Live Base mainnet gas price (gwei), latest block, and estimated ETH cost of a USDC transfer (~65k gas) and a plain ETH transfer (21k gas). (0.001 USDC on Base)GET/api/page-rag— Any public web page -> clean LLM-ready Markdown + RAG chunks in one call: main content via Mozilla Readability (no nav/ads/footers), absolute links, title/description/language/canonical/published+modified dates/JSON-LD types, word + token estimates, sha256 content hash for change detection, and heading-aware chunks (configurable size + overlap, each with its heading path). Plain HTTP, robots.txt respected, Markdown/plain text passed through. Flags pages that likely need JavaScript. (0.001 USDC on Base)GET/api/llm-pricing— AI model list prices (USD per 1M input/output/cached tokens, context window, vision/tools/reasoning flags) for ~3,000 models across OpenAI, Anthropic, Google, Mistral, Groq, Bedrock, Azure, Together, Fireworks and more, plus verified free tiers/rate limits of AI APIs. Filters: q, provider, free=yes, max_input_per_m, min_context, vision=yes, tools=yes, sort=input|output|context, limit<=100. (0.005 USDC on Base)GET/api/free-tiers— Current free-tier limits for developer services (hosting, DB, auth, email, CI, monitoring) and AI/LLM APIs, with official source URLs. Filter: q, category. (0.001 USDC on Base)GET/api/apis/search— Search 2,230 link-checked public & free-tier APIs (59 categories). Filters: q, category, auth=none, alive=yes, https=yes, kind, limit<=50. (0.001 USDC on Base)GET/api/x402-services— Search ~8,900 live x402 pay-per-call APIs (verified/unverified by nohumans.directory probes, CC BY 4.0): name, endpoint URL, category, price, chains, status, score. Filters: q, category, chain, max_price, status=verified, limit<=100. (0.0025 USDC on Base)GET/api/agent-tools— One search across ~13,000 agent tools: 4,259 MCP servers (awesome-mcp-servers, MIT) and ~8,900 x402 pay-per-call APIs (nohumans.directory, CC BY 4.0). Filters: q, type=mcp|x402, limit<=100. (0.001 USDC on Base)GET/api/token-risk— Deterministic ERC-20 risk check on Base or Ethereum from public on-chain data only: privileged functions in bytecode (mint, blacklist, pause, fees, limits, trading switch), upgradeable proxy + implementation, owner and renounce status, Uniswap v2/v3 + Aerodrome liquidity in USD (Chainlink), owner/pool/burned supply share. Every flag has evidence; lists what was NOT checked (no honeypot simulation). Not financial advice. (0.005 USDC on Base)GET/api/holidays— Public holidays for ~490 countries/territories for 2026 and 2027; optional date=YYYY-MM-DD answers is_holiday. (0.001 USDC on Base)GET/api/site-contacts— Company website -> one clean contact row: role emails only (info@, sales@ ...) with MX check, phones validated and normalized to E.164 with confidence, schema.org address/name, Danish CVR and EU VAT ids, official social profiles. Respects robots.txt, plain HTTP, home + up to 5 contact pages. Personal emails omitted (GDPR). (0.003 USDC on Base)GET/api/tx-explain— Base or Ethereum transaction hash -> plain JSON: status (success/failed/pending), block time, confirmations, from/to, ETH value, gas used and fee (incl. Base L1 fee), method selector + name, and every ERC-20/ERC-721 Transfer in the receipt with token symbol, decimals and human amounts. Optional payment check: expect_to + expect_token (USDC, ETH, symbol or address) + expect_amount confirms a payment arrived (e.g. verify a USDC or x402 settlement). Public RPC data only. (0.001 USDC on Base)GET/api/contract-abi— Base or Ethereum contract address -> ABI and function list: Sourcify verification (exact/partial match), contract name, compiler, ABI, function selectors + signatures, event topics; proxies (EIP-1967, ZeppelinOS, others Sourcify detects) resolved to the implementation with its own ABI. Unverified contracts: selectors guessed from bytecode and named via the public OpenChain database. abi=false returns signatures only (smaller). (0.002 USDC on Base)GET/api/dns— DNS lookup over DNS-over-HTTPS (Cloudflare, Google fallback): A, AAAA, MX, NS, TXT, CNAME, CAA, SOA, SRV, HTTPS, DS... for one domain in one call, plus a mail-auth check (MX hosts, SPF, DMARC policy, warnings) and the DNSSEC-validated flag. (0.0025 USDC on Base)GET/api/domain-whois— Domain registration lookup via RDAP (the official whois successor, IANA bootstrap): registered or not, registrar + IANA id + abuse email, created / updated / expiry dates, days to expiry, domain age, EPP status codes, nameservers, DNSSEC. Use it to vet a domain or check expiry. (0.005 USDC on Base)GET/api/ssl-cert— TLS/SSL certificate check from public Certificate Transparency logs (Cert Spotter, crt.sh fallback): currently valid certificates for a hostname, newest first, with issuer, validity dates, days left, SAN names and an expiring-within-14-days flag. For expiry monitoring and phishing/subdomain vetting. (0.005 USDC on Base)
+29 more endpoints.
MCP tools (68)
Agent Extraction API https://freetier-agent-api.pages.dev/mcp
agent_tools— 1 free call per caller, then $0.001 USDC via x402 (paid in-band: params._meta["x402/payment"]). One search across ~13,000 agent tools: 4,259 MCP servers (awesome-mcp-servers, MIT) and ~8,900 x402 pay-per-call APIs (nohumans.directory, CC BY 4.0). Filters: q, type=mcp|x402, limit<=100.api_directory_sample— Free. Five live public APIs that need no key.apis_search— 1 free call per caller, then $0.001 USDC via x402 (paid in-band: params._meta["x402/payment"]). Search 2,230 link-checked public & free-tier APIs (59 categories). Filters: q, category, auth=none, alive=yes, https=yes, kind, limit<=50.base_gas— 1 free call per caller, then $0.0015 USDC via x402 (paid in-band: params._meta["x402/payment"]). Live Base mainnet gas price (gwei), latest block, and estimated ETH cost of a USDC transfer (~65k gas) and a plain ETH transfer (21k gas). When to use: Use base-gas for current Base gas price and the cost of a transfer.classify— 1 free call per caller, then $0.005 USDC via x402 (paid in-band: params._meta["x402/payment"]). Text classification: classify text (max 6,000 chars) into your own labels (2-20, single or multi-label) with confidence and a short reason; output is always one of your labels. Small LLM (Workers AI Llama 3.1 8B). GET query or POST JSON body. When to use: Use classify to route tickets, emails or posts into your own labels.company_batch— 1 free call per caller, then $0.022 USDC via x402 (paid in-band: params._meta["x402/payment"]). Company enrichment batch: up to 10 domains in one call, each with profile (name, description, socials, key pages, email provider) and detected tech stack. Only each company's own website and DNS; no personal data. When to use: Use company-batch to enrich a list of up to 10 domains in one call.company_contacts— 1 free call per caller, then $0.004 USDC via x402 (paid in-band: params._meta["x402/payment"]). Company contacts: public business contact details from the company's own website only - role emails (info@, sales@) with MX check, main phone numbers (E.164), address, company/VAT ids and official social profiles. Personal emails and names omitted (GDPR). robots.txt respected. When to use: Use company-contacts for public role emails and main phone of a company domain (no personal data).company_profile— 1 free call per caller, then $0.0075 USDC via x402 (paid in-band: params._meta["x402/payment"]). Company enrichment: domain in, company profile out - name, description, language, logo, founding date, address (schema.org), official social profiles, key pages (contact, about, careers, pricing) and email provider (MX). Only the company's own website and DNS; robots.txt respected; no personal data. When to use: Use company-profile to enrich a domain; company-techstack for technologies; company-contacts for business contact details; company-batch for up to 10 domains.company_techstack— 1 free call per caller, then $0.005 USDC via x402 (paid in-band: params._meta["x402/payment"]). Website tech stack detection: CMS, e-commerce, frameworks, analytics, marketing, support chat, payments, consent, CDN/hosting and email provider used by a company website, each with evidence (HTML, header or DNS). ~70 signatures. When to use: Use company-techstack to see which CMS, analytics, chat and payment tools a website uses.contract_abi— 1 free call per caller, then $0.0025 USDC via x402 (paid in-band: params._meta["x402/payment"]). Base or Ethereum contract address -> ABI and function list: Sourcify verification (exact/partial match), contract name, compiler, ABI, function selectors + signatures, event topics; proxies (EIP-1967, ZeppelinOS, others Sourcify detects) resolved to the implementation with its own ABI. Unverified contracts: selectors guessed from bytecode and named via the public OpenChain database. abi=false returns signatures only (smaller). When to use: Use contract-abi when an agent needs to call or decode a contract it has not seen before. Use wallet-profile for balances and account type, and token-risk to check an ERC-20 for dangerous privileges.country— 1 free call per caller, then $0.0025 USDC via x402 (paid in-band: params._meta["x402/payment"]). Country reference lookup by ISO2/ISO3/name: capital, population, area, continent, currency, phone prefix, TLD, languages, neighbours, time zones with current UTC offset and local time. When to use: Use country for ISO codes, capitals, currencies, calling codes and time zones.currency— 1 free call per caller, then $0.002 USDC via x402 (paid in-band: params._meta["x402/payment"]). Currency conversion with official ECB euro reference rates (~30 currencies, daily). Params: from, to, amount. Also returns the rate date. When to use: Use currency for ECB reference exchange rates and conversion.dataset_full— Dataset download: $1 USDC via x402. Buy the full Verified API Directory dataset (2,230 rows, JSON, CC BY 4.0 + MIT sources) in one call.dns— 1 free call per caller, then $0.0025 USDC via x402 (paid in-band: params._meta["x402/payment"]). DNS lookup over DNS-over-HTTPS (Cloudflare, Google fallback): A, AAAA, MX, NS, TXT, CNAME, CAA, SOA, SRV, HTTPS, DS... for one domain in one call, plus a mail-auth check (MX hosts, SPF, DMARC policy, warnings) and the DNSSEC-validated flag. When to use: Use dns to read any DNS records of a domain and check its mail setup (MX, SPF, DMARC) in one call. Use email-verify to check a single address.domain_whois— 1 free call per caller, then $0.005 USDC via x402 (paid in-band: params._meta["x402/payment"]). Domain registration lookup via RDAP (the official whois successor, IANA bootstrap): registered or not, registrar + IANA id + abuse email, created / updated / expiry dates, days to expiry, domain age, EPP status codes, nameservers, DNSSEC. Use it to vet a domain or check expiry. When to use: Use domain-whois to see who registered a domain, when it was created and when it expires (RDAP, official registry data).dump_agent_tools— Dataset download: $1 USDC via x402. Full dump: Agent Tool Directory, ~13,000 MCP servers + x402 APIs in one unified schema (JSON). MIT + CC BY 4.0 sources, attribution included.dump_llm_pricing— Dataset download: $1 USDC via x402. Full dump: list prices of ~3,000 AI models (LiteLLM table, MIT) + verified AI/dev free tiers with limits (JSON).dump_mcp_servers— Dataset download: $1 USDC via x402. Full MCP server directory dump (4,259 servers, JSON). Source awesome-mcp-servers (MIT).dump_world_reference— Dataset download: $1 USDC via x402. Full dump: 252 countries (GeoNames, CC BY 4.0), 418 time zones, ~14,000 public holidays 2026-2027 (python-holidays, MIT). JSON.dump_x402_services— Dataset download: $1 USDC via x402. Full dump: ~8,900 x402 pay-per-call APIs with category, price, chains and probe status (JSON). Data from nohumans.directory, CC BY 4.0, attribution required.email_verify— 1 free call per caller, then $0.004 USDC via x402 (paid in-band: params._meta["x402/payment"]). Email address check WITHOUT sending mail or SMTP probing: RFC-style syntax check, domain MX/A records via DNS-over-HTTPS, disposable-domain flag (CC0 blocklist, ~9,900 domains), role-address flag (info@, support@...), free-mail flag. Verdict: deliverable_domain | risky | invalid. Cannot confirm that the mailbox itself exists. Addresses are not stored or logged. When to use: Use email-verify to check syntax, MX and disposable domains for one address (DNS only, no mailbox probe).email_verify_batch— 1 free call per caller, then $0.005 USDC via x402 (paid in-band: params._meta["x402/payment"]). Email verification batch: up to 20 email addresses in one call - syntax, MX/A records via DNS-over-HTTPS, null MX, disposable, role and free-mail flags, verdict per address and a summary. No SMTP probing, nothing stored. When to use: Use email-verify-batch to clean a list of up to 20 emails.email_verify_quick— 1 free call per caller, then $0.0025 USDC via x402 (paid in-band: params._meta["x402/payment"]). Email quick check: offline syntax check, disposable-domain flag (~9,900 domains), role address and free-mail flags for one email, no DNS (fastest). Use email-verify for MX checks. When to use: Use email-verify-quick for a fast offline syntax/disposable check; email-verify adds MX; email-verify-batch for lists.ens— 1 free call per caller, then $0.0025 USDC via x402 (paid in-band: params._meta["x402/payment"]). ENS + Basenames resolver: name -> address (vitalik.eth, jesse.base.eth) or address -> verified primary name on Ethereum and Base (reverse record checked forward), plus optional text records (avatar, url, com.twitter, com.github, ...). On-chain via public RPC, no keys. When to use: Use ens to turn vitalik.eth / name.base.eth into an address before sending, or to show a verified name for an address.entity_extract— 1 free call per caller, then $0.005 USDC via x402 (paid in-band: params._meta["x402/payment"]). Named entity extraction: people, organizations, locations, dates, money amounts and products from text (max 6,000 chars), plus emails and URLs by regex. Every AI entity is checked to literally occur in the text. GET query or POST JSON body. When to use: Use entity-extract for people, companies, places, dates and amounts; extract-json when you need your own schema.extract_json— 1 free call per caller, then $0.01 USDC via x402 (paid in-band: params._meta["x402/payment"]). Messy text + JSON Schema in, clean JSON out. Uses a small LLM (Cloudflare Workers AI, Llama 3.1 8B, JSON mode) when available, else a deterministic key:value/regex extractor; the result is type-checked against your schema and missing fields are null. Limits: text <= 6,000 chars, schema <= 30 top-level properties (flat objects, arrays of scalars); the model can misread ambiguous text, so check important values. Params: text, schema (JSON string), mode=auto|heuristic. GET query or POST JSON body. When to use: Use extract-json for short free text with your own JSON schema; for invoices and receipts use invoice-json.feed_json— 1 free call per caller, then $0.0025 USDC via x402 (paid in-band: params._meta["x402/payment"]). RSS / Atom / JSON Feed to clean JSON: give a feed URL (or a web page that links one, auto-discovered) and get feed title/link/language plus normalised items: id, title, link, ISO dates, author, plain-text summary, categories, enclosures (podcast audio, media), image. Filter with since= and limit=; include_content=true adds the full text. When to use: Use feed-json to read an RSS/Atom/JSON feed (or find the feed of a site) as clean JSON items, e.g. to watch a blog, changelog, podcast or news source. Use page-rag for the full text of one article page.free_tiers— 1 free call per caller, then $0.001 USDC via x402 (paid in-band: params._meta["x402/payment"]). Current free-tier limits for developer services (hosting, DB, auth, email, CI, monitoring) and AI/LLM APIs, with official source URLs. Filter: q, category.gas— 1 free call per caller, then $0.0015 USDC via x402 (paid in-band: params._meta["x402/payment"]). Live gas prices across 5 EVM chains in one call (Ethereum, Base, Arbitrum, Optimism, Polygon): gas price in gwei, latest block, and the cost of an ETH transfer, an ERC-20/USDC transfer and a swap in native coin and USD, plus a ranking of which chain is cheapest right now. Public RPC nodes with failover; no keys. When to use: Use gas to pick the cheapest EVM chain right now or to price a transfer/swap on Ethereum, Base, Arbitrum, Optimism or Polygon in one call. Use base-gas for Base only.geocode— 1 free call per caller, then $0.0015 USDC via x402 (paid in-band: params._meta["x402/payment"]). Geocoding with OpenStreetMap Nominatim: address or place name -> coordinates (up to 5 matches, optional country filter), or lat+lon -> structured address (reverse). Structured address fields, country code, bounding box, OSM id. Cached; ODbL attribution included. When to use: Use geocode to turn an address or place into coordinates, or coordinates into an address (OpenStreetMap).geocode_batch— 1 free call per caller, then $0.002 USDC via x402 (paid in-band: params._meta["x402/payment"]). Geocode batch: up to 5 addresses or place names (separated by |) to coordinates and a structured address in one call, optional country filter. OpenStreetMap Nominatim, cached, ODbL attribution. When to use: Use geocode-batch for up to 5 addresses at once.holidays— 1 free call per caller, then $0.0015 USDC via x402 (paid in-band: params._meta["x402/payment"]). Public holidays for ~490 countries/territories for 2026 and 2027; optional date=YYYY-MM-DD answers is_holiday. When to use: Use holidays to list public holidays or test one date for a country.invoice_json— Send exactly one of url, text, or file_base64 + mime_type. 1 free call per caller, then $0.0075 USDC per page via x402 (paid in-band: params._meta["x402/payment"]). Invoice or receipt (PDF, PNG/JPEG/WebP image, or plain text) to structured JSON with a fixed schema: vendor (name, address, VAT ID, email, phone, IBAN), customer, invoice number, order number, issue/due date, currency (ISO 4217), subtotal, VAT total, total, amount due, VAT breakdown and line items. Every field has value, the verbatim source quote and a confidence score (0-1: quote found in the document, value matches quote, totals add up). Arithmetic checks included. $0.0075 per page (max 10 pages per call; the 402 quotes pages x $0.0075), 1 free call per caller (up to 3 pages). Runs on Cloudflare Workers AI only (PDF text layer via toMarkdown, OCR for images); documents are not stored. Scanned PDFs without a text layer: send page images. POST JSON {url} or {file_base64, mime_type} or {text}, or POST the raw file (Content-Tlink_check— 1 free call per caller, then $0.0025 USDC via x402 (paid in-band: params._meta["x402/payment"]). Check up to 20 URLs in one call: HTTP status, final URL after redirects, redirect count, latency, content-type, ok flag. When to use: Use link-check to test up to 20 URLs for broken links in one call.list_endpoints— Free. List every endpoint (core products first) with its price in USDC, description and example query. Core: invoice-json $0.0075/page, token-risk $0.005, tx-explain $0.0025, wallet-profile $0.005, contract-abi $0.0025, site-contacts $0.004, page-rag $0.0025, token-info $0.0025, ens $0.0025, tx-status $0.0015, dns $0.0025, domain-whois $0.005, ssl-cert $0.005, geocode $0.0015; utilities $0.001-$0.01; dataset downloads $1. 1 free call per route per caller.llm_cost— 1 free call per caller, then $0.005 USDC via x402 (paid in-band: params._meta["x402/payment"]). Token & cost calculator: estimate tokens for a text (or pass input_tokens/output_tokens) and price it across several models using provider list prices (LiteLLM price table, MIT). Params: models (comma list of model ids like gpt-4o-mini, claude-sonnet-4-5, gemini/gemini-2.5-flash or search words, max 15), text or input_tokens, output_tokens, calls. When to use: Use llm-cost to compare what a workload costs across models.llm_pricing— 1 free call per caller, then $0.005 USDC via x402 (paid in-band: params._meta["x402/payment"]). AI model list prices (USD per 1M input/output/cached tokens, context window, vision/tools/reasoning flags) for ~3,000 models across OpenAI, Anthropic, Google, Mistral, Groq, Bedrock, Azure, Together, Fireworks and more, plus verified free tiers/rate limits of AI APIs. Filters: q, provider, free=yes, max_input_per_m, min_context, vision=yes, tools=yes, sort=input|output|context, limit<=100.llm_pricing_sample— Free. List prices of five popular LLMs (USD per 1M tokens, LiteLLM table, MIT).mcp_servers— 1 free call per caller, then $0.001 USDC via x402 (paid in-band: params._meta["x402/payment"]). Search 4,259 MCP (Model Context Protocol) servers by keyword, category, language (python/typescript/go/rust...), scope (cloud/local) and official flag. Returns repo URL and description.mcp_servers_sample— Free. Five sample MCP servers from the 4,259-server directory (MIT source).news_entity— 1 free call per caller, then $0.005 USDC via x402 (paid in-band: params._meta["x402/payment"]). Entity news last 24h: who is writing about a company, person or project in the last 24 hours - article count, top sources, top countries, headlines - plus a Wikipedia identity check of the entity. Data: GDELT DOC 2.0 + Wikipedia. When to use: Use news-entity for a 24h media snapshot of one company, person or project.news_monitor— 1 free call per caller, then $0.005 USDC via x402 (paid in-band: params._meta["x402/payment"]). News search and monitor: latest news articles worldwide (65+ languages) matching keywords in a time window (1h to 2 weeks), newest first, with title, URL, source domain, language, country and time. Data: GDELT Project DOC 2.0 API. When to use: Use news-monitor to fetch the latest articles for keywords; news-entity for a 24h who-writes-about-X digest; news-sentiment for tone.news_sentiment— 1 free call per caller, then $0.005 USDC via x402 (paid in-band: params._meta["x402/payment"]). News sentiment: average tone of worldwide news coverage about a topic, company or person over a window (default 7 days) with label (negative to positive), trend (improving/worsening/stable) and the tone timeline. Data: GDELT DOC 2.0 tone analysis. When to use: Use news-sentiment to judge whether coverage of a topic is negative or positive, and its trend.page_check— 1 free call per caller, then $0.0025 USDC via x402 (paid in-band: params._meta["x402/payment"]). One-call page audit for agents: HTTP status, redirects, latency, title, meta description, canonical, lang, Open Graph, JSON-LD types, headings, word count, plus agent-friendliness: robots.txt rules for 14 AI crawlers, llms.txt, sitemap, and a 0-100 score with reasons. When to use: Use page-check for status, redirects, headers and SEO basics of a URL; for content use page-rag.page_markdown— 1 free call per caller, then $0.0025 USDC via x402 (paid in-band: params._meta["x402/payment"]). Convert a public web page to clean Markdown (title, headings, paragraphs, lists, links, code), scripts/nav/footer removed, max ~60k chars. robots.txt respected. When to use: Legacy converter. page-rag gives cleaner main-content Markdown plus chunks at the same price.page_meta— 1 free call per caller, then $0.0025 USDC via x402 (paid in-band: params._meta["x402/payment"]). Fetch a public web page (robots.txt respected) and return title, meta description, canonical, Open Graph/Twitter tags, language, headings, link counts, HTTP status. When to use: Use page-meta for title, description, Open Graph and headings only; for full content use page-rag.page_rag— 1 free call per caller, then $0.0025 USDC via x402 (paid in-band: params._meta["x402/payment"]). Any public web page -> clean LLM-ready Markdown + RAG chunks in one call: main content via Mozilla Readability (no nav/ads/footers), absolute links, title/description/language/canonical/published+modified dates/JSON-LD types, word + token estimates, sha256 content hash for change detection, and heading-aware chunks (configurable size + overlap, each with its heading path). Plain HTTP, robots.txt respected, Markdown/plain text passed through. Flags pages that likely need JavaScript. When to use: Use page-rag to feed a web page into an LLM or a vector store. Use page-meta or page-check for SEO/meta tags and HTTP status only. page-markdown is the older, simpler converter; page-rag is recommended.qr_code— 1 free call per caller, then $0.0015 USDC via x402 (paid in-band: params._meta["x402/payment"]). QR code generator: text, URL, payment URI (e.g. ethereum:/USDC request) or Wi-Fi credentials (ssid + password) to a QR code as SVG (inline + data URI) and/or GIF data URI. Error correction L/M/Q/H, scale, quiet-zone margin, colours, optional 0/1 module matrix. UTF-8 byte mode, computed locally, nothing stored. When to use: Use qr-code to turn a URL, payment request, Wi-Fi login or any text into a scannable QR image (SVG or GIF data URI).robots_check— 1 free call per caller, then $0.003 USDC via x402 (paid in-band: params._meta["x402/payment"]). Check whether a URL may be crawled per the site's robots.txt for a given user-agent. Returns allowed, matched rule, crawl-delay, sitemaps. When to use: Use robots-check before crawling a URL with your own user-agent.rug_check— 1 free call per caller, then $0.005 USDC via x402 (paid in-band: params._meta["x402/payment"]). Rug pull check: one ERC-20 token, pass/warn/fail on four groups - honeypot signals (GoPlus simulation, buy/sell tax, cannot sell all), owner rights (mint, blacklist, pause, hidden owner, proxy, renounce, source verified), liquidity (USD, pairs, pair age, LP locked/burned) and holder concentration - plus an overall rugRisk. Base or Ethereum. Data: GoPlus Security public API (contract flags, taxes, honeypot simulation, holders, LP lock) + DexScreener (pairs, liquidity, volume). Every flag names its source field. Not financial advice. When to use: Use rug-check for new or unknown tokens (memecoins, snipes): honeypot, owner rights, liquidity and holder checks with pass/warn/fail.site_contacts— 1 free call per caller, then $0.004 USDC via x402 (paid in-band: params._meta["x402/payment"]). Company website -> one clean contact row: role emails only (info@, sales@ ...) with MX check, phones validated and normalized to E.164 with confidence, schema.org address/name, Danish CVR and EU VAT ids, official social profiles. Respects robots.txt, plain HTTP, home + up to 5 contact pages. Personal emails omitted (GDPR). When to use: Use site-contacts when you need the business contact details of a company from its own website. Use page-rag when you need the text of a page, and email-verify to check one email address you already have.sitemap— 1 free call per caller, then $0.003 USDC via x402 (paid in-band: params._meta["x402/payment"]). Sitemap to URL list: give a sitemap URL or just a domain (sitemaps found via robots.txt, then /sitemap.xml). Follows sitemap indexes (newest first, up to 10 child sitemaps), reads .xml, .xml.gz and text sitemaps, and returns every URL with lastmod, changefreq, priority, hreflang alternates, image and news counts. Filter by contains= and since= (lastmod). When to use: Use sitemap to list all pages a site declares (with lastmod) before crawling or to find recently changed pages. Use robots-check for crawl permission of one URL.ssl_cert— 1 free call per caller, then $0.005 USDC via x402 (paid in-band: params._meta["x402/payment"]). TLS/SSL certificate check from public Certificate Transparency logs (Cert Spotter, crt.sh fallback): currently valid certificates for a hostname, newest first, with issuer, validity dates, days left, SAN names and an expiring-within-14-days flag. For expiry monitoring and phishing/subdomain vetting. When to use: Use ssl-cert to check TLS certificate expiry and issuer for a hostname from public CT logs.summarize— 1 free call per caller, then $0.004 USDC via x402 (paid in-band: params._meta["x402/payment"]). Text summarizer: summarize up to 12,000 characters into 3-6 bullet points or one paragraph (max_words 20-250, optional output language). Small LLM (Workers AI Llama 3.1 8B), facts only from the text. GET query or POST JSON body. When to use: Use summarize to condense long text into bullets or a paragraph.token_compare— 1 free call per caller, then $0.0075 USDC via x402 (paid in-band: params._meta["x402/payment"]). Token risk comparison: two ERC-20 tokens side by side: which has the lower risk score and why, flags only one of them has, taxes, holders, liquidity, volume, plus a short AI verdict from the computed facts (rule-based fallback). Base or Ethereum. Data: GoPlus Security public API (contract flags, taxes, honeypot simulation, holders, LP lock) + DexScreener (pairs, liquidity, volume). Every flag names its source field. Not financial advice. When to use: Use token-compare when an agent must choose between two tokens.token_info— 1 free call per caller, then $0.0025 USDC via x402 (paid in-band: params._meta["x402/payment"]). ERC-20 token lookup on Ethereum, Base, Arbitrum, Optimism or Polygon: name, symbol, decimals, total supply (raw + human), live USD price with confidence (DefiLlama) and FDV, for up to 10 token addresses in one call. Use it before showing, pricing or converting a token amount. When to use: Use token-info before displaying, converting or pricing an ERC-20 amount: decimals, symbol, supply and USD price for up to 10 tokens in one call.token_portfolio— 1 free call per caller, then $0.01 USDC via x402 (paid in-band: params._meta["x402/payment"]). Token portfolio risk scan: up to 20 ERC-20 tokens in one call, each with risk level, score, top flags, liquidity and price, plus a summary (count per risk level, average score, riskiest tokens). Base or Ethereum. Data: GoPlus Security public API (contract flags, taxes, honeypot simulation, holders, LP lock) + DexScreener (pairs, liquidity, volume). Every flag names its source field. Not financial advice. When to use: Use token-portfolio to risk-rank up to 20 holdings of a wallet in one call.token_price— 1 free call per caller, then $0.0025 USDC via x402 (paid in-band: params._meta["x402/payment"]). Token price: current USD price of one token by contract address from DEX data, plus market cap, FDV, 24h volume, liquidity and 24h change. Base, Ethereum, Solana, Arbitrum, BSC, Polygon, Optimism, Avalanche. Data: GeckoTerminal public DEX API (prices, pools, OHLCV across 8 chains). Not financial advice. When to use: Use token-price for one token, token-prices for up to 30 at once, token-price-history for candles, token-pools for liquidity.token_price_history— 1 free call per caller, then $0.005 USDC via x402 (paid in-band: params._meta["x402/payment"]). Token price history: OHLCV candles (daily up to 180, hourly up to 168) for one token from its most liquid DEX pool, with period change, high and low. Data: GeckoTerminal public DEX API (prices, pools, OHLCV across 8 chains). Not financial advice. When to use: Use token-price-history for daily or hourly OHLCV candles of a DEX token.token_prices— 1 free call per caller, then $0.004 USDC via x402 (paid in-band: params._meta["x402/payment"]). Token prices (multi): USD prices for up to 30 tokens on one network in one call, with market cap, 24h volume and 24h change per token. Data: GeckoTerminal public DEX API (prices, pools, OHLCV across 8 chains). Not financial advice. When to use: Use token-prices to price a whole portfolio or watchlist in one call.token_risk— 1 free call per caller, then $0.005 USDC via x402 (paid in-band: params._meta["x402/payment"]). Deterministic ERC-20 risk check on Base or Ethereum from public on-chain data only: privileged functions in bytecode (mint, blacklist, pause, fees, limits, trading switch), upgradeable proxy + implementation, owner and renounce status, Uniswap v2/v3 + Aerodrome liquidity in USD (Chainlink), owner/pool/burned supply share. Every flag has evidence; lists what was NOT checked (no honeypot simulation). Not financial advice. When to use: Use token-risk before an agent buys, lists or recommends an ERC-20 token. It reads public chain data only: it does not simulate buys/sells (no honeypot test) and does not return price history or market data.token_score— 1 free call per caller, then $0.005 USDC via x402 (paid in-band: params._meta["x402/payment"]). Token risk score: one ERC-20 token scored (0-100) with a short AI verdict (Workers AI rephrasing only the computed facts; rule-based fallback), risk level, evidence flags, taxes, holder concentration, owner status and DEX liquidity. Base or Ethereum. Data: GoPlus Security public API (contract flags, taxes, honeypot simulation, holders, LP lock) + DexScreener (pairs, liquidity, volume). Every flag names its source field. Not financial advice. When to use: Use token-score for a quick risk score + AI verdict on one token before a trade. Use rug-check for a pass/fail breakdown, token-compare to pick between two, token-portfolio for up to 20 tokens, token-risk for our own on-chain bytecode analysis.translate— 1 free call per caller, then $0.005 USDC via x402 (paid in-band: params._meta["x402/payment"]). Text translation: translate up to 3,000 characters into one of 28 languages (en, da, de, fr, es, it, pt, nl, sv, no, fi, pl, ru, uk, tr, ar, hi, ja, ko, zh, id, vi, th, cs, ro, el, he, hu), source auto-detected. Small LLM (Workers AI). GET query or POST JSON body. When to use: Use translate for short texts into 28 languages.tx_explain— 1 free call per caller, then $0.0025 USDC via x402 (paid in-band: params._meta["x402/payment"]). Base or Ethereum transaction hash -> plain JSON: status (success/failed/pending), block time, confirmations, from/to, ETH value, gas used and fee (incl. Base L1 fee), method selector + name, and every ERC-20/ERC-721 Transfer in the receipt with token symbol, decimals and human amounts. Optional payment check: expect_to + expect_token (USDC, ETH, symbol or address) + expect_amount confirms a payment arrived (e.g. verify a USDC or x402 settlement). Public RPC data only. When to use: Use tx-explain to understand one transaction or to verify a payment (USDC, ETH, any ERC-20) before delivering goods. Use wallet-profile for an address, contract-abi for a contract interface and token-risk to judge a token.tx_status— 1 free call per caller, then $0.0015 USDC via x402 (paid in-band: params._meta["x402/payment"]). Transaction status for polling: up to 10 tx hashes in one call, searched across Ethereum, Base, Arbitrum, Optimism and Polygon (or one chain): pending / success / failed / not_found, block, confirmations, finalized flag, from/to, gas used, fee in native coin, explorer link. When to use: Use tx-status to poll whether transactions are pending, confirmed, failed or finalized (up to 10 hashes, chain auto-detected). Use tx-explain for a full decode of one tx.wallet_profile— 1 free call per caller, then $0.005 USDC via x402 (paid in-band: params._meta["x402/payment"]). Base or Ethereum address -> profile in one call: EOA, contract or EIP-7702-delegated EOA; ETH balance; nonce (tx count); balances of major tokens (USDC, USDT, EURC, DAI, WETH, cbBTC/WBTC, USDbC); for contracts: bytecode size, EIP-1967/ZeppelinOS proxy implementation, beacon, owner(), ERC-20 name/symbol/decimals/supply and Sourcify verification. Public RPC data only. When to use: Use wallet-profile before sending funds to or trusting an address (is it a contract? does it hold USDC?). Use tx-explain for one transaction and contract-abi for the full interface of a contract.wiki_fact— 1 free call per caller, then $0.005 USDC via x402 (paid in-band: params._meta["x402/payment"]). Wikipedia fact lookup: best-matching Wikipedia article for a query with summary, description, URL and structured Wikidata facts (type, country, headquarters, founded, founders, CEO, website, industry, employees, ticker, population, coordinates). Any Wikipedia language. When to use: Use wiki-fact to ground an entity: summary plus structured facts (founded, HQ, CEO, website).x402_services— 1 free call per caller, then $0.0025 USDC via x402 (paid in-band: params._meta["x402/payment"]). Search ~8,900 live x402 pay-per-call APIs (verified/unverified by nohumans.directory probes, CC BY 4.0): name, endpoint URL, category, price, chains, status, score. Filters: q, category, chain, max_price, status=verified, limit<=100.
First seen · last seen · last active