{
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-10-05",
    "license": "CC-BY-4.0",
    "method": "https://www.anchorterminal.com/benchmark/",
    "methodology": "0.3",
    "openapi": "https://www.anchorterminal.com/openapi.json",
    "preview": false,
    "run": "2026-10-01",
    "runLabel": "October 2026 research run"
  },
  "tool": {
    "category": "payment-platforms",
    "endpoint": "https://www.blixtworks.com/mcp",
    "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/blixtworks-tools.json",
    "kind": "mcp",
    "listed": "indexed",
    "liveUrl": "https://www.anchorterminal.com/api/v1/live/blixtworks-tools.json",
    "markdownUrl": "https://www.anchorterminal.com/tools/blixtworks-tools.md",
    "mcpTools": {
      "check": {
        "checker": "anchor-check/1.0",
        "totalTokens": 12150,
        "counts": {
          "error": 0,
          "note": 1,
          "warn": 132
        },
        "findings": [
          {
            "rule": "TC11",
            "severity": "warn",
            "tool": "address_validate",
            "message": "2 parameters without a description: address, chain",
            "fix": "Describe each one: format, units, an example, and what happens when it's left out."
          },
          {
            "rule": "TC11",
            "severity": "warn",
            "tool": "base64",
            "message": "2 parameters without a description: mode, text",
            "fix": "Describe each one: format, units, an example, and what happens when it's left out."
          },
          {
            "rule": "TC11",
            "severity": "warn",
            "tool": "caption",
            "message": "1 parameter without a description: image",
            "fix": "Describe each one: format, units, an example, and what happens when it's left out."
          },
          {
            "rule": "TC11",
            "severity": "warn",
            "tool": "case_convert",
            "message": "2 parameters without a description: text, to",
            "fix": "Describe each one: format, units, an example, and what happens when it's left out."
          },
          {
            "rule": "TC11",
            "severity": "warn",
            "tool": "categorize",
            "message": "2 parameters without a description: image, labels",
            "fix": "Describe each one: format, units, an example, and what happens when it's left out."
          },
          {
            "rule": "TC11",
            "severity": "warn",
            "tool": "color_convert",
            "message": "1 parameter without a description: color",
            "fix": "Describe each one: format, units, an example, and what happens when it's left out."
          },
          {
            "rule": "TC11",
            "severity": "warn",
            "tool": "cron_parse",
            "message": "2 parameters without a description: count, expression",
            "fix": "Describe each one: format, units, an example, and what happens when it's left out."
          },
          {
            "rule": "TC11",
            "severity": "warn",
            "tool": "csv_to_json",
            "message": "1 parameter without a description: csv",
            "fix": "Describe each one: format, units, an example, and what happens when it's left out."
          },
          {
            "rule": "TC11",
            "severity": "warn",
            "tool": "currency_convert",
            "message": "3 parameters without a description: amount, from, to",
            "fix": "Describe each one: format, units, an example, and what happens when it's left out."
          },
          {
            "rule": "TC11",
            "severity": "warn",
            "tool": "date_diff",
            "message": "2 parameters without a description: from, to",
            "fix": "Describe each one: format, units, an example, and what happens when it's left out."
          },
          {
            "rule": "TC11",
            "severity": "warn",
            "tool": "diff",
            "message": "2 parameters without a description: a, b",
            "fix": "Describe each one: format, units, an example, and what happens when it's left out."
          },
          {
            "rule": "TC11",
            "severity": "warn",
            "tool": "distance",
            "message": "2 parameters without a description: from, to",
            "fix": "Describe each one: format, units, an example, and what happens when it's left out."
          },
          {
            "rule": "TC11",
            "severity": "warn",
            "tool": "dns",
            "message": "2 parameters without a description: domain, type",
            "fix": "Describe each one: format, units, an example, and what happens when it's left out."
          },
          {
            "rule": "TC11",
            "severity": "warn",
            "tool": "email_validate",
            "message": "1 parameter without a description: email",
            "fix": "Describe each one: format, units, an example, and what happens when it's left out."
          },
          {
            "rule": "TC11",
            "severity": "warn",
            "tool": "embed",
            "message": "1 parameter without a description: image",
            "fix": "Describe each one: format, units, an example, and what happens when it's left out."
          },
          {
            "rule": "TC11",
            "severity": "warn",
            "tool": "ens_resolve",
            "message": "1 parameter without a description: name",
            "fix": "Describe each one: format, units, an example, and what happens when it's left out."
          },
          {
            "rule": "TC11",
            "severity": "warn",
            "tool": "exif",
            "message": "1 parameter without a description: image",
            "fix": "Describe each one: format, units, an example, and what happens when it's left out."
          },
          {
            "rule": "TC11",
            "severity": "warn",
            "tool": "gas_price",
            "message": "1 parameter without a description: chain",
            "fix": "Describe each one: format, units, an example, and what happens when it's left out."
          },
          {
            "rule": "TC11",
            "severity": "warn",
            "tool": "hash",
            "message": "2 parameters without a description: algorithms, text",
            "fix": "Describe each one: format, units, an example, and what happens when it's left out."
          },
          {
            "rule": "TC11",
            "severity": "warn",
            "tool": "hmac",
            "message": "3 parameters without a description: algorithm, key, text",
            "fix": "Describe each one: format, units, an example, and what happens when it's left out."
          },
          {
            "rule": "TC11",
            "severity": "warn",
            "tool": "http_headers",
            "message": "1 parameter without a description: url",
            "fix": "Describe each one: format, units, an example, and what happens when it's left out."
          },
          {
            "rule": "TC11",
            "severity": "warn",
            "tool": "iban_validate",
            "message": "1 parameter without a description: iban",
            "fix": "Describe each one: format, units, an example, and what happens when it's left out."
          },
          {
            "rule": "TC11",
            "severity": "warn",
            "tool": "image_crop",
            "message": "5 parameters without a description: height, image, width, x, y",
            "fix": "Describe each one: format, units, an example, and what happens when it's left out."
          },
          {
            "rule": "TC11",
            "severity": "warn",
            "tool": "image_info",
            "message": "1 parameter without a description: image",
            "fix": "Describe each one: format, units, an example, and what happens when it's left out."
          },
          {
            "rule": "TC11",
            "severity": "warn",
            "tool": "image_palette",
            "message": "2 parameters without a description: colors, image",
            "fix": "Describe each one: format, units, an example, and what happens when it's left out."
          },
          {
            "rule": "TC11",
            "severity": "warn",
            "tool": "image_placeholder",
            "message": "3 parameters without a description: color, height, width",
            "fix": "Describe each one: format, units, an example, and what happens when it's left out."
          },
          {
            "rule": "TC11",
            "severity": "warn",
            "tool": "image_resize",
            "message": "2 parameters without a description: image, width",
            "fix": "Describe each one: format, units, an example, and what happens when it's left out."
          },
          {
            "rule": "TC11",
            "severity": "warn",
            "tool": "image_transform",
            "message": "2 parameters without a description: filter, image",
            "fix": "Describe each one: format, units, an example, and what happens when it's left out."
          },
          {
            "rule": "TC11",
            "severity": "warn",
            "tool": "ip_lookup",
            "message": "1 parameter without a description: host",
            "fix": "Describe each one: format, units, an example, and what happens when it's left out."
          },
          {
            "rule": "TC11",
            "severity": "warn",
            "tool": "json_format",
            "message": "2 parameters without a description: json, mode",
            "fix": "Describe each one: format, units, an example, and what happens when it's left out."
          },
          {
            "rule": "TC11",
            "severity": "warn",
            "tool": "json_query",
            "message": "2 parameters without a description: json, path",
            "fix": "Describe each one: format, units, an example, and what happens when it's left out."
          },
          {
            "rule": "TC11",
            "severity": "warn",
            "tool": "json_to_csv",
            "message": "1 parameter without a description: json",
            "fix": "Describe each one: format, units, an example, and what happens when it's left out."
          },
          {
            "rule": "TC11",
            "severity": "warn",
            "tool": "jwt_decode",
            "message": "1 parameter without a description: token",
            "fix": "Describe each one: format, units, an example, and what happens when it's left out."
          },
          {
            "rule": "TC11",
            "severity": "warn",
            "tool": "language_detect",
            "message": "1 parameter without a description: text",
            "fix": "Describe each one: format, units, an example, and what happens when it's left out."
          },
          {
            "rule": "TC11",
            "severity": "warn",
            "tool": "lorem",
            "message": "1 parameter without a description: paragraphs",
            "fix": "Describe each one: format, units, an example, and what happens when it's left out."
          },
          {
            "rule": "TC11",
            "severity": "warn",
            "tool": "luhn_validate",
            "message": "1 parameter without a description: number",
            "fix": "Describe each one: format, units, an example, and what happens when it's left out."
          },
          {
            "rule": "TC11",
            "severity": "warn",
            "tool": "markdown_to_html",
            "message": "1 parameter without a description: markdown",
            "fix": "Describe each one: format, units, an example, and what happens when it's left out."
          },
          {
            "rule": "TC11",
            "severity": "warn",
            "tool": "md",
            "message": "2 parameters without a description: mode, url",
            "fix": "Describe each one: format, units, an example, and what happens when it's left out."
          },
          {
            "rule": "TC11",
            "severity": "warn",
            "tool": "metadata",
            "message": "1 parameter without a description: url",
            "fix": "Describe each one: format, units, an example, and what happens when it's left out."
          },
          {
            "rule": "TC11",
            "severity": "warn",
            "tool": "number_base",
            "message": "3 parameters without a description: from, to, value",
            "fix": "Describe each one: format, units, an example, and what happens when it's left out."
          },
          {
            "rule": "TC11",
            "severity": "warn",
            "tool": "ocr",
            "message": "1 parameter without a description: image",
            "fix": "Describe each one: format, units, an example, and what happens when it's left out."
          },
          {
            "rule": "TC11",
            "severity": "warn",
            "tool": "pdf",
            "message": "1 parameter without a description: pdf",
            "fix": "Describe each one: format, units, an example, and what happens when it's left out."
          },
          {
            "rule": "TC11",
            "severity": "warn",
            "tool": "percentage",
            "message": "3 parameters without a description: a, b, mode",
            "fix": "Describe each one: format, units, an example, and what happens when it's left out."
          },
          {
            "rule": "TC11",
            "severity": "warn",
            "tool": "phone_parse",
            "message": "1 parameter without a description: phone",
            "fix": "Describe each one: format, units, an example, and what happens when it's left out."
          },
          {
            "rule": "TC11",
            "severity": "warn",
            "tool": "qr",
            "message": "2 parameters without a description: format, text",
            "fix": "Describe each one: format, units, an example, and what happens when it's left out."
          },
          {
            "rule": "TC11",
            "severity": "warn",
            "tool": "regex",
            "message": "3 parameters without a description: flags, pattern, text",
            "fix": "Describe each one: format, units, an example, and what happens when it's left out."
          },
          {
            "rule": "TC11",
            "severity": "warn",
            "tool": "robots_check",
            "message": "2 parameters without a description: url, userAgent",
            "fix": "Describe each one: format, units, an example, and what happens when it's left out."
          },
          {
            "rule": "TC11",
            "severity": "warn",
            "tool": "rss_parse",
            "message": "1 parameter without a description: url",
            "fix": "Describe each one: format, units, an example, and what happens when it's left out."
          },
          {
            "rule": "TC11",
            "severity": "warn",
            "tool": "sitemap_parse",
            "message": "1 parameter without a description: url",
            "fix": "Describe each one: format, units, an example, and what happens when it's left out."
          },
          {
            "rule": "TC11",
            "severity": "warn",
            "tool": "slugify",
            "message": "1 parameter without a description: text",
            "fix": "Describe each one: format, units, an example, and what happens when it's left out."
          },
          {
            "rule": "TC11",
            "severity": "warn",
            "tool": "ssl_check",
            "message": "1 parameter without a description: domain",
            "fix": "Describe each one: format, units, an example, and what happens when it's left out."
          },
          {
            "rule": "TC11",
            "severity": "warn",
            "tool": "text_stats",
            "message": "1 parameter without a description: text",
            "fix": "Describe each one: format, units, an example, and what happens when it's left out."
          },
          {
            "rule": "TC11",
            "severity": "warn",
            "tool": "timestamp",
            "message": "2 parameters without a description: timezone, value",
            "fix": "Describe each one: format, units, an example, and what happens when it's left out."
          },
          {
            "rule": "TC11",
            "severity": "warn",
            "tool": "token_info",
            "message": "2 parameters without a description: chain, token",
            "fix": "Describe each one: format, units, an example, and what happens when it's left out."
          },
          {
            "rule": "TC11",
            "severity": "warn",
            "tool": "tx_lookup",
            "message": "2 parameters without a description: chain, hash",
            "fix": "Describe each one: format, units, an example, and what happens when it's left out."
          },
          {
            "rule": "TC11",
            "severity": "warn",
            "tool": "unit_convert",
            "message": "3 parameters without a description: from, to, value",
            "fix": "Describe each one: format, units, an example, and what happens when it's left out."
          },
          {
            "rule": "TC11",
            "severity": "warn",
            "tool": "url_expand",
            "message": "1 parameter without a description: url",
            "fix": "Describe each one: format, units, an example, and what happens when it's left out."
          },
          {
            "rule": "TC11",
            "severity": "warn",
            "tool": "uuid",
            "message": "1 parameter without a description: count",
            "fix": "Describe each one: format, units, an example, and what happens when it's left out."
          },
          {
            "rule": "TC11",
            "severity": "warn",
            "tool": "wallet_balance",
            "message": "2 parameters without a description: address, chain",
            "fix": "Describe each one: format, units, an example, and what happens when it's left out."
          },
          {
            "rule": "TC11",
            "severity": "warn",
            "tool": "whois",
            "message": "1 parameter without a description: domain",
            "fix": "Describe each one: format, units, an example, and what happens when it's left out."
          },
          {
            "rule": "TC11",
            "severity": "warn",
            "tool": "word_frequency",
            "message": "3 parameters without a description: limit, ngram, text",
            "fix": "Describe each one: format, units, an example, and what happens when it's left out."
          },
          {
            "rule": "TC11",
            "severity": "warn",
            "tool": "xml_to_json",
            "message": "1 parameter without a description: xml",
            "fix": "Describe each one: format, units, an example, and what happens when it's left out."
          },
          {
            "rule": "TC11",
            "severity": "warn",
            "tool": "yaml_convert",
            "message": "2 parameters without a description: text, to",
            "fix": "Describe each one: format, units, an example, and what happens when it's left out."
          },
          {
            "rule": "TC16",
            "severity": "warn",
            "tool": "address_validate",
            "message": "no readOnlyHint or destructiveHint",
            "fix": "Its name starts with \"validate\"; if it only reads, set readOnlyHint: true so harnesses can run it without asking."
          },
          {
            "rule": "TC16",
            "severity": "warn",
            "tool": "base64",
            "message": "no readOnlyHint or destructiveHint",
            "fix": "Set readOnlyHint: true if it only reads; otherwise set destructiveHint and idempotentHint."
          },
          {
            "rule": "TC16",
            "severity": "warn",
            "tool": "caption",
            "message": "no readOnlyHint or destructiveHint",
            "fix": "Set readOnlyHint: true if it only reads; otherwise set destructiveHint and idempotentHint."
          },
          {
            "rule": "TC16",
            "severity": "warn",
            "tool": "case_convert",
            "message": "no readOnlyHint or destructiveHint",
            "fix": "Set readOnlyHint: true if it only reads; otherwise set destructiveHint and idempotentHint."
          },
          {
            "rule": "TC16",
            "severity": "warn",
            "tool": "categorize",
            "message": "no readOnlyHint or destructiveHint",
            "fix": "Set readOnlyHint: true if it only reads; otherwise set destructiveHint and idempotentHint."
          },
          {
            "rule": "TC16",
            "severity": "warn",
            "tool": "check_credit",
            "message": "no readOnlyHint or destructiveHint",
            "fix": "Its name starts with \"check\"; if it only reads, set readOnlyHint: true so harnesses can run it without asking."
          },
          {
            "rule": "TC16",
            "severity": "warn",
            "tool": "color_convert",
            "message": "no readOnlyHint or destructiveHint",
            "fix": "Set readOnlyHint: true if it only reads; otherwise set destructiveHint and idempotentHint."
          },
          {
            "rule": "TC16",
            "severity": "warn",
            "tool": "cron_parse",
            "message": "no readOnlyHint or destructiveHint",
            "fix": "Set readOnlyHint: true if it only reads; otherwise set destructiveHint and idempotentHint."
          },
          {
            "rule": "TC16",
            "severity": "warn",
            "tool": "csv_to_json",
            "message": "no readOnlyHint or destructiveHint",
            "fix": "Set readOnlyHint: true if it only reads; otherwise set destructiveHint and idempotentHint."
          },
          {
            "rule": "TC16",
            "severity": "warn",
            "tool": "currency_convert",
            "message": "no readOnlyHint or destructiveHint",
            "fix": "Set readOnlyHint: true if it only reads; otherwise set destructiveHint and idempotentHint."
          },
          {
            "rule": "TC16",
            "severity": "warn",
            "tool": "date_diff",
            "message": "no readOnlyHint or destructiveHint",
            "fix": "Its name starts with \"diff\"; if it only reads, set readOnlyHint: true so harnesses can run it without asking."
          },
          {
            "rule": "TC16",
            "severity": "warn",
            "tool": "diff",
            "message": "no readOnlyHint or destructiveHint",
            "fix": "Its name starts with \"diff\"; if it only reads, set readOnlyHint: true so harnesses can run it without asking."
          },
          {
            "rule": "TC16",
            "severity": "warn",
            "tool": "distance",
            "message": "no readOnlyHint or destructiveHint",
            "fix": "Set readOnlyHint: true if it only reads; otherwise set destructiveHint and idempotentHint."
          },
          {
            "rule": "TC16",
            "severity": "warn",
            "tool": "dns",
            "message": "no readOnlyHint or destructiveHint",
            "fix": "Set readOnlyHint: true if it only reads; otherwise set destructiveHint and idempotentHint."
          },
          {
            "rule": "TC16",
            "severity": "warn",
            "tool": "email_validate",
            "message": "no readOnlyHint or destructiveHint",
            "fix": "Its name starts with \"validate\"; if it only reads, set readOnlyHint: true so harnesses can run it without asking."
          },
          {
            "rule": "TC16",
            "severity": "warn",
            "tool": "embed",
            "message": "no readOnlyHint or destructiveHint",
            "fix": "Set readOnlyHint: true if it only reads; otherwise set destructiveHint and idempotentHint."
          },
          {
            "rule": "TC16",
            "severity": "warn",
            "tool": "ens_resolve",
            "message": "no readOnlyHint or destructiveHint",
            "fix": "Its name starts with \"resolve\"; if it only reads, set readOnlyHint: true so harnesses can run it without asking."
          },
          {
            "rule": "TC16",
            "severity": "warn",
            "tool": "exif",
            "message": "no readOnlyHint or destructiveHint",
            "fix": "Set readOnlyHint: true if it only reads; otherwise set destructiveHint and idempotentHint."
          },
          {
            "rule": "TC16",
            "severity": "warn",
            "tool": "gas_price",
            "message": "no readOnlyHint or destructiveHint",
            "fix": "Set readOnlyHint: true if it only reads; otherwise set destructiveHint and idempotentHint."
          },
          {
            "rule": "TC16",
            "severity": "warn",
            "tool": "hash",
            "message": "no readOnlyHint or destructiveHint",
            "fix": "Set readOnlyHint: true if it only reads; otherwise set destructiveHint and idempotentHint."
          },
          {
            "rule": "TC16",
            "severity": "warn",
            "tool": "hmac",
            "message": "no readOnlyHint or destructiveHint",
            "fix": "Set readOnlyHint: true if it only reads; otherwise set destructiveHint and idempotentHint."
          },
          {
            "rule": "TC16",
            "severity": "warn",
            "tool": "how_to_pay",
            "message": "no readOnlyHint or destructiveHint",
            "fix": "Set readOnlyHint: true if it only reads; otherwise set destructiveHint and idempotentHint."
          },
          {
            "rule": "TC16",
            "severity": "warn",
            "tool": "http_headers",
            "message": "no readOnlyHint or destructiveHint",
            "fix": "Set readOnlyHint: true if it only reads; otherwise set destructiveHint and idempotentHint."
          },
          {
            "rule": "TC16",
            "severity": "warn",
            "tool": "iban_validate",
            "message": "no readOnlyHint or destructiveHint",
            "fix": "Its name starts with \"validate\"; if it only reads, set readOnlyHint: true so harnesses can run it without asking."
          },
          {
            "rule": "TC16",
            "severity": "warn",
            "tool": "image_crop",
            "message": "no readOnlyHint or destructiveHint",
            "fix": "Set readOnlyHint: true if it only reads; otherwise set destructiveHint and idempotentHint."
          },
          {
            "rule": "TC16",
            "severity": "warn",
            "tool": "image_info",
            "message": "no readOnlyHint or destructiveHint",
            "fix": "Its name starts with \"info\"; if it only reads, set readOnlyHint: true so harnesses can run it without asking."
          },
          {
            "rule": "TC16",
            "severity": "warn",
            "tool": "image_palette",
            "message": "no readOnlyHint or destructiveHint",
            "fix": "Set readOnlyHint: true if it only reads; otherwise set destructiveHint and idempotentHint."
          },
          {
            "rule": "TC16",
            "severity": "warn",
            "tool": "image_placeholder",
            "message": "no readOnlyHint or destructiveHint",
            "fix": "Set readOnlyHint: true if it only reads; otherwise set destructiveHint and idempotentHint."
          },
          {
            "rule": "TC16",
            "severity": "warn",
            "tool": "image_resize",
            "message": "no readOnlyHint or destructiveHint",
            "fix": "Set readOnlyHint: true if it only reads; otherwise set destructiveHint and idempotentHint."
          },
          {
            "rule": "TC16",
            "severity": "warn",
            "tool": "image_transform",
            "message": "no readOnlyHint or destructiveHint",
            "fix": "Set readOnlyHint: true if it only reads; otherwise set destructiveHint and idempotentHint."
          },
          {
            "rule": "TC16",
            "severity": "warn",
            "tool": "ip_lookup",
            "message": "no readOnlyHint or destructiveHint",
            "fix": "Its name starts with \"lookup\"; if it only reads, set readOnlyHint: true so harnesses can run it without asking."
          },
          {
            "rule": "TC16",
            "severity": "warn",
            "tool": "json_format",
            "message": "no readOnlyHint or destructiveHint",
            "fix": "Set readOnlyHint: true if it only reads; otherwise set destructiveHint and idempotentHint."
          },
          {
            "rule": "TC16",
            "severity": "warn",
            "tool": "json_query",
            "message": "no readOnlyHint or destructiveHint",
            "fix": "Its name starts with \"query\"; if it only reads, set readOnlyHint: true so harnesses can run it without asking."
          },
          {
            "rule": "TC16",
            "severity": "warn",
            "tool": "json_to_csv",
            "message": "no readOnlyHint or destructiveHint",
            "fix": "Set readOnlyHint: true if it only reads; otherwise set destructiveHint and idempotentHint."
          },
          {
            "rule": "TC16",
            "severity": "warn",
            "tool": "jwt_decode",
            "message": "no readOnlyHint or destructiveHint",
            "fix": "Set readOnlyHint: true if it only reads; otherwise set destructiveHint and idempotentHint."
          },
          {
            "rule": "TC16",
            "severity": "warn",
            "tool": "language_detect",
            "message": "no readOnlyHint or destructiveHint",
            "fix": "Set readOnlyHint: true if it only reads; otherwise set destructiveHint and idempotentHint."
          },
          {
            "rule": "TC16",
            "severity": "warn",
            "tool": "list_tools",
            "message": "no readOnlyHint or destructiveHint",
            "fix": "Its name starts with \"list\"; if it only reads, set readOnlyHint: true so harnesses can run it without asking."
          },
          {
            "rule": "TC16",
            "severity": "warn",
            "tool": "lorem",
            "message": "no readOnlyHint or destructiveHint",
            "fix": "Set readOnlyHint: true if it only reads; otherwise set destructiveHint and idempotentHint."
          },
          {
            "rule": "TC16",
            "severity": "warn",
            "tool": "luhn_validate",
            "message": "no readOnlyHint or destructiveHint",
            "fix": "Its name starts with \"validate\"; if it only reads, set readOnlyHint: true so harnesses can run it without asking."
          },
          {
            "rule": "TC16",
            "severity": "warn",
            "tool": "markdown_to_html",
            "message": "no readOnlyHint or destructiveHint",
            "fix": "Set readOnlyHint: true if it only reads; otherwise set destructiveHint and idempotentHint."
          },
          {
            "rule": "TC16",
            "severity": "warn",
            "tool": "md",
            "message": "no readOnlyHint or destructiveHint",
            "fix": "Set readOnlyHint: true if it only reads; otherwise set destructiveHint and idempotentHint."
          },
          {
            "rule": "TC16",
            "severity": "warn",
            "tool": "metadata",
            "message": "no readOnlyHint or destructiveHint",
            "fix": "Set readOnlyHint: true if it only reads; otherwise set destructiveHint and idempotentHint."
          },
          {
            "rule": "TC16",
            "severity": "warn",
            "tool": "number_base",
            "message": "no readOnlyHint or destructiveHint",
            "fix": "Set readOnlyHint: true if it only reads; otherwise set destructiveHint and idempotentHint."
          },
          {
            "rule": "TC16",
            "severity": "warn",
            "tool": "ocr",
            "message": "no readOnlyHint or destructiveHint",
            "fix": "Set readOnlyHint: true if it only reads; otherwise set destructiveHint and idempotentHint."
          },
          {
            "rule": "TC16",
            "severity": "warn",
            "tool": "pdf",
            "message": "no readOnlyHint or destructiveHint",
            "fix": "Set readOnlyHint: true if it only reads; otherwise set destructiveHint and idempotentHint."
          },
          {
            "rule": "TC16",
            "severity": "warn",
            "tool": "percentage",
            "message": "no readOnlyHint or destructiveHint",
            "fix": "Set readOnlyHint: true if it only reads; otherwise set destructiveHint and idempotentHint."
          },
          {
            "rule": "TC16",
            "severity": "warn",
            "tool": "phone_parse",
            "message": "no readOnlyHint or destructiveHint",
            "fix": "Set readOnlyHint: true if it only reads; otherwise set destructiveHint and idempotentHint."
          },
          {
            "rule": "TC16",
            "severity": "warn",
            "tool": "qr",
            "message": "no readOnlyHint or destructiveHint",
            "fix": "Set readOnlyHint: true if it only reads; otherwise set destructiveHint and idempotentHint."
          },
          {
            "rule": "TC16",
            "severity": "warn",
            "tool": "redeem_payment",
            "message": "no readOnlyHint or destructiveHint",
            "fix": "Set readOnlyHint: true if it only reads; otherwise set destructiveHint and idempotentHint."
          },
          {
            "rule": "TC16",
            "severity": "warn",
            "tool": "regex",
            "message": "no readOnlyHint or destructiveHint",
            "fix": "Set readOnlyHint: true if it only reads; otherwise set destructiveHint and idempotentHint."
          },
          {
            "rule": "TC16",
            "severity": "warn",
            "tool": "robots_check",
            "message": "no readOnlyHint or destructiveHint",
            "fix": "Its name starts with \"check\"; if it only reads, set readOnlyHint: true so harnesses can run it without asking."
          },
          {
            "rule": "TC16",
            "severity": "warn",
            "tool": "rss_parse",
            "message": "no readOnlyHint or destructiveHint",
            "fix": "Set readOnlyHint: true if it only reads; otherwise set destructiveHint and idempotentHint."
          },
          {
            "rule": "TC16",
            "severity": "warn",
            "tool": "sitemap_parse",
            "message": "no readOnlyHint or destructiveHint",
            "fix": "Set readOnlyHint: true if it only reads; otherwise set destructiveHint and idempotentHint."
          },
          {
            "rule": "TC16",
            "severity": "warn",
            "tool": "slugify",
            "message": "no readOnlyHint or destructiveHint",
            "fix": "Set readOnlyHint: true if it only reads; otherwise set destructiveHint and idempotentHint."
          },
          {
            "rule": "TC16",
            "severity": "warn",
            "tool": "ssl_check",
            "message": "no readOnlyHint or destructiveHint",
            "fix": "Its name starts with \"check\"; if it only reads, set readOnlyHint: true so harnesses can run it without asking."
          },
          {
            "rule": "TC16",
            "severity": "warn",
            "tool": "text_stats",
            "message": "no readOnlyHint or destructiveHint",
            "fix": "Set readOnlyHint: true if it only reads; otherwise set destructiveHint and idempotentHint."
          },
          {
            "rule": "TC16",
            "severity": "warn",
            "tool": "timestamp",
            "message": "no readOnlyHint or destructiveHint",
            "fix": "Set readOnlyHint: true if it only reads; otherwise set destructiveHint and idempotentHint."
          },
          {
            "rule": "TC16",
            "severity": "warn",
            "tool": "token_info",
            "message": "no readOnlyHint or destructiveHint",
            "fix": "Its name starts with \"info\"; if it only reads, set readOnlyHint: true so harnesses can run it without asking."
          },
          {
            "rule": "TC16",
            "severity": "warn",
            "tool": "try_sample",
            "message": "no readOnlyHint or destructiveHint",
            "fix": "Set readOnlyHint: true if it only reads; otherwise set destructiveHint and idempotentHint."
          },
          {
            "rule": "TC16",
            "severity": "warn",
            "tool": "tx_lookup",
            "message": "no readOnlyHint or destructiveHint",
            "fix": "Its name starts with \"lookup\"; if it only reads, set readOnlyHint: true so harnesses can run it without asking."
          },
          {
            "rule": "TC16",
            "severity": "warn",
            "tool": "unit_convert",
            "message": "no readOnlyHint or destructiveHint",
            "fix": "Set readOnlyHint: true if it only reads; otherwise set destructiveHint and idempotentHint."
          },
          {
            "rule": "TC16",
            "severity": "warn",
            "tool": "url_expand",
            "message": "no readOnlyHint or destructiveHint",
            "fix": "Set readOnlyHint: true if it only reads; otherwise set destructiveHint and idempotentHint."
          },
          {
            "rule": "TC16",
            "severity": "warn",
            "tool": "uuid",
            "message": "no readOnlyHint or destructiveHint",
            "fix": "Set readOnlyHint: true if it only reads; otherwise set destructiveHint and idempotentHint."
          },
          {
            "rule": "TC16",
            "severity": "warn",
            "tool": "wallet_balance",
            "message": "no readOnlyHint or destructiveHint",
            "fix": "Set readOnlyHint: true if it only reads; otherwise set destructiveHint and idempotentHint."
          },
          {
            "rule": "TC16",
            "severity": "warn",
            "tool": "whois",
            "message": "no readOnlyHint or destructiveHint",
            "fix": "Set readOnlyHint: true if it only reads; otherwise set destructiveHint and idempotentHint."
          },
          {
            "rule": "TC16",
            "severity": "warn",
            "tool": "word_frequency",
            "message": "no readOnlyHint or destructiveHint",
            "fix": "Set readOnlyHint: true if it only reads; otherwise set destructiveHint and idempotentHint."
          },
          {
            "rule": "TC16",
            "severity": "warn",
            "tool": "xml_to_json",
            "message": "no readOnlyHint or destructiveHint",
            "fix": "Set readOnlyHint: true if it only reads; otherwise set destructiveHint and idempotentHint."
          },
          {
            "rule": "TC16",
            "severity": "warn",
            "tool": "yaml_convert",
            "message": "no readOnlyHint or destructiveHint",
            "fix": "Set readOnlyHint: true if it only reads; otherwise set destructiveHint and idempotentHint."
          },
          {
            "rule": "TC23",
            "severity": "warn",
            "message": "68 tools",
            "fix": "Offer a smaller default toolset and let clients opt into the rest."
          },
          {
            "rule": "TC24",
            "severity": "note",
            "message": "68 of 68 tools have no outputSchema",
            "fix": "Declare outputSchema for tools that return structured data, and return structuredContent that matches it."
          }
        ]
      },
      "checkedAt": "2026-10-04T22:22:15Z",
      "count": 68,
      "schemaTokens": 12150,
      "status": "ok",
      "tools": [
        {
          "name": "list_tools",
          "title": "List tools and prices (free)",
          "description": "Free: every Blixtworks tool with price, inputs and description (63 tools). Optionally filter by group.",
          "inputSchema": {
            "$schema": "http://json-schema.org/draft-07/schema#",
            "additionalProperties": false,
            "properties": {
              "group": {
                "description": "vision, media, text, data, web, convert or chain",
                "type": "string"
              }
            },
            "type": "object"
          }
        },
        {
          "name": "try_sample",
          "title": "Run a free sample (free)",
          "description": "Free: runs the real CLIP model on a sample image so you can judge output quality before paying.",
          "inputSchema": {
            "$schema": "http://json-schema.org/draft-07/schema#",
            "properties": {},
            "type": "object"
          }
        },
        {
          "name": "how_to_pay",
          "title": "How to pay (free)",
          "description": "Free: exact payment steps, the receiving address, and how credit works.",
          "inputSchema": {
            "$schema": "http://json-schema.org/draft-07/schema#",
            "additionalProperties": false,
            "properties": {
              "tool": {
                "description": "Get the exact price for one tool",
                "type": "string"
              }
            },
            "type": "object"
          }
        },
        {
          "name": "check_credit",
          "title": "Check remaining credit (free)",
          "description": "Free: how much unspent credit a wallet address currently has with this endpoint.",
          "inputSchema": {
            "$schema": "http://json-schema.org/draft-07/schema#",
            "additionalProperties": false,
            "properties": {
              "address": {
                "description": "Your wallet address",
                "type": "string"
              }
            },
            "required": [
              "address"
            ],
            "type": "object"
          }
        },
        {
          "name": "redeem_payment",
          "title": "Redeem a payment into credit (free)",
          "description": "Turn a USDC payment you already made into credit you can spend across multiple tool calls. Pass the transaction hash.",
          "inputSchema": {
            "$schema": "http://json-schema.org/draft-07/schema#",
            "additionalProperties": false,
            "properties": {
              "paymentTx": {
                "description": "Transaction hash of your USDC payment on Base",
                "type": "string"
              }
            },
            "required": [
              "paymentTx"
            ],
            "type": "object"
          }
        },
        {
          "name": "categorize",
          "title": "categorize ($0.02)",
          "description": "Zero-shot image categorization (CLIP). POST {\"image\": \"\u003chttps url or data URI\u003e\", \"labels\": [\"optional\", \"custom\"]} -\u003e ranked labels with confidence scores. Costs $0.02 in USDC on Base — pass paymentTx or payerAddress to pay (call how_to_pay for details).",
          "inputSchema": {
            "$schema": "http://json-schema.org/draft-07/schema#",
            "additionalProperties": false,
            "properties": {
              "image": {
                "type": "string"
              },
              "labels": {
                "items": {
                  "type": "string"
                },
                "type": "array"
              },
              "payerAddress": {
                "description": "Your wallet address, to spend existing credit without a new payment",
                "type": "string"
              },
              "paymentTx": {
                "description": "Transaction hash of your USDC payment on Base (see how_to_pay)",
                "type": "string"
              }
            },
            "type": "object"
          }
        },
        {
          "name": "caption",
          "title": "caption ($0.02)",
          "description": "Image captioning. POST {\"image\": \"\u003chttps url or data URI\u003e\"} -\u003e one-sentence natural-language description. Costs $0.02 in USDC on Base — pass paymentTx or payerAddress to pay (call how_to_pay for details).",
          "inputSchema": {
            "$schema": "http://json-schema.org/draft-07/schema#",
            "additionalProperties": false,
            "properties": {
              "image": {
                "type": "string"
              },
              "payerAddress": {
                "description": "Your wallet address, to spend existing credit without a new payment",
                "type": "string"
              },
              "paymentTx": {
                "description": "Transaction hash of your USDC payment on Base (see how_to_pay)",
                "type": "string"
              }
            },
            "type": "object"
          }
        },
        {
          "name": "ocr",
          "title": "ocr ($0.03)",
          "description": "OCR (English). POST {\"image\": \"\u003chttps url or data URI\u003e\"} -\u003e extracted text with confidence score. Costs $0.03 in USDC on Base — pass paymentTx or payerAddress to pay (call how_to_pay for details).",
          "inputSchema": {
            "$schema": "http://json-schema.org/draft-07/schema#",
            "additionalProperties": false,
            "properties": {
              "image": {
                "type": "string"
              },
              "payerAddress": {
                "description": "Your wallet address, to spend existing credit without a new payment",
                "type": "string"
              },
              "paymentTx": {
                "description": "Transaction hash of your USDC payment on Base (see how_to_pay)",
                "type": "string"
              }
            },
            "type": "object"
          }
        },
        {
          "name": "embed",
          "title": "embed ($0.015)",
          "description": "CLIP image embedding. POST {\"image\": \"\u003chttps url or data URI\u003e\"} -\u003e 512-dim vector for similarity search. Costs $0.015 in USDC on Base — pass paymentTx or payerAddress to pay (call how_to_pay for details).",
          "inputSchema": {
            "$schema": "http://json-schema.org/draft-07/schema#",
            "additionalProperties": false,
            "properties": {
              "image": {
                "type": "string"
              },
              "payerAddress": {
                "description": "Your wallet address, to spend existing credit without a new payment",
                "type": "string"
              },
              "paymentTx": {
                "description": "Transaction hash of your USDC payment on Base (see how_to_pay)",
                "type": "string"
              }
            },
            "type": "object"
          }
        },
        {
          "name": "hash",
          "title": "hash ($0.005)",
          "description": "Cryptographic hashes. POST {\"text\": \"...\", \"algorithms\": [\"sha256\",\"md5\"]} -\u003e hex digests (default md5, sha1, sha256, sha512). Costs $0.005 in USDC on Base — pass paymentTx or payerAddress to pay (call how_to_pay for details).",
          "inputSchema": {
            "$schema": "http://json-schema.org/draft-07/schema#",
            "additionalProperties": false,
            "properties": {
              "algorithms": {
                "items": {
                  "type": "string"
                },
                "type": "array"
              },
              "payerAddress": {
                "description": "Your wallet address, to spend existing credit without a new payment",
                "type": "string"
              },
              "paymentTx": {
                "description": "Transaction hash of your USDC payment on Base (see how_to_pay)",
                "type": "string"
              },
              "text": {
                "type": "string"
              }
            },
            "type": "object"
          }
        },
        {
          "name": "hmac",
          "title": "hmac ($0.005)",
          "description": "HMAC signature. POST {\"text\": \"...\", \"key\": \"...\", \"algorithm\": \"sha256\"} -\u003e hex and base64 signature. Costs $0.005 in USDC on Base — pass paymentTx or payerAddress to pay (call how_to_pay for details).",
          "inputSchema": {
            "$schema": "http://json-schema.org/draft-07/schema#",
            "additionalProperties": false,
            "properties": {
              "algorithm": {
                "type": "string"
              },
              "key": {
                "type": "string"
              },
              "payerAddress": {
                "description": "Your wallet address, to spend existing credit without a new payment",
                "type": "string"
              },
              "paymentTx": {
                "description": "Transaction hash of your USDC payment on Base (see how_to_pay)",
                "type": "string"
              },
              "text": {
                "type": "string"
              }
            },
            "type": "object"
          }
        },
        {
          "name": "uuid",
          "title": "uuid ($0.005)",
          "description": "Generate UUIDs. POST {\"count\": 5, \"version\": \"v4\"} -\u003e list of UUIDs (max 100). Costs $0.005 in USDC on Base — pass paymentTx or payerAddress to pay (call how_to_pay for details).",
          "inputSchema": {
            "$schema": "http://json-schema.org/draft-07/schema#",
            "additionalProperties": false,
            "properties": {
              "count": {
                "type": "number"
              },
              "payerAddress": {
                "description": "Your wallet address, to spend existing credit without a new payment",
                "type": "string"
              },
              "paymentTx": {
                "description": "Transaction hash of your USDC payment on Base (see how_to_pay)",
                "type": "string"
              }
            },
            "type": "object"
          }
        },
        {
          "name": "base64",
          "title": "base64 ($0.005)",
          "description": "Base64 encode or decode. POST {\"text\": \"...\", \"mode\": \"encode\"|\"decode\", \"urlSafe\": false} -\u003e result. Costs $0.005 in USDC on Base — pass paymentTx or payerAddress to pay (call how_to_pay for details).",
          "inputSchema": {
            "$schema": "http://json-schema.org/draft-07/schema#",
            "additionalProperties": false,
            "properties": {
              "mode": {
                "type": "string"
              },
              "payerAddress": {
                "description": "Your wallet address, to spend existing credit without a new payment",
                "type": "string"
              },
              "paymentTx": {
                "description": "Transaction hash of your USDC payment on Base (see how_to_pay)",
                "type": "string"
              },
              "text": {
                "type": "string"
              }
            },
            "type": "object"
          }
        },
        {
          "name": "slugify",
          "title": "slugify ($0.005)",
          "description": "URL-safe slug from any text. POST {\"text\": \"Hällö Wörld!\"} -\u003e {\"slug\": \"hallo-world\"}. Costs $0.005 in USDC on Base — pass paymentTx or payerAddress to pay (call how_to_pay for details).",
          "inputSchema": {
            "$schema": "http://json-schema.org/draft-07/schema#",
            "additionalProperties": false,
            "properties": {
              "payerAddress": {
                "description": "Your wallet address, to spend existing credit without a new payment",
                "type": "string"
              },
              "paymentTx": {
                "description": "Transaction hash of your USDC payment on Base (see how_to_pay)",
                "type": "string"
              },
              "text": {
                "type": "string"
              }
            },
            "type": "object"
          }
        },
        {
          "name": "case_convert",
          "title": "case_convert ($0.005)",
          "description": "Convert text case. POST {\"text\": \"...\", \"to\": \"camel\"|\"snake\"|\"kebab\"|\"pascal\"|\"upper\"|\"lower\"|\"title\"} -\u003e converted text. Costs $0.005 in USDC on Base — pass paymentTx or payerAddress to pay (call how_to_pay for details).",
          "inputSchema": {
            "$schema": "http://json-schema.org/draft-07/schema#",
            "additionalProperties": false,
            "properties": {
              "payerAddress": {
                "description": "Your wallet address, to spend existing credit without a new payment",
                "type": "string"
              },
              "paymentTx": {
                "description": "Transaction hash of your USDC payment on Base (see how_to_pay)",
                "type": "string"
              },
              "text": {
                "type": "string"
              },
              "to": {
                "type": "string"
              }
            },
            "type": "object"
          }
        },
        {
          "name": "text_stats",
          "title": "text_stats ($0.005)",
          "description": "Text statistics. POST {\"text\": \"...\"} -\u003e characters, words, sentences, paragraphs, reading time, top words. Costs $0.005 in USDC on Base — pass paymentTx or payerAddress to pay (call how_to_pay for details).",
          "inputSchema": {
            "$schema": "http://json-schema.org/draft-07/schema#",
            "additionalProperties": false,
            "properties": {
              "payerAddress": {
                "description": "Your wallet address, to spend existing credit without a new payment",
                "type": "string"
              },
              "paymentTx": {
                "description": "Transaction hash of your USDC payment on Base (see how_to_pay)",
                "type": "string"
              },
              "text": {
                "type": "string"
              }
            },
            "type": "object"
          }
        },
        {
          "name": "regex",
          "title": "regex ($0.005)",
          "description": "Test a regular expression and extract matches. POST {\"text\": \"...\", \"pattern\": \"\\\\d+\", \"flags\": \"g\"} -\u003e matches with groups and indices. Costs $0.005 in USDC on Base — pass paymentTx or payerAddress to pay (call how_to_pay for details).",
          "inputSchema": {
            "$schema": "http://json-schema.org/draft-07/schema#",
            "additionalProperties": false,
            "properties": {
              "flags": {
                "type": "string"
              },
              "pattern": {
                "type": "string"
              },
              "payerAddress": {
                "description": "Your wallet address, to spend existing credit without a new payment",
                "type": "string"
              },
              "paymentTx": {
                "description": "Transaction hash of your USDC payment on Base (see how_to_pay)",
                "type": "string"
              },
              "text": {
                "type": "string"
              }
            },
            "type": "object"
          }
        },
        {
          "name": "diff",
          "title": "diff ($0.01)",
          "description": "Compare two texts. POST {\"a\": \"...\", \"b\": \"...\", \"mode\": \"lines\"|\"words\"|\"chars\"} -\u003e unified diff plus added/removed counts. Costs $0.01 in USDC on Base — pass paymentTx or payerAddress to pay (call how_to_pay for details).",
          "inputSchema": {
            "$schema": "http://json-schema.org/draft-07/schema#",
            "additionalProperties": false,
            "properties": {
              "a": {
                "type": "string"
              },
              "b": {
                "type": "string"
              },
              "payerAddress": {
                "description": "Your wallet address, to spend existing credit without a new payment",
                "type": "string"
              },
              "paymentTx": {
                "description": "Transaction hash of your USDC payment on Base (see how_to_pay)",
                "type": "string"
              }
            },
            "type": "object"
          }
        },
        {
          "name": "language_detect",
          "title": "language_detect ($0.01)",
          "description": "Detect the language of a text. POST {\"text\": \"...\"} -\u003e ISO 639-3 code and name. Costs $0.01 in USDC on Base — pass paymentTx or payerAddress to pay (call how_to_pay for details).",
          "inputSchema": {
            "$schema": "http://json-schema.org/draft-07/schema#",
            "additionalProperties": false,
            "properties": {
              "payerAddress": {
                "description": "Your wallet address, to spend existing credit without a new payment",
                "type": "string"
              },
              "paymentTx": {
                "description": "Transaction hash of your USDC payment on Base (see how_to_pay)",
                "type": "string"
              },
              "text": {
                "type": "string"
              }
            },
            "type": "object"
          }
        },
        {
          "name": "word_frequency",
          "title": "word_frequency ($0.01)",
          "description": "Word and n-gram frequency analysis. POST {\"text\": \"...\", \"ngram\": 1, \"limit\": 20, \"stopwords\": true} -\u003e ranked terms. Costs $0.01 in USDC on Base — pass paymentTx or payerAddress to pay (call how_to_pay for details).",
          "inputSchema": {
            "$schema": "http://json-schema.org/draft-07/schema#",
            "additionalProperties": false,
            "properties": {
              "limit": {
                "type": "number"
              },
              "ngram": {
                "type": "number"
              },
              "payerAddress": {
                "description": "Your wallet address, to spend existing credit without a new payment",
                "type": "string"
              },
              "paymentTx": {
                "description": "Transaction hash of your USDC payment on Base (see how_to_pay)",
                "type": "string"
              },
              "text": {
                "type": "string"
              }
            },
            "type": "object"
          }
        },
        {
          "name": "lorem",
          "title": "lorem ($0.005)",
          "description": "Generate placeholder text. POST {\"paragraphs\": 2, \"wordsPerParagraph\": 40} -\u003e lorem ipsum text. Costs $0.005 in USDC on Base — pass paymentTx or payerAddress to pay (call how_to_pay for details).",
          "inputSchema": {
            "$schema": "http://json-schema.org/draft-07/schema#",
            "additionalProperties": false,
            "properties": {
              "paragraphs": {
                "type": "number"
              },
              "payerAddress": {
                "description": "Your wallet address, to spend existing credit without a new payment",
                "type": "string"
              },
              "paymentTx": {
                "description": "Transaction hash of your USDC payment on Base (see how_to_pay)",
                "type": "string"
              }
            },
            "type": "object"
          }
        },
        {
          "name": "json_format",
          "title": "json_format ($0.005)",
          "description": "Format, minify or validate JSON. POST {\"json\": \"...\", \"mode\": \"pretty\"|\"minify\"|\"validate\", \"indent\": 2} -\u003e formatted output or validation error with position. Costs $0.005 in USDC on Base — pass paymentTx or payerAddress to pay (call how_to_pay for details).",
          "inputSchema": {
            "$schema": "http://json-schema.org/draft-07/schema#",
            "additionalProperties": false,
            "properties": {
              "json": {
                "type": "string"
              },
              "mode": {
                "type": "string"
              },
              "payerAddress": {
                "description": "Your wallet address, to spend existing credit without a new payment",
                "type": "string"
              },
              "paymentTx": {
                "description": "Transaction hash of your USDC payment on Base (see how_to_pay)",
                "type": "string"
              }
            },
            "type": "object"
          }
        },
        {
          "name": "json_query",
          "title": "json_query ($0.01)",
          "description": "Query JSON with a dot/bracket path. POST {\"json\": \"...\", \"path\": \"users[0].name\"} -\u003e the value at that path. Supports [*] to map over arrays. Costs $0.01 in USDC on Base — pass paymentTx or payerAddress to pay (call how_to_pay for details).",
          "inputSchema": {
            "$schema": "http://json-schema.org/draft-07/schema#",
            "additionalProperties": false,
            "properties": {
              "json": {
                "type": "string"
              },
              "path": {
                "type": "string"
              },
              "payerAddress": {
                "description": "Your wallet address, to spend existing credit without a new payment",
                "type": "string"
              },
              "paymentTx": {
                "description": "Transaction hash of your USDC payment on Base (see how_to_pay)",
                "type": "string"
              }
            },
            "type": "object"
          }
        },
        {
          "name": "json_to_csv",
          "title": "json_to_csv ($0.01)",
          "description": "Convert a JSON array of objects to CSV. POST {\"json\": \"[{...}]\", \"delimiter\": \",\"} -\u003e CSV text. Costs $0.01 in USDC on Base — pass paymentTx or payerAddress to pay (call how_to_pay for details).",
          "inputSchema": {
            "$schema": "http://json-schema.org/draft-07/schema#",
            "additionalProperties": false,
            "properties": {
              "json": {
                "type": "string"
              },
              "payerAddress": {
                "description": "Your wallet address, to spend existing credit without a new payment",
                "type": "string"
              },
              "paymentTx": {
                "description": "Transaction hash of your USDC payment on Base (see how_to_pay)",
                "type": "string"
              }
            },
            "type": "object"
          }
        },
        {
          "name": "csv_to_json",
          "title": "csv_to_json ($0.01)",
          "description": "Convert CSV to JSON. POST {\"csv\": \"...\", \"header\": true, \"delimiter\": \",\"} -\u003e array of objects (or arrays when header is false). Costs $0.01 in USDC on Base — pass paymentTx or payerAddress to pay (call how_to_pay for details).",
          "inputSchema": {
            "$schema": "http://json-schema.org/draft-07/schema#",
            "additionalProperties": false,
            "properties": {
              "csv": {
                "type": "string"
              },
              "payerAddress": {
                "description": "Your wallet address, to spend existing credit without a new payment",
                "type": "string"
              },
              "paymentTx": {
                "description": "Transaction hash of your USDC payment on Base (see how_to_pay)",
                "type": "string"
              }
            },
            "type": "object"
          }
        },
        {
          "name": "yaml_convert",
          "title": "yaml_convert ($0.01)",
          "description": "Convert between YAML and JSON. POST {\"text\": \"...\", \"to\": \"json\"|\"yaml\"} -\u003e converted document. Costs $0.01 in USDC on Base — pass paymentTx or payerAddress to pay (call how_to_pay for details).",
          "inputSchema": {
            "$schema": "http://json-schema.org/draft-07/schema#",
            "additionalProperties": false,
            "properties": {
              "payerAddress": {
                "description": "Your wallet address, to spend existing credit without a new payment",
                "type": "string"
              },
              "paymentTx": {
                "description": "Transaction hash of your USDC payment on Base (see how_to_pay)",
                "type": "string"
              },
              "text": {
                "type": "string"
              },
              "to": {
                "type": "string"
              }
            },
            "type": "object"
          }
        },
        {
          "name": "xml_to_json",
          "title": "xml_to_json ($0.01)",
          "description": "Convert XML to JSON. POST {\"xml\": \"\u003croot\u003e...\u003c/root\u003e\"} -\u003e parsed object. Costs $0.01 in USDC on Base — pass paymentTx or payerAddress to pay (call how_to_pay for details).",
          "inputSchema": {
            "$schema": "http://json-schema.org/draft-07/schema#",
            "additionalProperties": false,
            "properties": {
              "payerAddress": {
                "description": "Your wallet address, to spend existing credit without a new payment",
                "type": "string"
              },
              "paymentTx": {
                "description": "Transaction hash of your USDC payment on Base (see how_to_pay)",
                "type": "string"
              },
              "xml": {
                "type": "string"
              }
            },
            "type": "object"
          }
        },
        {
          "name": "markdown_to_html",
          "title": "markdown_to_html ($0.01)",
          "description": "Render Markdown to HTML. POST {\"markdown\": \"# Title\"} -\u003e HTML string. Costs $0.01 in USDC on Base — pass paymentTx or payerAddress to pay (call how_to_pay for details).",
          "inputSchema": {
            "$schema": "http://json-schema.org/draft-07/schema#",
            "additionalProperties": false,
            "properties": {
              "markdown": {
                "type": "string"
              },
              "payerAddress": {
                "description": "Your wallet address, to spend existing credit without a new payment",
                "type": "string"
              },
              "paymentTx": {
                "description": "Transaction hash of your USDC payment on Base (see how_to_pay)",
                "type": "string"
              }
            },
            "type": "object"
          }
        },
        {
          "name": "jwt_decode",
          "title": "jwt_decode ($0.01)",
          "description": "Decode a JWT without verifying it. POST {\"token\": \"eyJ...\"} -\u003e header, payload, expiry status. Signature is NOT verified. Costs $0.01 in USDC on Base — pass paymentTx or payerAddress to pay (call how_to_pay for details).",
          "inputSchema": {
            "$schema": "http://json-schema.org/draft-07/schema#",
            "additionalProperties": false,
            "properties": {
              "payerAddress": {
                "description": "Your wallet address, to spend existing credit without a new payment",
                "type": "string"
              },
              "paymentTx": {
                "description": "Transaction hash of your USDC payment on Base (see how_to_pay)",
                "type": "string"
              },
              "token": {
                "type": "string"
              }
            },
            "type": "object"
          }
        },
        {
          "name": "rss_parse",
          "title": "rss_parse ($0.02)",
          "description": "Parse an RSS or Atom feed. POST {\"url\": \"https://...\"} or {\"xml\": \"...\"} -\u003e feed title and items with links and dates. Costs $0.02 in USDC on Base — pass paymentTx or payerAddress to pay (call how_to_pay for details).",
          "inputSchema": {
            "$schema": "http://json-schema.org/draft-07/schema#",
            "additionalProperties": false,
            "properties": {
              "payerAddress": {
                "description": "Your wallet address, to spend existing credit without a new payment",
                "type": "string"
              },
              "paymentTx": {
                "description": "Transaction hash of your USDC payment on Base (see how_to_pay)",
                "type": "string"
              },
              "url": {
                "type": "string"
              }
            },
            "type": "object"
          }
        },
        {
          "name": "sitemap_parse",
          "title": "sitemap_parse ($0.02)",
          "description": "Parse a sitemap.xml (including sitemap indexes). POST {\"url\": \"https://example.com/sitemap.xml\"} -\u003e URLs with last-modified dates. Costs $0.02 in USDC on Base — pass paymentTx or payerAddress to pay (call how_to_pay for details).",
          "inputSchema": {
            "$schema": "http://json-schema.org/draft-07/schema#",
            "additionalProperties": false,
            "properties": {
              "payerAddress": {
                "description": "Your wallet address, to spend existing credit without a new payment",
                "type": "string"
              },
              "paymentTx": {
                "description": "Transaction hash of your USDC payment on Base (see how_to_pay)",
                "type": "string"
              },
              "url": {
                "type": "string"
              }
            },
            "type": "object"
          }
        },
        {
          "name": "pdf",
          "title": "pdf ($0.03)",
          "description": "PDF text extraction. POST {\"pdf\": \"\u003chttps url or data:application/pdf base64 URI\u003e\"} -\u003e plain text, page count and metadata. Costs $0.03 in USDC on Base — pass paymentTx or payerAddress to pay (call how_to_pay for details).",
          "inputSchema": {
            "$schema": "http://json-schema.org/draft-07/schema#",
            "additionalProperties": false,
            "properties": {
              "payerAddress": {
                "description": "Your wallet address, to spend existing credit without a new payment",
                "type": "string"
              },
              "paymentTx": {
                "description": "Transaction hash of your USDC payment on Base (see how_to_pay)",
                "type": "string"
              },
              "pdf": {
                "type": "string"
              }
            },
            "type": "object"
          }
        },
        {
          "name": "http_headers",
          "title": "http_headers ($0.01)",
          "description": "Inspect HTTP response headers for a URL. POST {\"url\": \"https://...\", \"method\": \"HEAD\"} -\u003e status, headers, timing, redirect chain. Costs $0.01 in USDC on Base — pass paymentTx or payerAddress to pay (call how_to_pay for details).",
          "inputSchema": {
            "$schema": "http://json-schema.org/draft-07/schema#",
            "additionalProperties": false,
            "properties": {
              "payerAddress": {
                "description": "Your wallet address, to spend existing credit without a new payment",
                "type": "string"
              },
              "paymentTx": {
                "description": "Transaction hash of your USDC payment on Base (see how_to_pay)",
                "type": "string"
              },
              "url": {
                "type": "string"
              }
            },
            "type": "object"
          }
        },
        {
          "name": "url_expand",
          "title": "url_expand ($0.01)",
          "description": "Expand a shortened URL by following redirects. POST {\"url\": \"https://bit.ly/x\"} -\u003e final destination and hop chain. Costs $0.01 in USDC on Base — pass paymentTx or payerAddress to pay (call how_to_pay for details).",
          "inputSchema": {
            "$schema": "http://json-schema.org/draft-07/schema#",
            "additionalProperties": false,
            "properties": {
              "payerAddress": {
                "description": "Your wallet address, to spend existing credit without a new payment",
                "type": "string"
              },
              "paymentTx": {
                "description": "Transaction hash of your USDC payment on Base (see how_to_pay)",
                "type": "string"
              },
              "url": {
                "type": "string"
              }
            },
            "type": "object"
          }
        },
        {
          "name": "ssl_check",
          "title": "ssl_check ($0.02)",
          "description": "Inspect a TLS certificate. POST {\"domain\": \"example.com\", \"port\": 443} -\u003e issuer, subject, validity dates, days until expiry. Costs $0.02 in USDC on Base — pass paymentTx or payerAddress to pay (call how_to_pay for details).",
          "inputSchema": {
            "$schema": "http://json-schema.org/draft-07/schema#",
            "additionalProperties": false,
            "properties": {
              "domain": {
                "type": "string"
              },
              "payerAddress": {
                "description": "Your wallet address, to spend existing credit without a new payment",
                "type": "string"
              },
              "paymentTx": {
                "description": "Transaction hash of your USDC payment on Base (see how_to_pay)",
                "type": "string"
              }
            },
            "type": "object"
          }
        },
        {
          "name": "whois",
          "title": "whois ($0.02)",
          "description": "Domain registration data via RDAP. POST {\"domain\": \"example.com\"} -\u003e registrar, creation/expiry dates, nameservers, status. Costs $0.02 in USDC on Base — pass paymentTx or payerAddress to pay (call how_to_pay for details).",
          "inputSchema": {
            "$schema": "http://json-schema.org/draft-07/schema#",
            "additionalProperties": false,
            "properties": {
              "domain": {
                "type": "string"
              },
              "payerAddress": {
                "description": "Your wallet address, to spend existing credit without a new payment",
                "type": "string"
              },
              "paymentTx": {
                "description": "Transaction hash of your USDC payment on Base (see how_to_pay)",
                "type": "string"
              }
            },
            "type": "object"
          }
        },
        {
          "name": "robots_check",
          "title": "robots_check ($0.01)",
          "description": "Fetch and interpret robots.txt. POST {\"url\": \"https://example.com\", \"userAgent\": \"GPTBot\", \"path\": \"/\"} -\u003e whether crawling is allowed, plus sitemaps. Costs $0.01 in USDC on Base — pass paymentTx or payerAddress to pay (call how_to_pay for details).",
          "inputSchema": {
            "$schema": "http://json-schema.org/draft-07/schema#",
            "additionalProperties": false,
            "properties": {
              "payerAddress": {
                "description": "Your wallet address, to spend existing credit without a new payment",
                "type": "string"
              },
              "paymentTx": {
                "description": "Transaction hash of your USDC payment on Base (see how_to_pay)",
                "type": "string"
              },
              "url": {
                "type": "string"
              },
              "userAgent": {
                "type": "string"
              }
            },
            "type": "object"
          }
        },
        {
          "name": "metadata",
          "title": "metadata ($0.02)",
          "description": "Extract page metadata: title, description, Open Graph, Twitter card, canonical, favicon, language. POST {\"url\": \"https://...\"}. Costs $0.02 in USDC on Base — pass paymentTx or payerAddress to pay (call how_to_pay for details).",
          "inputSchema": {
            "$schema": "http://json-schema.org/draft-07/schema#",
            "additionalProperties": false,
            "properties": {
              "payerAddress": {
                "description": "Your wallet address, to spend existing credit without a new payment",
                "type": "string"
              },
              "paymentTx": {
                "description": "Transaction hash of your USDC payment on Base (see how_to_pay)",
                "type": "string"
              },
              "url": {
                "type": "string"
              }
            },
            "type": "object"
          }
        },
        {
          "name": "ip_lookup",
          "title": "ip_lookup ($0.01)",
          "description": "Resolve a hostname to IPs and reverse-resolve. POST {\"host\": \"example.com\"} -\u003e A/AAAA records and PTR names. Costs $0.01 in USDC on Base — pass paymentTx or payerAddress to pay (call how_to_pay for details).",
          "inputSchema": {
            "$schema": "http://json-schema.org/draft-07/schema#",
            "additionalProperties": false,
            "properties": {
              "host": {
                "type": "string"
              },
              "payerAddress": {
                "description": "Your wallet address, to spend existing credit without a new payment",
                "type": "string"
              },
              "paymentTx": {
                "description": "Transaction hash of your USDC payment on Base (see how_to_pay)",
                "type": "string"
              }
            },
            "type": "object"
          }
        },
        {
          "name": "email_validate",
          "title": "email_validate ($0.01)",
          "description": "Validate an email address: syntax plus live MX record check on the domain. POST {\"email\": \"a@b.com\"} -\u003e deliverability signals. Costs $0.01 in USDC on Base — pass paymentTx or payerAddress to pay (call how_to_pay for details).",
          "inputSchema": {
            "$schema": "http://json-schema.org/draft-07/schema#",
            "additionalProperties": false,
            "properties": {
              "email": {
                "type": "string"
              },
              "payerAddress": {
                "description": "Your wallet address, to spend existing credit without a new payment",
                "type": "string"
              },
              "paymentTx": {
                "description": "Transaction hash of your USDC payment on Base (see how_to_pay)",
                "type": "string"
              }
            },
            "type": "object"
          }
        },
        {
          "name": "md",
          "title": "md ($0.02)",
          "description": "HTML to Markdown. POST {\"url\": \"\u003chttps url\u003e\"} or {\"html\": \"\u003craw html\u003e\"} (+ optional \"mode\": \"article\"|\"full\", default article) -\u003e clean LLM-ready markdown with title/byline. Costs $0.02 in USDC on Base — pass paymentTx or payerAddress to pay (call how_to_pay for details).",
          "inputSchema": {
            "$schema": "http://json-schema.org/draft-07/schema#",
            "additionalProperties": false,
            "properties": {
              "mode": {
                "type": "string"
              },
              "payerAddress": {
                "description": "Your wallet address, to spend existing credit without a new payment",
                "type": "string"
              },
              "paymentTx": {
                "description": "Transaction hash of your USDC payment on Base (see how_to_pay)",
                "type": "string"
              },
              "url": {
                "type": "string"
              }
            },
            "type": "object"
          }
        },
        {
          "name": "dns",
          "title": "dns ($0.01)",
          "description": "DNS lookup. POST {\"domain\": \"example.com\", \"type\": \"A\"|\"AAAA\"|\"MX\"|\"TXT\"|\"NS\"|\"CNAME\"|\"SOA\"|\"all\"} -\u003e resolved records. Costs $0.01 in USDC on Base — pass paymentTx or payerAddress to pay (call how_to_pay for details).",
          "inputSchema": {
            "$schema": "http://json-schema.org/draft-07/schema#",
            "additionalProperties": false,
            "properties": {
              "domain": {
                "type": "string"
              },
              "payerAddress": {
                "description": "Your wallet address, to spend existing credit without a new payment",
                "type": "string"
              },
              "paymentTx": {
                "description": "Transaction hash of your USDC payment on Base (see how_to_pay)",
                "type": "string"
              },
              "type": {
                "type": "string"
              }
            },
            "type": "object"
          }
        },
        {
          "name": "unit_convert",
          "title": "unit_convert ($0.005)",
          "description": "Convert between units. POST {\"value\": 5, \"from\": \"km\", \"to\": \"mi\"} -\u003e converted value. Supports length, mass, volume, time, area, speed, data, pressure, energy and temperature (c/f/k). Costs $0.005 in USDC on Base — pass paymentTx or payerAddress to pay (call how_to_pay for details).",
          "inputSchema": {
            "$schema": "http://json-schema.org/draft-07/schema#",
            "additionalProperties": false,
            "properties": {
              "from": {
                "type": "string"
              },
              "payerAddress": {
                "description": "Your wallet address, to spend existing credit without a new payment",
                "type": "string"
              },
              "paymentTx": {
                "description": "Transaction hash of your USDC payment on Base (see how_to_pay)",
                "type": "string"
              },
              "to": {
                "type": "string"
              },
              "value": {
                "type": "number"
              }
            },
            "type": "object"
          }
        },
        {
          "name": "number_base",
          "title": "number_base ($0.005)",
          "description": "Convert a number between bases. POST {\"value\": \"255\", \"from\": 10, \"to\": 16} -\u003e converted string (bases 2-36). Costs $0.005 in USDC on Base — pass paymentTx or payerAddress to pay (call how_to_pay for details).",
          "inputSchema": {
            "$schema": "http://json-schema.org/draft-07/schema#",
            "additionalProperties": false,
            "properties": {
              "from": {
                "type": "number"
              },
              "payerAddress": {
                "description": "Your wallet address, to spend existing credit without a new payment",
                "type": "string"
              },
              "paymentTx": {
                "description": "Transaction hash of your USDC payment on Base (see how_to_pay)",
                "type": "string"
              },
              "to": {
                "type": "number"
              },
              "value": {
                "type": "string"
              }
            },
            "type": "object"
          }
        },
        {
          "name": "color_convert",
          "title": "color_convert ($0.005)",
          "description": "Convert colours between hex, RGB and HSL. POST {\"color\": \"#2563eb\"} -\u003e hex, rgb, hsl and luminance/contrast info. Costs $0.005 in USDC on Base — pass paymentTx or payerAddress to pay (call how_to_pay for details).",
          "inputSchema": {
            "$schema": "http://json-schema.org/draft-07/schema#",
            "additionalProperties": false,
            "properties": {
              "color": {
                "type": "string"
              },
              "payerAddress": {
                "description": "Your wallet address, to spend existing credit without a new payment",
                "type": "string"
              },
              "paymentTx": {
                "description": "Transaction hash of your USDC payment on Base (see how_to_pay)",
                "type": "string"
              }
            },
            "type": "object"
          }
        },
        {
          "name": "timestamp",
          "title": "timestamp ($0.005)",
          "description": "Convert timestamps and dates. POST {\"value\": 1735689600, \"timezone\": \"Europe/Stockholm\"} or {\"value\": \"2026-01-01T00:00:00Z\"} -\u003e unix seconds/ms, ISO, and formatted local time. Costs $0.005 in USDC on Base — pass paymentTx or payerAddress to pay (call how_to_pay for details).",
          "inputSchema": {
            "$schema": "http://json-schema.org/draft-07/schema#",
            "additionalProperties": false,
            "properties": {
              "payerAddress": {
                "description": "Your wallet address, to spend existing credit without a new payment",
                "type": "string"
              },
              "paymentTx": {
                "description": "Transaction hash of your USDC payment on Base (see how_to_pay)",
                "type": "string"
              },
              "timezone": {
                "type": "string"
              },
              "value": {
                "type": "string"
              }
            },
            "type": "object"
          }
        },
        {
          "name": "date_diff",
          "title": "date_diff ($0.005)",
          "description": "Difference between two dates. POST {\"from\": \"2026-01-01\", \"to\": \"2026-12-25\"} -\u003e days, hours, business days and a human summary. Costs $0.005 in USDC on Base — pass paymentTx or payerAddress to pay (call how_to_pay for details).",
          "inputSchema": {
            "$schema": "http://json-schema.org/draft-07/schema#",
            "additionalProperties": false,
            "properties": {
              "from": {
                "type": "string"
              },
              "payerAddress": {
                "description": "Your wallet address, to spend existing credit without a new payment",
                "type": "string"
              },
              "paymentTx": {
                "description": "Transaction hash of your USDC payment on Base (see how_to_pay)",
                "type": "string"
              },
              "to": {
                "type": "string"
              }
            },
            "type": "object"
          }
        },
        {
          "name": "cron_parse",
          "title": "cron_parse ($0.01)",
          "description": "Explain a cron expression and list upcoming run times. POST {\"expression\": \"0 9 * * 1-5\", \"count\": 5, \"timezone\": \"UTC\"}. Costs $0.01 in USDC on Base — pass paymentTx or payerAddress to pay (call how_to_pay for details).",
          "inputSchema": {
            "$schema": "http://json-schema.org/draft-07/schema#",
            "additionalProperties": false,
            "properties": {
              "count": {
                "type": "number"
              },
              "expression": {
                "type": "string"
              },
              "payerAddress": {
                "description": "Your wallet address, to spend existing credit without a new payment",
                "type": "string"
              },
              "paymentTx": {
                "description": "Transaction hash of your USDC payment on Base (see how_to_pay)",
                "type": "string"
              }
            },
            "type": "object"
          }
        },
        {
          "name": "distance",
          "title": "distance ($0.005)",
          "description": "Great-circle distance between two coordinates. POST {\"from\": {\"lat\": 59.33, \"lon\": 18.07}, \"to\": {\"lat\": 51.51, \"lon\": -0.13}} -\u003e km, miles and bearing. Costs $0.005 in USDC on Base — pass paymentTx or payerAddress to pay (call how_to_pay for details).",
          "inputSchema": {
            "$schema": "http://json-schema.org/draft-07/schema#",
            "additionalProperties": false,
            "properties": {
              "from": {
                "additionalProperties": true,
                "properties": {},
                "type": "object"
              },
              "payerAddress": {
                "description": "Your wallet address, to spend existing credit without a new payment",
                "type": "string"
              },
              "paymentTx": {
                "description": "Transaction hash of your USDC payment on Base (see how_to_pay)",
                "type": "string"
              },
              "to": {
                "additionalProperties": true,
                "properties": {},
                "type": "object"
              }
            },
            "type": "object"
          }
        },
        {
          "name": "currency_convert",
          "title": "currency_convert ($0.02)",
          "description": "Convert currency at current or historical reference rates (ECB via Frankfurter). POST {\"amount\": 100, \"from\": \"EUR\", \"to\": \"SEK\", \"date\": \"2026-01-15\"}. Costs $0.02 in USDC on Base — pass paymentTx or payerAddress to pay (call how_to_pay for details).",
          "inputSchema": {
            "$schema": "http://json-schema.org/draft-07/schema#",
            "additionalProperties": false,
            "properties": {
              "amount": {
                "type": "number"
              },
              "from": {
                "type": "string"
              },
              "payerAddress": {
                "description": "Your wallet address, to spend existing credit without a new payment",
                "type": "string"
              },
              "paymentTx": {
                "description": "Transaction hash of your USDC payment on Base (see how_to_pay)",
                "type": "string"
              },
              "to": {
                "type": "string"
              }
            },
            "type": "object"
          }
        },
        {
          "name": "luhn_validate",
          "title": "luhn_validate ($0.005)",
          "description": "Validate an identifier with the Luhn checksum (credit cards, IMEI, Swedish personnummer). POST {\"number\": \"4111111111111111\"} -\u003e validity and detected card scheme. Costs $0.005 in USDC on Base — pass paymentTx or payerAddress to pay (call how_to_pay for details).",
          "inputSchema": {
            "$schema": "http://json-schema.org/draft-07/schema#",
            "additionalProperties": false,
            "properties": {
              "number": {
                "type": "string"
              },
              "payerAddress": {
                "description": "Your wallet address, to spend existing credit without a new payment",
                "type": "string"
              },
              "paymentTx": {
                "description": "Transaction hash of your USDC payment on Base (see how_to_pay)",
                "type": "string"
              }
            },
            "type": "object"
          }
        },
        {
          "name": "phone_parse",
          "title": "phone_parse ($0.01)",
          "description": "Parse and validate a phone number. POST {\"phone\": \"+46701234567\", \"country\": \"SE\"} -\u003e validity, type, and E.164/national/international formats. Costs $0.01 in USDC on Base — pass paymentTx or payerAddress to pay (call how_to_pay for details).",
          "inputSchema": {
            "$schema": "http://json-schema.org/draft-07/schema#",
            "additionalProperties": false,
            "properties": {
              "payerAddress": {
                "description": "Your wallet address, to spend existing credit without a new payment",
                "type": "string"
              },
              "paymentTx": {
                "description": "Transaction hash of your USDC payment on Base (see how_to_pay)",
                "type": "string"
              },
              "phone": {
                "type": "string"
              }
            },
            "type": "object"
          }
        },
        {
          "name": "iban_validate",
          "title": "iban_validate ($0.005)",
          "description": "Validate an IBAN (checksum and country length). POST {\"iban\": \"SE45 5000 0000 0583 9825 7466\"}. Costs $0.005 in USDC on Base — pass paymentTx or payerAddress to pay (call how_to_pay for details).",
          "inputSchema": {
            "$schema": "http://json-schema.org/draft-07/schema#",
            "additionalProperties": false,
            "properties": {
              "iban": {
                "type": "string"
              },
              "payerAddress": {
                "description": "Your wallet address, to spend existing credit without a new payment",
                "type": "string"
              },
              "paymentTx": {
                "description": "Transaction hash of your USDC payment on Base (see how_to_pay)",
                "type": "string"
              }
            },
            "type": "object"
          }
        },
        {
          "name": "percentage",
          "title": "percentage ($0.005)",
          "description": "Percentage maths. POST {\"mode\": \"change\"|\"of\"|\"increase\"|\"decrease\", \"a\": 120, \"b\": 150} -\u003e result with explanation. Costs $0.005 in USDC on Base — pass paymentTx or payerAddress to pay (call how_to_pay for details).",
          "inputSchema": {
            "$schema": "http://json-schema.org/draft-07/schema#",
            "additionalProperties": false,
            "properties": {
              "a": {
                "type": "number"
              },
              "b": {
                "type": "number"
              },
              "mode": {
                "type": "string"
              },
              "payerAddress": {
                "description": "Your wallet address, to spend existing credit without a new payment",
                "type": "string"
              },
              "paymentTx": {
                "description": "Transaction hash of your USDC payment on Base (see how_to_pay)",
                "type": "string"
              }
            },
            "type": "object"
          }
        },
        {
          "name": "image_info",
          "title": "image_info ($0.01)",
          "description": "Image dimensions and properties without any ML. POST {\"image\": \"https://...\"} -\u003e width, height, aspect ratio, format, file size, transparency. Costs $0.01 in USDC on Base — pass paymentTx or payerAddress to pay (call how_to_pay for details).",
          "inputSchema": {
            "$schema": "http://json-schema.org/draft-07/schema#",
            "additionalProperties": false,
            "properties": {
              "image": {
                "type": "string"
              },
              "payerAddress": {
                "description": "Your wallet address, to spend existing credit without a new payment",
                "type": "string"
              },
              "paymentTx": {
                "description": "Transaction hash of your USDC payment on Base (see how_to_pay)",
                "type": "string"
              }
            },
            "type": "object"
          }
        },
        {
          "name": "image_resize",
          "title": "image_resize ($0.02)",
          "description": "Resize or convert an image. POST {\"image\": \"https://...\", \"width\": 800, \"height\": null, \"format\": \"jpeg\"|\"png\", \"quality\": 80} -\u003e data URI of the result. Costs $0.02 in USDC on Base — pass paymentTx or payerAddress to pay (call how_to_pay for details).",
          "inputSchema": {
            "$schema": "http://json-schema.org/draft-07/schema#",
            "additionalProperties": false,
            "properties": {
              "image": {
                "type": "string"
              },
              "payerAddress": {
                "description": "Your wallet address, to spend existing credit without a new payment",
                "type": "string"
              },
              "paymentTx": {
                "description": "Transaction hash of your USDC payment on Base (see how_to_pay)",
                "type": "string"
              },
              "width": {
                "type": "number"
              }
            },
            "type": "object"
          }
        },
        {
          "name": "image_palette",
          "title": "image_palette ($0.015)",
          "description": "Extract the dominant colour palette from an image. POST {\"image\": \"https://...\", \"colors\": 5} -\u003e hex colours with share percentages. Costs $0.015 in USDC on Base — pass paymentTx or payerAddress to pay (call how_to_pay for details).",
          "inputSchema": {
            "$schema": "http://json-schema.org/draft-07/schema#",
            "additionalProperties": false,
            "properties": {
              "colors": {
                "type": "number"
              },
              "image": {
                "type": "string"
              },
              "payerAddress": {
                "description": "Your wallet address, to spend existing credit without a new payment",
                "type": "string"
              },
              "paymentTx": {
                "description": "Transaction hash of your USDC payment on Base (see how_to_pay)",
                "type": "string"
              }
            },
            "type": "object"
          }
        },
        {
          "name": "image_crop",
          "title": "image_crop ($0.02)",
          "description": "Crop an image. POST {\"image\": \"https://...\", \"x\": 0, \"y\": 0, \"width\": 200, \"height\": 200} -\u003e cropped image as a data URI. Costs $0.02 in USDC on Base — pass paymentTx or payerAddress to pay (call how_to_pay for details).",
          "inputSchema": {
            "$schema": "http://json-schema.org/draft-07/schema#",
            "additionalProperties": false,
            "properties": {
              "height": {
                "type": "number"
              },
              "image": {
                "type": "string"
              },
              "payerAddress": {
                "description": "Your wallet address, to spend existing credit without a new payment",
                "type": "string"
              },
              "paymentTx": {
                "description": "Transaction hash of your USDC payment on Base (see how_to_pay)",
                "type": "string"
              },
              "width": {
                "type": "number"
              },
              "x": {
                "type": "number"
              },
              "y": {
                "type": "number"
              }
            },
            "type": "object"
          }
        },
        {
          "name": "image_transform",
          "title": "image_transform ($0.02)",
          "description": "Rotate, flip or apply filters to an image. POST {\"image\": \"...\", \"rotate\": 90, \"flip\": \"horizontal\", \"filter\": \"greyscale\"|\"sepia\"|\"invert\"|\"blur\"} -\u003e transformed image. Costs $0.02 in USDC on Base — pass paymentTx or payerAddress to pay (call how_to_pay for details).",
          "inputSchema": {
            "$schema": "http://json-schema.org/draft-07/schema#",
            "additionalProperties": false,
            "properties": {
              "filter": {
                "type": "string"
              },
              "image": {
                "type": "string"
              },
              "payerAddress": {
                "description": "Your wallet address, to spend existing credit without a new payment",
                "type": "string"
              },
              "paymentTx": {
                "description": "Transaction hash of your USDC payment on Base (see how_to_pay)",
                "type": "string"
              }
            },
            "type": "object"
          }
        },
        {
          "name": "image_placeholder",
          "title": "image_placeholder ($0.01)",
          "description": "Generate a solid or gradient placeholder image. POST {\"width\": 600, \"height\": 400, \"color\": \"#2563eb\", \"text\": \"optional\"} -\u003e PNG data URI. Costs $0.01 in USDC on Base — pass paymentTx or payerAddress to pay (call how_to_pay for details).",
          "inputSchema": {
            "$schema": "http://json-schema.org/draft-07/schema#",
            "additionalProperties": false,
            "properties": {
              "color": {
                "type": "string"
              },
              "height": {
                "type": "number"
              },
              "payerAddress": {
                "description": "Your wallet address, to spend existing credit without a new payment",
                "type": "string"
              },
              "paymentTx": {
                "description": "Transaction hash of your USDC payment on Base (see how_to_pay)",
                "type": "string"
              },
              "width": {
                "type": "number"
              }
            },
            "type": "object"
          }
        },
        {
          "name": "qr",
          "title": "qr ($0.01)",
          "description": "QR code generation. POST {\"text\": \"\u003ccontent\u003e\", \"format\": \"svg\"|\"png\"} -\u003e QR code as an SVG string or PNG data URI. Costs $0.01 in USDC on Base — pass paymentTx or payerAddress to pay (call how_to_pay for details).",
          "inputSchema": {
            "$schema": "http://json-schema.org/draft-07/schema#",
            "additionalProperties": false,
            "properties": {
              "format": {
                "type": "string"
              },
              "payerAddress": {
                "description": "Your wallet address, to spend existing credit without a new payment",
                "type": "string"
              },
              "paymentTx": {
                "description": "Transaction hash of your USDC payment on Base (see how_to_pay)",
                "type": "string"
              },
              "text": {
                "type": "string"
              }
            },
            "type": "object"
          }
        },
        {
          "name": "exif",
          "title": "exif ($0.01)",
          "description": "EXIF metadata extraction. POST {\"image\": \"\u003chttps url or data:image URI\u003e\"} -\u003e camera, timestamps, GPS and other metadata. Costs $0.01 in USDC on Base — pass paymentTx or payerAddress to pay (call how_to_pay for details).",
          "inputSchema": {
            "$schema": "http://json-schema.org/draft-07/schema#",
            "additionalProperties": false,
            "properties": {
              "image": {
                "type": "string"
              },
              "payerAddress": {
                "description": "Your wallet address, to spend existing credit without a new payment",
                "type": "string"
              },
              "paymentTx": {
                "description": "Transaction hash of your USDC payment on Base (see how_to_pay)",
                "type": "string"
              }
            },
            "type": "object"
          }
        },
        {
          "name": "wallet_balance",
          "title": "wallet_balance ($0.015)",
          "description": "Native and USDC balance for an address. POST {\"address\": \"0x...\", \"chain\": \"base\"|\"ethereum\"} -\u003e balances, transaction count and explorer link. Costs $0.015 in USDC on Base — pass paymentTx or payerAddress to pay (call how_to_pay for details).",
          "inputSchema": {
            "$schema": "http://json-schema.org/draft-07/schema#",
            "additionalProperties": false,
            "properties": {
              "address": {
                "type": "string"
              },
              "chain": {
                "type": "string"
              },
              "payerAddress": {
                "description": "Your wallet address, to spend existing credit without a new payment",
                "type": "string"
              },
              "paymentTx": {
                "description": "Transaction hash of your USDC payment on Base (see how_to_pay)",
                "type": "string"
              }
            },
            "type": "object"
          }
        },
        {
          "name": "token_info",
          "title": "token_info ($0.015)",
          "description": "ERC-20 token metadata. POST {\"token\": \"0x...\", \"chain\": \"base\"} -\u003e name, symbol, decimals, total supply. Costs $0.015 in USDC on Base — pass paymentTx or payerAddress to pay (call how_to_pay for details).",
          "inputSchema": {
            "$schema": "http://json-schema.org/draft-07/schema#",
            "additionalProperties": false,
            "properties": {
              "chain": {
                "type": "string"
              },
              "payerAddress": {
                "description": "Your wallet address, to spend existing credit without a new payment",
                "type": "string"
              },
              "paymentTx": {
                "description": "Transaction hash of your USDC payment on Base (see how_to_pay)",
                "type": "string"
              },
              "token": {
                "type": "string"
              }
            },
            "type": "object"
          }
        },
        {
          "name": "gas_price",
          "title": "gas_price ($0.01)",
          "description": "Current gas price and what a transfer costs. POST {\"chain\": \"base\"|\"ethereum\"} -\u003e gwei, block number and estimated transfer cost. Costs $0.01 in USDC on Base — pass paymentTx or payerAddress to pay (call how_to_pay for details).",
          "inputSchema": {
            "$schema": "http://json-schema.org/draft-07/schema#",
            "additionalProperties": false,
            "properties": {
              "chain": {
                "type": "string"
              },
              "payerAddress": {
                "description": "Your wallet address, to spend existing credit without a new payment",
                "type": "string"
              },
              "paymentTx": {
                "description": "Transaction hash of your USDC payment on Base (see how_to_pay)",
                "type": "string"
              }
            },
            "type": "object"
          }
        },
        {
          "name": "address_validate",
          "title": "address_validate ($0.005)",
          "description": "Validate an EVM address and detect whether it is a contract. POST {\"address\": \"0x...\", \"chain\": \"base\"} -\u003e checksum form and account type. Costs $0.005 in USDC on Base — pass paymentTx or payerAddress to pay (call how_to_pay for details).",
          "inputSchema": {
            "$schema": "http://json-schema.org/draft-07/schema#",
            "additionalProperties": false,
            "properties": {
              "address": {
                "type": "string"
              },
              "chain": {
                "type": "string"
              },
              "payerAddress": {
                "description": "Your wallet address, to spend existing credit without a new payment",
                "type": "string"
              },
              "paymentTx": {
                "description": "Transaction hash of your USDC payment on Base (see how_to_pay)",
                "type": "string"
              }
            },
            "type": "object"
          }
        },
        {
          "name": "ens_resolve",
          "title": "ens_resolve ($0.015)",
          "description": "Resolve an ENS name to an address, or an address to its primary ENS name. POST {\"name\": \"vitalik.eth\"} or {\"address\": \"0x...\"}. Costs $0.015 in USDC on Base — pass paymentTx or payerAddress to pay (call how_to_pay for details).",
          "inputSchema": {
            "$schema": "http://json-schema.org/draft-07/schema#",
            "additionalProperties": false,
            "properties": {
              "name": {
                "type": "string"
              },
              "payerAddress": {
                "description": "Your wallet address, to spend existing credit without a new payment",
                "type": "string"
              },
              "paymentTx": {
                "description": "Transaction hash of your USDC payment on Base (see how_to_pay)",
                "type": "string"
              }
            },
            "type": "object"
          }
        },
        {
          "name": "tx_lookup",
          "title": "tx_lookup ($0.02)",
          "description": "Look up a transaction by hash. POST {\"hash\": \"0x...\", \"chain\": \"base\"} -\u003e status, value, gas used, from/to and block. Costs $0.02 in USDC on Base — pass paymentTx or payerAddress to pay (call how_to_pay for details).",
          "inputSchema": {
            "$schema": "http://json-schema.org/draft-07/schema#",
            "additionalProperties": false,
            "properties": {
              "chain": {
                "type": "string"
              },
              "hash": {
                "type": "string"
              },
              "payerAddress": {
                "description": "Your wallet address, to spend existing credit without a new payment",
                "type": "string"
              },
              "paymentTx": {
                "description": "Transaction hash of your USDC payment on Base (see how_to_pay)",
                "type": "string"
              }
            },
            "type": "object"
          }
        }
      ]
    },
    "name": "Blixtworks",
    "note": "Indexed from the official MCP registry: facts and our own checks, not reviewed, so no score, grade or rank.",
    "packages": [
      {
        "registryType": "npm",
        "identifier": "blixtworks-mcp",
        "version": "1.1.0",
        "transport": "stdio"
      }
    ],
    "pageJsonUrl": "https://www.anchorterminal.com/tools/blixtworks-tools.json",
    "popularity": {
      "githubStars": 0,
      "npmWeekly": 53
    },
    "registryName": "com.blixtworks.www/tools",
    "remotes": [
      {
        "type": "streamable-http",
        "url": "https://www.blixtworks.com/mcp"
      }
    ],
    "repository": "https://github.com/Eggis70/img-categorize",
    "reviewed": false,
    "slug": "blixtworks-tools",
    "source": "the official MCP registry",
    "sourceUrl": "https://registry.modelcontextprotocol.io/v0.1/servers?search=com.blixtworks.www/tools",
    "summary": "63 pay-per-call tools for agents: vision, text, data, web, blockchain. USDC on Base via x402.",
    "updatedAt": "2026-07-31T20:32:32Z",
    "url": "https://www.anchorterminal.com/tools/blixtworks-tools",
    "vendor": "www.blixtworks.com",
    "vendorUrl": "https://www.blixtworks.com",
    "version": "1.1.0",
    "websiteUrl": "https://www.blixtworks.com",
    "where": "both",
    "why": [
      "vendor"
    ]
  }
}
