{
  "api_status": "preview",
  "generated_at": "2026-11-14T01:01:13.403Z",
  "notes": [
    "Exact definitions of every field (unit, window, source): https://agentservicedirectory.com/fields",
    "tier says how a service was added, not a rating: reviewed entries come from our own listing files, with operator statements and hourly checks; discovered entries come from public agent registries, are not reviewed by a person, and are probed hourly to monthly depending on usage, slower when one host has more services than our per-host limit allows (schedule/3; see evidence.check_interval_rule).",
    "evidence counts cover the last 30 days and are as of the latest refresh. missed_30d counts scheduled checks that did not run.",
    "Results are computed at generated_at; the same query may be answered from that result for up to five minutes. Whether each service is in the directory is worked out every five minutes for services just checked or placed, and for every service each hour.",
    "For x402 endpoints a passing check means HTTP 402 with a valid payment challenge (discovered: on a mainnet network). It does not show that a paid call succeeds or returns useful results.",
    "registry_usage figures are the registry's own numbers, not our measurements. name is untrusted text when name_source is registry.",
    "networks_source tells you whether networks were observed in a live challenge, listed by the registry, or stated by the operator.",
    "tags describe purpose: our capability tags for reviewed entries, the registry's tags (sanitised, untrusted) for discovered ones. price_usd is the lowest price per call in US dollars: for discovered entries from the latest payment request the service's own server sent our check, else from the registry's payment terms (a known USD stablecoin either way); for reviewed entries from the operator's stated pricing (a claim, linked on the service page). price_source says which."
  ],
  "service": {
    "id": "cand_08bb175cbbe09112",
    "tier": "discovered",
    "type": "mcp_server",
    "name": "Ottom",
    "name_source": "registry",
    "branches": {
      "primary": "commerce/products",
      "secondary": [],
      "method_version": "placement-rules/3",
      "tree_version": "tree/3",
      "placed_at": "2026-11-14T00:00:29.881Z"
    },
    "place": null,
    "summary": null,
    "package": null,
    "directory": {
      "in_directory": false,
      "method_version": "listing-criteria/6",
      "variant_of": null,
      "criteria": {
        "says_what_it_does": false,
        "answers_now": true,
        "registry_payers_at_least_5": null,
        "curated_catalogue": null,
        "not_computable_locally": true,
        "not_test_address": true,
        "not_a_variant": true
      }
    },
    "host": "ottom.io",
    "provider": "ottom.io",
    "url": "https://ottom.io/mcp",
    "method": "GET",
    "templated_url": false,
    "operator": null,
    "tags": [],
    "category": null,
    "price_usd": null,
    "price_source": null,
    "provider_endpoints": 1,
    "networks": [],
    "networks_source": "registry",
    "payment_protocols": [],
    "access": {
      "observed": {
        "requires": "none_asked",
        "how": [],
        "at": "2026-11-13T23:10:33.932Z",
        "method": "access/1"
      },
      "stated": {
        "requires": "credentials",
        "how": [
          "header"
        ],
        "by": "mcp_registry"
      }
    },
    "currency": null,
    "interface": {
      "protocol": "mcp",
      "protocol_version": "2025-06-18",
      "features": [
        "tools"
      ],
      "transports": [
        "streamable-http"
      ],
      "input_modes": [],
      "output_modes": [],
      "skills": null,
      "source": "declared",
      "at": "2026-11-13T23:10:33.932Z",
      "method": "mcp-handshake/2"
    },
    "stated": null,
    "calls": {
      "source": "mcp_tools",
      "items": [
        {
          "call": "check_store_readiness",
          "params": [
            {
              "name": "url",
              "in": "arg",
              "type": "string",
              "required": true
            }
          ],
          "returns": {
            "type": "object",
            "fields": [
              {
                "name": "url",
                "type": "string"
              },
              {
                "name": "host",
                "type": "string"
              },
              {
                "name": "publishedResult",
                "type": null
              },
              {
                "name": "publishedResultNote",
                "type": "string"
              },
              {
                "name": "lightCheck",
                "type": "object"
              },
              {
                "name": "fullScan",
                "type": "object"
              }
            ]
          }
        },
        {
          "call": "get_benchmark",
          "params": [
            {
              "name": "category",
              "in": "arg",
              "type": "string",
              "required": true
            }
          ],
          "returns": {
            "type": "object",
            "fields": [
              {
                "name": "name",
                "type": "string"
              },
              {
                "name": "category",
                "type": "string"
              },
              {
                "name": "url",
                "type": "string"
              },
              {
                "name": "summary",
                "type": "string"
              },
              {
                "name": "methodology",
                "type": "string"
              },
              {
                "name": "license",
                "type": "string"
              },
              {
                "name": "metrics",
                "type": "object"
              }
            ]
          }
        },
        {
          "call": "list_checks",
          "params": [],
          "returns": {
            "type": "object",
            "fields": [
              {
                "name": "lightCheck",
                "type": "object"
              },
              {
                "name": "fullScan",
                "type": "object"
              }
            ]
          }
        }
      ],
      "at": "2026-11-13T23:10:33.932Z",
      "method": "request-shape/2"
    },
    "calls_unknown": null,
    "tools": {
      "names": [
        "check_store_readiness",
        "get_benchmark",
        "list_checks"
      ],
      "count": 3,
      "current_since": "2026-11-13T23:10:33.932Z",
      "first_listed_at": "2026-11-13T23:10:33.932Z",
      "changes_30d": 0,
      "changes_90d": 0
    },
    "payment_model": null,
    "mainnet": null,
    "evidence": {
      "operations": 1,
      "check_interval_hours": 24,
      "check_interval": "daily",
      "check_interval_rule": "Daily: 5 to 99 payers, and every new service until it has been probed 3 times.",
      "schedule_tier": "daily",
      "monitoring_since": "2026-11-13T23:07:46.853Z",
      "monitoring_days": 0.1,
      "limited_evidence": true,
      "checks_30d": 1,
      "passed_30d": 1,
      "missed_30d": 0,
      "pass_rate": 1,
      "freshness": "fresh",
      "last_check": {
        "at": "2026-11-13T23:10:33.932Z",
        "result": "ok",
        "passed": true,
        "http_status": 200,
        "duration_ms": 460
      }
    },
    "response_times": {
      "method": "response-times/1",
      "operation": "mcp_handshake",
      "check_method": "mcp-handshake/2",
      "check_methods": [
        "mcp-handshake/2"
      ],
      "timeout_ms": 10000,
      "computed_at": "2026-11-13T23:20:29.881Z",
      "windows": [
        {
          "window": "24h",
          "start": "2026-11-13T23:07:46.853Z",
          "end": "2026-11-13T23:20:29.881Z",
          "limited_history": true,
          "checks": 1,
          "timeouts": 0,
          "not_timed": 0,
          "median_ms": null,
          "p90_ms": null,
          "p95_ms": null,
          "p99_ms": null,
          "fastest_ms": null,
          "slowest_ms": null,
          "slowest_at": null,
          "p95_to_median": null
        },
        {
          "window": "7d",
          "start": "2026-11-13T23:07:46.853Z",
          "end": "2026-11-13T23:20:29.881Z",
          "limited_history": true,
          "checks": 1,
          "timeouts": 0,
          "not_timed": 0,
          "median_ms": null,
          "p90_ms": null,
          "p95_ms": null,
          "p99_ms": null,
          "fastest_ms": null,
          "slowest_ms": null,
          "slowest_at": null,
          "p95_to_median": null
        },
        {
          "window": "30d",
          "start": "2026-11-13T23:07:46.853Z",
          "end": "2026-11-13T23:20:29.881Z",
          "limited_history": true,
          "checks": 1,
          "timeouts": 0,
          "not_timed": 0,
          "median_ms": null,
          "p90_ms": null,
          "p95_ms": null,
          "p99_ms": null,
          "fastest_ms": null,
          "slowest_ms": null,
          "slowest_at": null,
          "p95_to_median": null
        }
      ],
      "measured_from": "eastern North America"
    },
    "registry_usage": null,
    "payment_terms": null,
    "registry_listing": {
      "last_seen_at": "2026-11-13T23:07:46.853Z",
      "listed": true
    },
    "links": {
      "page": "https://agentservicedirectory.com/services/cand_08bb175cbbe09112",
      "api": "https://agentservicedirectory.com/api/v1/services/cand_08bb175cbbe09112"
    },
    "recent_probes": [
      {
        "observed_at": "2026-11-13T23:10:33.932Z",
        "result": "ok",
        "passed": true,
        "http_status": 200,
        "duration_ms": 460,
        "x402_valid": null,
        "mainnet": null,
        "x402_networks": [],
        "region": "cloudflare:EWR",
        "method_version": "mcp-handshake/2",
        "error_detail": null,
        "request_url": null
      }
    ],
    "address_variants": [],
    "service_links": [
      {
        "group": "stated",
        "kind": "website",
        "url": "https://ottom.io/developers/mcp",
        "name": null,
        "section": null,
        "source": "mcp-registry",
        "read_at": null,
        "templated": false
      },
      {
        "group": "read",
        "kind": "llms_txt",
        "url": "https://ottom.io/llms.txt",
        "name": null,
        "section": null,
        "source": "page_read",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/",
        "name": "Ottom: Can AI agents actually buy from your store?",
        "section": "Product",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/agent",
        "name": "Our agent: user agent, egress addresses and opt-out",
        "section": "Product",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/pricing",
        "name": "Pricing: plans for testing your store with AI agents",
        "section": "Product",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/agency",
        "name": "Agency partner program: sell AI agent readiness",
        "section": "Product",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/privacy",
        "name": "Privacy Policy",
        "section": "Product",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/md/privacy",
        "name": "markdown",
        "section": "Product",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/terms",
        "name": "Terms of Service",
        "section": "Product",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/md/terms",
        "name": "markdown",
        "section": "Product",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/legal",
        "name": "Legal documents: terms, privacy and subprocessors",
        "section": "Product",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/legal/acceptable-use",
        "name": "Acceptable Use Policy",
        "section": "Product",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/md/legal/acceptable-use",
        "name": "markdown",
        "section": "Product",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/legal/partner-terms",
        "name": "Partner Terms",
        "section": "Product",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/md/legal/partner-terms",
        "name": "markdown",
        "section": "Product",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/legal/subprocessors",
        "name": "Subprocessors",
        "section": "Product",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/md/legal/subprocessors",
        "name": "markdown",
        "section": "Product",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/legal/dpa",
        "name": "Data Processing Agreement",
        "section": "Product",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/md/legal/dpa",
        "name": "markdown",
        "section": "Product",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/about",
        "name": "About Ottom: who runs it and how its agents behave",
        "section": "Product",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/trust",
        "name": "Trust centre: how Ottom protects your data",
        "section": "Product",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/security",
        "name": "Reporting a security problem",
        "section": "Product",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/status",
        "name": "Status: live service checks and incident history",
        "section": "Product",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/example-report",
        "name": "What an agent readiness report looks like",
        "section": "Product",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/how-it-works",
        "name": "How it works: an AI agent tries to buy from your store",
        "section": "Product",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/why-it-matters",
        "name": "Why it matters when AI agents cannot buy from your store",
        "section": "Product",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/compare",
        "name": "Ottom compared with monitoring and AI visibility tools",
        "section": "Product",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/compare/checkly-alternative",
        "name": "Checkly alternative: test checkout with AI agents",
        "section": "Product",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/md/compare/checkly-alternative",
        "name": "markdown",
        "section": "Product",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/compare/datadog-synthetics-alternative",
        "name": "Datadog Synthetics alternative for AI shopping agents",
        "section": "Product",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/md/compare/datadog-synthetics-alternative",
        "name": "markdown",
        "section": "Product",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/compare/profound-alternative",
        "name": "Profound alternative: test whether AI agents can buy",
        "section": "Product",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/md/compare/profound-alternative",
        "name": "markdown",
        "section": "Product",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/compare/peec-ai-alternative",
        "name": "Peec AI alternative: test whether AI agents can buy",
        "section": "Product",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/md/compare/peec-ai-alternative",
        "name": "markdown",
        "section": "Product",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/compare/athenahq-alternative",
        "name": "AthenaHQ alternative: test whether AI agents can buy",
        "section": "Product",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/md/compare/athenahq-alternative",
        "name": "markdown",
        "section": "Product",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/synthetic-monitoring",
        "name": "Synthetic monitoring for ecommerce: test the purchase",
        "section": "Product",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/md/synthetic-monitoring",
        "name": "markdown",
        "section": "Product",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/synthetic-monitoring/checkout-monitoring",
        "name": "Checkout monitoring: know when checkout stops working",
        "section": "Product",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/md/synthetic-monitoring/checkout-monitoring",
        "name": "markdown",
        "section": "Product",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/synthetic-monitoring/uptime-vs-synthetic-monitoring",
        "name": "Uptime vs synthetic monitoring for online stores",
        "section": "Product",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/md/synthetic-monitoring/uptime-vs-synthetic-monitoring",
        "name": "markdown",
        "section": "Product",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/docs",
        "name": "Docs: plans, scan cadence and enterprise contracts",
        "section": "Docs",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/md/docs",
        "name": "markdown",
        "section": "Docs",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/docs/plans",
        "name": "Plans and what each one includes",
        "section": "Docs",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/md/docs/plans",
        "name": "markdown",
        "section": "Docs",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/docs/enterprise",
        "name": "Enterprise contracts",
        "section": "Docs",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/md/docs/enterprise",
        "name": "markdown",
        "section": "Docs",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/docs/limits",
        "name": "Limits, and what happens when a store reaches one",
        "section": "Docs",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/md/docs/limits",
        "name": "markdown",
        "section": "Docs",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/docs/scoring",
        "name": "How an Ottom score is calculated",
        "section": "Docs",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/md/docs/scoring",
        "name": "markdown",
        "section": "Docs",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/docs/alerts",
        "name": "Alerts, and when each one is sent",
        "section": "Docs",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/md/docs/alerts",
        "name": "markdown",
        "section": "Docs",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/docs/workspaces",
        "name": "Workspaces, roles and adding a store",
        "section": "Docs",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/md/docs/workspaces",
        "name": "markdown",
        "section": "Docs",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/docs/verify-store",
        "name": "Proving a store is yours with a DNS record",
        "section": "Docs",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/md/docs/verify-store",
        "name": "markdown",
        "section": "Docs",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/docs/connect",
        "name": "Connecting a store from its own platform",
        "section": "Docs",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/md/docs/connect",
        "name": "markdown",
        "section": "Docs",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/docs/cdn",
        "name": "Letting our agent through your CDN",
        "section": "Docs",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/md/docs/cdn",
        "name": "markdown",
        "section": "Docs",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/docs/cdn/cloudflare",
        "name": "Allowing our agent through Cloudflare",
        "section": "Docs",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/md/docs/cdn/cloudflare",
        "name": "markdown",
        "section": "Docs",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/docs/cdn/fastly",
        "name": "Allowing our agent through Fastly",
        "section": "Docs",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/md/docs/cdn/fastly",
        "name": "markdown",
        "section": "Docs",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/docs/cdn/akamai",
        "name": "Allowing our agent through Akamai",
        "section": "Docs",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/md/docs/cdn/akamai",
        "name": "markdown",
        "section": "Docs",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/docs/cdn/aws",
        "name": "Allowing our agent through AWS WAF and CloudFront",
        "section": "Docs",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/md/docs/cdn/aws",
        "name": "markdown",
        "section": "Docs",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/docs/cdn/azure-front-door",
        "name": "Allowing our agent through Azure Front Door",
        "section": "Docs",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/md/docs/cdn/azure-front-door",
        "name": "markdown",
        "section": "Docs",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/docs/cdn/google-cloud-armor",
        "name": "Allowing our agent through Google Cloud Armor",
        "section": "Docs",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/md/docs/cdn/google-cloud-armor",
        "name": "markdown",
        "section": "Docs",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/docs/cdn/vercel",
        "name": "Allowing our agent through the Vercel Firewall",
        "section": "Docs",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/md/docs/cdn/vercel",
        "name": "markdown",
        "section": "Docs",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/docs/ci",
        "name": "Release gates: failing a build when AI agents stall",
        "section": "Docs",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/md/docs/ci",
        "name": "markdown",
        "section": "Docs",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/learn",
        "name": "Learn: agentic commerce guides for store owners",
        "section": "Learn",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/agentic-commerce",
        "name": "Agentic commerce: how AI agents find, compare and buy",
        "section": "Learn",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/agentic-commerce/statistics",
        "name": "Agentic commerce statistics 2026: market size, adoption",
        "section": "Learn",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/md/agentic-commerce/statistics",
        "name": "markdown",
        "section": "Learn",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/tools/roi-calculator",
        "name": "AI commerce ROI calculator",
        "section": "Learn",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/tools/agent-view",
        "name": "Agent view: see your product page the way an AI agent does",
        "section": "Learn",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/help",
        "name": "Help: reading your report, billing and allowlisting",
        "section": "Learn",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/developers",
        "name": "Developer docs: findings, fixes, CI and enterprise",
        "section": "Learn",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/developers/api",
        "name": "HTTP API reference",
        "section": "Learn",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/md/developers/api",
        "name": "markdown",
        "section": "Learn",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/developers/mcp",
        "name": "Ottom MCP server: check a store from any AI assistant",
        "section": "Learn",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/md/developers/mcp",
        "name": "markdown",
        "section": "Learn",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/developers/changelog",
        "name": "Ottom developer changelog: API, MCP server and docs",
        "section": "Learn",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/md/developers/changelog",
        "name": "markdown",
        "section": "Learn",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/learn/agent-readiness-score-vs-purchase-attempt",
        "name": "Agent readiness score vs purchase attempt",
        "section": "Learn",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/learn/stalls",
        "name": "Stall library: every way an AI agent fails on a store",
        "section": "Learn",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/glossary",
        "name": "Agentic commerce glossary",
        "section": "Learn",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/tools",
        "name": "Free agent readiness tools",
        "section": "Learn",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/tools/ai-robots-txt-checker",
        "name": "AI robots.txt checker: which agents can shop your store",
        "section": "Learn",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/tools/llms-txt-validator",
        "name": "llms.txt validator: check your store’s llms.txt file",
        "section": "Learn",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/tools/product-data-checker",
        "name": "Product data checker: schema.org fields AI agents read",
        "section": "Learn",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/tools/sitemap-feed-checker",
        "name": "Sitemap and product feed checker for AI agents",
        "section": "Learn",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/tools/ucp-checker",
        "name": "UCP checker: validate your /.well-known/ucp manifest",
        "section": "Learn",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/tools/llms-txt",
        "name": "llms.txt generator",
        "section": "Learn",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/verticals",
        "name": "AI agents, by what you sell",
        "section": "Learn",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/verticals/apparel",
        "name": "AI agents and apparel stores",
        "section": "Learn",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/md/verticals/apparel",
        "name": "markdown",
        "section": "Learn",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/verticals/beauty",
        "name": "AI agents and beauty stores",
        "section": "Learn",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/md/verticals/beauty",
        "name": "markdown",
        "section": "Learn",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/verticals/electronics",
        "name": "AI agents and electronics stores",
        "section": "Learn",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/md/verticals/electronics",
        "name": "markdown",
        "section": "Learn",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/verticals/food-and-drink",
        "name": "AI agents and food and drink stores",
        "section": "Learn",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/md/verticals/food-and-drink",
        "name": "markdown",
        "section": "Learn",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/verticals/health-and-wellness",
        "name": "AI agents and health and wellness stores",
        "section": "Learn",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/md/verticals/health-and-wellness",
        "name": "markdown",
        "section": "Learn",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/verticals/home",
        "name": "AI agents and home and furniture stores",
        "section": "Learn",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/md/verticals/home",
        "name": "markdown",
        "section": "Learn",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/verticals/jewellery-and-accessories",
        "name": "AI agents and jewellery and accessories stores",
        "section": "Learn",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/md/verticals/jewellery-and-accessories",
        "name": "markdown",
        "section": "Learn",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/verticals/outdoor-and-sports",
        "name": "AI agents and outdoor and sports stores",
        "section": "Learn",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/md/verticals/outdoor-and-sports",
        "name": "markdown",
        "section": "Learn",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/checklists",
        "name": "The agentic readiness checklist",
        "section": "Learn",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/checklists/discover",
        "name": "Agentic readiness checklist: the discover stage",
        "section": "Learn",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/md/checklists/discover",
        "name": "markdown",
        "section": "Learn",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/checklists/evaluate",
        "name": "Agentic readiness checklist: the evaluate stage",
        "section": "Learn",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/md/checklists/evaluate",
        "name": "markdown",
        "section": "Learn",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      },
      {
        "group": "own",
        "kind": "own",
        "url": "https://ottom.io/checklists/compare",
        "name": "Agentic readiness checklist: the compare stage",
        "section": "Learn",
        "source": "llms_txt",
        "read_at": "2026-11-14T00:00:29.881Z",
        "templated": false
      }
    ]
  }
}