{
  "api_status": "preview",
  "generated_at": "2026-10-20T20:43:16.588Z",
  "notes": [
    "We keep every service we find in the index, checked on its schedule. Search, the tree and browsing show the directory by default: the services that meet every listing criterion that applies to them (listing-criteria/5). Being in the directory means meeting these criteria; it is not a rating or an endorsement. Add scope=index to search everything we watch.",
    "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 (schedule/1; see evidence.schedule_tier).",
    "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 registry's payment terms (a known USD stablecoin), for reviewed entries from the operator's stated pricing (a claim, linked on the service page). price_source says which."
  ],
  "query": {
    "scope": "index",
    "provider": "rootstuff.io",
    "sort": "evidence",
    "limit": 50,
    "offset": 0
  },
  "total": 8,
  "items": [
    {
      "id": "cand_11f03dbed966ce74",
      "tier": "discovered",
      "type": "api_endpoint",
      "name": "sentinel.rootstuff.io",
      "name_source": "registry",
      "branches": {
        "primary": "identity/security/websites-domains",
        "secondary": [],
        "method_version": "placement-ai/3",
        "tree_version": "tree/3",
        "placed_at": "2026-10-18T15:00:05.000Z"
      },
      "place": {
        "id": "identity/security/websites-domains",
        "name": "Scan websites and domains",
        "description": "Scan live sites, apps and domains for exposed data, headers, TLS and attack surface."
      },
      "summary": {
        "text": "Grades a host's TLS certificate and handshake.",
        "source": "automated",
        "method": "placement-ai/3",
        "written_at": "2026-10-18T15:00:05.000Z"
      },
      "package": null,
      "directory": {
        "in_directory": false,
        "method_version": "listing-criteria/5",
        "variant_of": null,
        "criteria": {
          "says_what_it_does": true,
          "answers_now": true,
          "registry_payers_at_least_5": false,
          "curated_catalogue": false,
          "not_computable_locally": true,
          "not_test_address": true,
          "not_a_variant": true
        }
      },
      "host": "sentinel.rootstuff.io",
      "provider": "rootstuff.io",
      "url": "https://sentinel.rootstuff.io/x402/ssl",
      "method": "GET",
      "templated_url": false,
      "operator": null,
      "tags": [],
      "category": null,
      "price_usd": 0.01,
      "price_source": "registry",
      "provider_endpoints": 8,
      "networks": [
        "eip155:8453"
      ],
      "networks_source": "observed",
      "payment_protocols": [
        "x402"
      ],
      "access": {
        "observed": {
          "requires": "payment",
          "how": [
            "x402"
          ],
          "at": "2026-10-19T04:11:12.633Z",
          "method": "access/1"
        },
        "stated": null
      },
      "currency": {
        "codes": [
          "USD"
        ],
        "tokens": [
          "USDC"
        ],
        "source": "observed",
        "since": "2026-10-17T03:56:20.643Z",
        "method": "currency/1"
      },
      "tools": null,
      "payment_model": {
        "value": "per_call",
        "source": "observed",
        "method": "access/1"
      },
      "mainnet": true,
      "evidence": {
        "operations": 1,
        "check_interval_hours": 168,
        "check_interval": "weekly",
        "check_interval_rule": "Weekly: fewer than 5 payers, or no usage figure.",
        "schedule_tier": "weekly",
        "monitoring_since": "2026-10-17T03:10:25.000Z",
        "monitoring_days": 3.7,
        "limited_evidence": true,
        "checks_30d": 3,
        "passed_30d": 3,
        "missed_30d": 0,
        "pass_rate": 1,
        "freshness": "fresh",
        "last_check": {
          "at": "2026-10-19T04:11:12.633Z",
          "result": "payment_required",
          "passed": true,
          "http_status": 402,
          "duration_ms": 147
        }
      },
      "response_times": {
        "method": "response-times/1",
        "operation": "payment_request",
        "check_method": "candidate-x402/6",
        "check_methods": [
          "candidate-x402/3",
          "candidate-x402/4",
          "candidate-x402/6"
        ],
        "timeout_ms": 10000,
        "computed_at": "2026-10-19T07:25:23.000Z",
        "windows": [
          {
            "window": "24h",
            "start": "2026-10-18T07:25:23.000Z",
            "end": "2026-10-19T07:25:23.000Z",
            "limited_history": false,
            "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-10-17T03:10:25.000Z",
            "end": "2026-10-19T07:25:23.000Z",
            "limited_history": true,
            "checks": 3,
            "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-10-17T03:10:25.000Z",
            "end": "2026-10-19T07:25:23.000Z",
            "limited_history": true,
            "checks": 3,
            "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": {
        "calls_30d": 27,
        "unique_payers_30d": 3,
        "note": "Reported by the registry; not our measurement."
      },
      "payment_terms": {
        "current_since": "2026-10-17T03:56:20.643Z",
        "changes_30d": 0,
        "changes_90d": 0,
        "pay_to_changes_90d": 0,
        "last_change_at": null,
        "last_change_kinds": [],
        "window_start": "2026-10-17T03:10:25.000Z",
        "limited": true
      },
      "registry_listing": {
        "last_seen_at": "2026-10-19T07:40:23.000Z",
        "listed": true
      },
      "links": {
        "page": "https://agentservicedirectory.com/services/cand_11f03dbed966ce74",
        "api": "https://agentservicedirectory.com/api/v1/services/cand_11f03dbed966ce74"
      }
    },
    {
      "id": "cand_67390d27e7342e5d",
      "tier": "discovered",
      "type": "api_endpoint",
      "name": "sentinel.rootstuff.io",
      "name_source": "registry",
      "branches": {
        "primary": "web/domains-network/dns",
        "secondary": [],
        "method_version": "placement-ai/2",
        "tree_version": "tree/3",
        "placed_at": "2026-10-18T00:55:28.000Z"
      },
      "place": null,
      "summary": null,
      "package": null,
      "directory": {
        "in_directory": false,
        "method_version": "listing-criteria/5",
        "variant_of": null,
        "criteria": {
          "says_what_it_does": false,
          "answers_now": true,
          "registry_payers_at_least_5": false,
          "curated_catalogue": false,
          "not_computable_locally": true,
          "not_test_address": true,
          "not_a_variant": true
        }
      },
      "host": "sentinel.rootstuff.io",
      "provider": "rootstuff.io",
      "url": "https://sentinel.rootstuff.io/x402/dns",
      "method": "POST",
      "templated_url": false,
      "operator": null,
      "tags": [],
      "category": null,
      "price_usd": 0.01,
      "price_source": "registry",
      "provider_endpoints": 8,
      "networks": [
        "eip155:8453"
      ],
      "networks_source": "observed",
      "payment_protocols": [
        "x402"
      ],
      "access": {
        "observed": {
          "requires": "payment",
          "how": [
            "x402"
          ],
          "at": "2026-10-19T04:25:54.630Z",
          "method": "access/1"
        },
        "stated": null
      },
      "currency": {
        "codes": [
          "USD"
        ],
        "tokens": [
          "USDC"
        ],
        "source": "observed",
        "since": "2026-10-17T04:05:59.265Z",
        "method": "currency/1"
      },
      "tools": null,
      "payment_model": {
        "value": "per_call",
        "source": "observed",
        "method": "access/1"
      },
      "mainnet": true,
      "evidence": {
        "operations": 1,
        "check_interval_hours": 168,
        "check_interval": "weekly",
        "check_interval_rule": "Weekly: fewer than 5 payers, or no usage figure.",
        "schedule_tier": "weekly",
        "monitoring_since": "2026-10-17T03:55:25.000Z",
        "monitoring_days": 3.7,
        "limited_evidence": true,
        "checks_30d": 3,
        "passed_30d": 3,
        "missed_30d": 0,
        "pass_rate": 1,
        "freshness": "fresh",
        "last_check": {
          "at": "2026-10-19T04:25:54.630Z",
          "result": "payment_required",
          "passed": true,
          "http_status": 402,
          "duration_ms": 57
        }
      },
      "response_times": {
        "method": "response-times/1",
        "operation": "payment_request",
        "check_method": "candidate-x402/6",
        "check_methods": [
          "candidate-x402/3",
          "candidate-x402/4",
          "candidate-x402/6"
        ],
        "timeout_ms": 10000,
        "computed_at": "2026-10-19T07:30:23.000Z",
        "windows": [
          {
            "window": "24h",
            "start": "2026-10-18T07:30:23.000Z",
            "end": "2026-10-19T07:30:23.000Z",
            "limited_history": false,
            "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-10-17T03:55:25.000Z",
            "end": "2026-10-19T07:30:23.000Z",
            "limited_history": true,
            "checks": 3,
            "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-10-17T03:55:25.000Z",
            "end": "2026-10-19T07:30:23.000Z",
            "limited_history": true,
            "checks": 3,
            "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": {
        "calls_30d": 3,
        "unique_payers_30d": 3,
        "note": "Reported by the registry; not our measurement."
      },
      "payment_terms": {
        "current_since": "2026-10-17T04:05:59.265Z",
        "changes_30d": 0,
        "changes_90d": 0,
        "pay_to_changes_90d": 0,
        "last_change_at": null,
        "last_change_kinds": [],
        "window_start": "2026-10-17T03:55:25.000Z",
        "limited": true
      },
      "registry_listing": {
        "last_seen_at": "2026-10-20T00:55:23.000Z",
        "listed": true
      },
      "links": {
        "page": "https://agentservicedirectory.com/services/cand_67390d27e7342e5d",
        "api": "https://agentservicedirectory.com/api/v1/services/cand_67390d27e7342e5d"
      }
    },
    {
      "id": "cand_2e0033ca25fa9a24",
      "tier": "discovered",
      "type": "api_endpoint",
      "name": "sentinel.rootstuff.io",
      "name_source": "registry",
      "branches": {
        "primary": "identity/security/websites-domains",
        "secondary": [],
        "method_version": "placement-ai/3",
        "tree_version": "tree/3",
        "placed_at": "2026-10-18T15:05:05.000Z"
      },
      "place": {
        "id": "identity/security/websites-domains",
        "name": "Scan websites and domains",
        "description": "Scan live sites, apps and domains for exposed data, headers, TLS and attack surface."
      },
      "summary": {
        "text": "Returns a URL's response headers and a security-header report.",
        "source": "automated",
        "method": "placement-ai/3",
        "written_at": "2026-10-18T15:05:05.000Z"
      },
      "package": null,
      "directory": {
        "in_directory": false,
        "method_version": "listing-criteria/5",
        "variant_of": null,
        "criteria": {
          "says_what_it_does": true,
          "answers_now": true,
          "registry_payers_at_least_5": false,
          "curated_catalogue": false,
          "not_computable_locally": true,
          "not_test_address": true,
          "not_a_variant": true
        }
      },
      "host": "sentinel.rootstuff.io",
      "provider": "rootstuff.io",
      "url": "https://sentinel.rootstuff.io/x402/headers",
      "method": "POST",
      "templated_url": false,
      "operator": null,
      "tags": [],
      "category": null,
      "price_usd": 0.01,
      "price_source": "registry",
      "provider_endpoints": 8,
      "networks": [
        "eip155:8453"
      ],
      "networks_source": "observed",
      "payment_protocols": [
        "x402"
      ],
      "access": {
        "observed": {
          "requires": "payment",
          "how": [
            "x402"
          ],
          "at": "2026-10-19T05:15:55.261Z",
          "method": "access/1"
        },
        "stated": null
      },
      "currency": {
        "codes": [
          "USD"
        ],
        "tokens": [
          "USDC"
        ],
        "source": "observed",
        "since": "2026-10-17T05:06:33.985Z",
        "method": "currency/1"
      },
      "tools": null,
      "payment_model": {
        "value": "per_call",
        "source": "observed",
        "method": "access/1"
      },
      "mainnet": true,
      "evidence": {
        "operations": 1,
        "check_interval_hours": 168,
        "check_interval": "weekly",
        "check_interval_rule": "Weekly: fewer than 5 payers, or no usage figure.",
        "schedule_tier": "weekly",
        "monitoring_since": "2026-10-17T05:05:25.000Z",
        "monitoring_days": 3.7,
        "limited_evidence": true,
        "checks_30d": 3,
        "passed_30d": 3,
        "missed_30d": 0,
        "pass_rate": 1,
        "freshness": "fresh",
        "last_check": {
          "at": "2026-10-19T05:15:55.261Z",
          "result": "payment_required",
          "passed": true,
          "http_status": 402,
          "duration_ms": 112
        }
      },
      "response_times": {
        "method": "response-times/1",
        "operation": "payment_request",
        "check_method": "candidate-x402/6",
        "check_methods": [
          "candidate-x402/3",
          "candidate-x402/4",
          "candidate-x402/6"
        ],
        "timeout_ms": 10000,
        "computed_at": "2026-10-20T04:20:29.881Z",
        "windows": [
          {
            "window": "24h",
            "start": "2026-10-19T04:20:29.881Z",
            "end": "2026-10-20T04:20:29.881Z",
            "limited_history": false,
            "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-10-17T05:05:25.000Z",
            "end": "2026-10-20T04:20:29.881Z",
            "limited_history": true,
            "checks": 3,
            "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-10-17T05:05:25.000Z",
            "end": "2026-10-20T04:20:29.881Z",
            "limited_history": true,
            "checks": 3,
            "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": {
        "calls_30d": 3,
        "unique_payers_30d": 3,
        "note": "Reported by the registry; not our measurement."
      },
      "payment_terms": {
        "current_since": "2026-10-17T05:06:33.985Z",
        "changes_30d": 0,
        "changes_90d": 0,
        "pay_to_changes_90d": 0,
        "last_change_at": null,
        "last_change_kinds": [],
        "window_start": "2026-10-17T05:05:25.000Z",
        "limited": true
      },
      "registry_listing": {
        "last_seen_at": "2026-10-20T04:55:29.881Z",
        "listed": true
      },
      "links": {
        "page": "https://agentservicedirectory.com/services/cand_2e0033ca25fa9a24",
        "api": "https://agentservicedirectory.com/api/v1/services/cand_2e0033ca25fa9a24"
      }
    },
    {
      "id": "cand_f47eb424329623a0",
      "tier": "discovered",
      "type": "api_endpoint",
      "name": "sentinel.rootstuff.io",
      "name_source": "registry",
      "branches": {
        "primary": "web/domains-network/dns",
        "secondary": [],
        "method_version": "placement-ai/2",
        "tree_version": "tree/3",
        "placed_at": "2026-10-18T00:25:28.000Z"
      },
      "place": null,
      "summary": null,
      "package": null,
      "directory": {
        "in_directory": false,
        "method_version": "listing-criteria/5",
        "variant_of": null,
        "criteria": {
          "says_what_it_does": false,
          "answers_now": true,
          "registry_payers_at_least_5": false,
          "curated_catalogue": false,
          "not_computable_locally": true,
          "not_test_address": true,
          "not_a_variant": true
        }
      },
      "host": "sentinel.rootstuff.io",
      "provider": "rootstuff.io",
      "url": "https://sentinel.rootstuff.io/x402/domain",
      "method": "POST",
      "templated_url": false,
      "operator": null,
      "tags": [],
      "category": null,
      "price_usd": 0.01,
      "price_source": "registry",
      "provider_endpoints": 8,
      "networks": [
        "eip155:8453"
      ],
      "networks_source": "observed",
      "payment_protocols": [
        "x402"
      ],
      "access": {
        "observed": {
          "requires": "payment",
          "how": [
            "x402"
          ],
          "at": "2026-10-20T07:20:50.714Z",
          "method": "access/1"
        },
        "stated": null
      },
      "currency": {
        "codes": [
          "USD"
        ],
        "tokens": [
          "USDC"
        ],
        "source": "observed",
        "since": "2026-10-17T10:45:50.842Z",
        "method": "currency/1"
      },
      "tools": null,
      "payment_model": {
        "value": "per_call",
        "source": "observed",
        "method": "access/1"
      },
      "mainnet": true,
      "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-10-17T08:55:28.000Z",
        "monitoring_days": 3.5,
        "limited_evidence": true,
        "checks_30d": 3,
        "passed_30d": 3,
        "missed_30d": 0,
        "pass_rate": 1,
        "freshness": "fresh",
        "last_check": {
          "at": "2026-10-20T07:20:50.714Z",
          "result": "payment_required",
          "passed": true,
          "http_status": 402,
          "duration_ms": 136
        }
      },
      "response_times": {
        "method": "response-times/1",
        "operation": "payment_request",
        "check_method": "candidate-x402/5",
        "check_methods": [
          "candidate-x402/4",
          "candidate-x402/5"
        ],
        "timeout_ms": 10000,
        "computed_at": "2026-10-19T09:00:23.000Z",
        "windows": [
          {
            "window": "24h",
            "start": "2026-10-18T09:00:23.000Z",
            "end": "2026-10-19T09:00:23.000Z",
            "limited_history": false,
            "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-10-17T08:55:28.000Z",
            "end": "2026-10-19T09:00:23.000Z",
            "limited_history": true,
            "checks": 2,
            "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-10-17T08:55:28.000Z",
            "end": "2026-10-19T09:00:23.000Z",
            "limited_history": true,
            "checks": 2,
            "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": {
        "calls_30d": 4,
        "unique_payers_30d": 2,
        "note": "Reported by the registry; not our measurement."
      },
      "payment_terms": {
        "current_since": "2026-10-17T10:45:50.842Z",
        "changes_30d": 0,
        "changes_90d": 0,
        "pay_to_changes_90d": 0,
        "last_change_at": null,
        "last_change_kinds": [],
        "window_start": "2026-10-17T08:55:28.000Z",
        "limited": true
      },
      "registry_listing": {
        "last_seen_at": "2026-10-20T06:25:29.881Z",
        "listed": true
      },
      "links": {
        "page": "https://agentservicedirectory.com/services/cand_f47eb424329623a0",
        "api": "https://agentservicedirectory.com/api/v1/services/cand_f47eb424329623a0"
      }
    },
    {
      "id": "cand_2f1a23b9625bb5e9",
      "tier": "discovered",
      "type": "api_endpoint",
      "name": "sentinel.rootstuff.io",
      "name_source": "registry",
      "branches": {
        "primary": "web/fetch/read-page",
        "secondary": [],
        "method_version": "placement-ai/2",
        "tree_version": "tree/3",
        "placed_at": "2026-10-18T00:55:28.000Z"
      },
      "place": null,
      "summary": null,
      "package": null,
      "directory": {
        "in_directory": false,
        "method_version": "listing-criteria/5",
        "variant_of": null,
        "criteria": {
          "says_what_it_does": false,
          "answers_now": true,
          "registry_payers_at_least_5": false,
          "curated_catalogue": false,
          "not_computable_locally": true,
          "not_test_address": true,
          "not_a_variant": true
        }
      },
      "host": "sentinel.rootstuff.io",
      "provider": "rootstuff.io",
      "url": "https://sentinel.rootstuff.io/x402/redirects",
      "method": "POST",
      "templated_url": false,
      "operator": null,
      "tags": [],
      "category": null,
      "price_usd": 0.01,
      "price_source": "registry",
      "provider_endpoints": 8,
      "networks": [
        "eip155:8453"
      ],
      "networks_source": "observed",
      "payment_protocols": [
        "x402"
      ],
      "access": {
        "observed": {
          "requires": "payment",
          "how": [
            "x402"
          ],
          "at": "2026-10-20T07:25:44.825Z",
          "method": "access/1"
        },
        "stated": null
      },
      "currency": {
        "codes": [
          "USD"
        ],
        "tokens": [
          "USDC"
        ],
        "source": "observed",
        "since": "2026-10-17T10:50:42.609Z",
        "method": "currency/1"
      },
      "tools": null,
      "payment_model": {
        "value": "per_call",
        "source": "observed",
        "method": "access/1"
      },
      "mainnet": true,
      "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-10-17T09:05:28.000Z",
        "monitoring_days": 3.5,
        "limited_evidence": true,
        "checks_30d": 3,
        "passed_30d": 3,
        "missed_30d": 0,
        "pass_rate": 1,
        "freshness": "fresh",
        "last_check": {
          "at": "2026-10-20T07:25:44.825Z",
          "result": "payment_required",
          "passed": true,
          "http_status": 402,
          "duration_ms": 130
        }
      },
      "response_times": {
        "method": "response-times/1",
        "operation": "payment_request",
        "check_method": "candidate-x402/6",
        "check_methods": [
          "candidate-x402/4",
          "candidate-x402/5",
          "candidate-x402/6"
        ],
        "timeout_ms": 10000,
        "computed_at": "2026-10-20T07:30:29.881Z",
        "windows": [
          {
            "window": "24h",
            "start": "2026-10-19T07:30:29.881Z",
            "end": "2026-10-20T07:30:29.881Z",
            "limited_history": false,
            "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-10-17T09:05:28.000Z",
            "end": "2026-10-20T07:30:29.881Z",
            "limited_history": true,
            "checks": 3,
            "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-10-17T09:05:28.000Z",
            "end": "2026-10-20T07:30:29.881Z",
            "limited_history": true,
            "checks": 3,
            "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": {
        "calls_30d": 2,
        "unique_payers_30d": 2,
        "note": "Reported by the registry; not our measurement."
      },
      "payment_terms": {
        "current_since": "2026-10-17T10:50:42.609Z",
        "changes_30d": 0,
        "changes_90d": 0,
        "pay_to_changes_90d": 0,
        "last_change_at": null,
        "last_change_kinds": [],
        "window_start": "2026-10-17T09:05:28.000Z",
        "limited": true
      },
      "registry_listing": {
        "last_seen_at": "2026-10-20T06:45:29.881Z",
        "listed": true
      },
      "links": {
        "page": "https://agentservicedirectory.com/services/cand_2f1a23b9625bb5e9",
        "api": "https://agentservicedirectory.com/api/v1/services/cand_2f1a23b9625bb5e9"
      }
    },
    {
      "id": "cand_4901172396dc1a2d",
      "tier": "discovered",
      "type": "api_endpoint",
      "name": "sentinel.rootstuff.io",
      "name_source": "registry",
      "branches": {
        "primary": "other",
        "secondary": [],
        "method_version": "placement-rules/3",
        "tree_version": "tree/3",
        "placed_at": "2026-10-18T01:10:28.000Z"
      },
      "place": null,
      "summary": null,
      "package": null,
      "directory": {
        "in_directory": false,
        "method_version": "listing-criteria/5",
        "variant_of": null,
        "criteria": {
          "says_what_it_does": false,
          "answers_now": true,
          "registry_payers_at_least_5": false,
          "curated_catalogue": false,
          "not_computable_locally": true,
          "not_test_address": true,
          "not_a_variant": true
        }
      },
      "host": "sentinel.rootstuff.io",
      "provider": "rootstuff.io",
      "url": "https://sentinel.rootstuff.io/x402/port",
      "method": "POST",
      "templated_url": false,
      "operator": null,
      "tags": [],
      "category": null,
      "price_usd": 0.01,
      "price_source": "registry",
      "provider_endpoints": 8,
      "networks": [
        "eip155:8453"
      ],
      "networks_source": "observed",
      "payment_protocols": [
        "x402"
      ],
      "access": {
        "observed": {
          "requires": "payment",
          "how": [
            "x402"
          ],
          "at": "2026-10-20T07:25:44.846Z",
          "method": "access/1"
        },
        "stated": null
      },
      "currency": {
        "codes": [
          "USD"
        ],
        "tokens": [
          "USDC"
        ],
        "source": "observed",
        "since": "2026-10-17T10:50:42.618Z",
        "method": "currency/1"
      },
      "tools": null,
      "payment_model": {
        "value": "per_call",
        "source": "observed",
        "method": "access/1"
      },
      "mainnet": true,
      "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-10-17T09:05:28.000Z",
        "monitoring_days": 3.5,
        "limited_evidence": true,
        "checks_30d": 3,
        "passed_30d": 3,
        "missed_30d": 0,
        "pass_rate": 1,
        "freshness": "fresh",
        "last_check": {
          "at": "2026-10-20T07:25:44.846Z",
          "result": "payment_required",
          "passed": true,
          "http_status": 402,
          "duration_ms": 123
        }
      },
      "response_times": {
        "method": "response-times/1",
        "operation": "payment_request",
        "check_method": "candidate-x402/5",
        "check_methods": [
          "candidate-x402/4",
          "candidate-x402/5"
        ],
        "timeout_ms": 10000,
        "computed_at": "2026-10-19T09:10:23.000Z",
        "windows": [
          {
            "window": "24h",
            "start": "2026-10-18T09:10:23.000Z",
            "end": "2026-10-19T09:10:23.000Z",
            "limited_history": false,
            "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-10-17T09:05:28.000Z",
            "end": "2026-10-19T09:10:23.000Z",
            "limited_history": true,
            "checks": 2,
            "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-10-17T09:05:28.000Z",
            "end": "2026-10-19T09:10:23.000Z",
            "limited_history": true,
            "checks": 2,
            "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": {
        "calls_30d": 2,
        "unique_payers_30d": 2,
        "note": "Reported by the registry; not our measurement."
      },
      "payment_terms": {
        "current_since": "2026-10-17T10:50:42.618Z",
        "changes_30d": 0,
        "changes_90d": 0,
        "pay_to_changes_90d": 0,
        "last_change_at": null,
        "last_change_kinds": [],
        "window_start": "2026-10-17T09:05:28.000Z",
        "limited": true
      },
      "registry_listing": {
        "last_seen_at": "2026-10-20T06:45:29.881Z",
        "listed": true
      },
      "links": {
        "page": "https://agentservicedirectory.com/services/cand_4901172396dc1a2d",
        "api": "https://agentservicedirectory.com/api/v1/services/cand_4901172396dc1a2d"
      }
    },
    {
      "id": "cand_cc35a5107b1551e8",
      "tier": "discovered",
      "type": "api_endpoint",
      "name": "sentinel.rootstuff.io",
      "name_source": "registry",
      "branches": {
        "primary": "web/domains-network",
        "secondary": [],
        "method_version": "placement-ai/2",
        "tree_version": "tree/3",
        "placed_at": "2026-10-18T00:00:28.000Z"
      },
      "place": null,
      "summary": null,
      "package": null,
      "directory": {
        "in_directory": false,
        "method_version": "listing-criteria/5",
        "variant_of": null,
        "criteria": {
          "says_what_it_does": false,
          "answers_now": true,
          "registry_payers_at_least_5": false,
          "curated_catalogue": false,
          "not_computable_locally": true,
          "not_test_address": false,
          "not_a_variant": true
        }
      },
      "host": "sentinel.rootstuff.io",
      "provider": "rootstuff.io",
      "url": "https://sentinel.rootstuff.io/x402/ping",
      "method": "POST",
      "templated_url": false,
      "operator": null,
      "tags": [],
      "category": null,
      "price_usd": 0.01,
      "price_source": "registry",
      "provider_endpoints": 8,
      "networks": [
        "eip155:8453"
      ],
      "networks_source": "observed",
      "payment_protocols": [
        "x402"
      ],
      "access": {
        "observed": {
          "requires": "payment",
          "how": [
            "x402"
          ],
          "at": "2026-10-20T07:30:58.866Z",
          "method": "access/1"
        },
        "stated": null
      },
      "currency": {
        "codes": [
          "USD"
        ],
        "tokens": [
          "USDC"
        ],
        "source": "observed",
        "since": "2026-10-17T10:56:18.162Z",
        "method": "currency/1"
      },
      "tools": null,
      "payment_model": {
        "value": "per_call",
        "source": "observed",
        "method": "access/1"
      },
      "mainnet": true,
      "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-10-17T09:05:28.000Z",
        "monitoring_days": 3.5,
        "limited_evidence": true,
        "checks_30d": 3,
        "passed_30d": 3,
        "missed_30d": 0,
        "pass_rate": 1,
        "freshness": "fresh",
        "last_check": {
          "at": "2026-10-20T07:30:58.866Z",
          "result": "payment_required",
          "passed": true,
          "http_status": 402,
          "duration_ms": 101
        }
      },
      "response_times": {
        "method": "response-times/1",
        "operation": "payment_request",
        "check_method": "candidate-x402/5",
        "check_methods": [
          "candidate-x402/4",
          "candidate-x402/5"
        ],
        "timeout_ms": 10000,
        "computed_at": "2026-10-19T09:10:23.000Z",
        "windows": [
          {
            "window": "24h",
            "start": "2026-10-18T09:10:23.000Z",
            "end": "2026-10-19T09:10:23.000Z",
            "limited_history": false,
            "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-10-17T09:05:28.000Z",
            "end": "2026-10-19T09:10:23.000Z",
            "limited_history": true,
            "checks": 2,
            "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-10-17T09:05:28.000Z",
            "end": "2026-10-19T09:10:23.000Z",
            "limited_history": true,
            "checks": 2,
            "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": {
        "calls_30d": 2,
        "unique_payers_30d": 2,
        "note": "Reported by the registry; not our measurement."
      },
      "payment_terms": {
        "current_since": "2026-10-17T10:56:18.162Z",
        "changes_30d": 0,
        "changes_90d": 0,
        "pay_to_changes_90d": 0,
        "last_change_at": null,
        "last_change_kinds": [],
        "window_start": "2026-10-17T09:05:28.000Z",
        "limited": true
      },
      "registry_listing": {
        "last_seen_at": "2026-10-19T09:10:23.000Z",
        "listed": true
      },
      "links": {
        "page": "https://agentservicedirectory.com/services/cand_cc35a5107b1551e8",
        "api": "https://agentservicedirectory.com/api/v1/services/cand_cc35a5107b1551e8"
      }
    },
    {
      "id": "cand_cb058b6e7c159920",
      "tier": "discovered",
      "type": "mcp_server",
      "name": "io.rootstuff/sentinel",
      "name_source": "registry",
      "branches": {
        "primary": "web/site-analysis/uptime-status",
        "secondary": [],
        "method_version": "placement-ai/5",
        "tree_version": "tree/3",
        "placed_at": "2026-10-18T22:25:05.000Z"
      },
      "place": {
        "id": "web/site-analysis/uptime-status",
        "name": "Uptime and service status",
        "description": "Check whether sites and services are up, run uptime monitors, and read status pages and outages."
      },
      "summary": {
        "text": "Monitors uptime, SSL, DNS and domain status through MCP clients.",
        "source": "automated",
        "method": "placement-ai/5",
        "written_at": "2026-10-18T22:25:05.000Z"
      },
      "package": null,
      "directory": {
        "in_directory": true,
        "method_version": "listing-criteria/5",
        "variant_of": null,
        "criteria": {
          "says_what_it_does": true,
          "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": "sentinel.rootstuff.io",
      "provider": "rootstuff.io",
      "url": "https://sentinel.rootstuff.io/mcp/sentinel-oauth",
      "method": "GET",
      "templated_url": false,
      "operator": null,
      "tags": [],
      "category": null,
      "price_usd": null,
      "price_source": null,
      "provider_endpoints": 8,
      "networks": [],
      "networks_source": "registry",
      "payment_protocols": [],
      "access": {
        "observed": {
          "requires": "credentials",
          "how": [
            "oauth"
          ],
          "at": "2026-10-20T09:16:23.447Z",
          "method": "access/1"
        },
        "stated": null
      },
      "currency": null,
      "tools": null,
      "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-10-17T19:07:31.116Z",
        "monitoring_days": 3.1,
        "limited_evidence": true,
        "checks_30d": 3,
        "passed_30d": 3,
        "missed_30d": 0,
        "pass_rate": 1,
        "freshness": "fresh",
        "last_check": {
          "at": "2026-10-20T09:16:23.447Z",
          "result": "auth_required",
          "passed": true,
          "http_status": 401,
          "duration_ms": 582
        }
      },
      "response_times": {
        "method": "response-times/1",
        "operation": "response",
        "check_method": "mcp-reach/3",
        "check_methods": [
          "mcp-reach/3"
        ],
        "timeout_ms": 10000,
        "computed_at": "2026-10-19T20:20:23.000Z",
        "windows": [
          {
            "window": "24h",
            "start": "2026-10-18T20:20:23.000Z",
            "end": "2026-10-19T20:20:23.000Z",
            "limited_history": false,
            "checks": 0,
            "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-10-17T19:07:31.116Z",
            "end": "2026-10-19T20:20:23.000Z",
            "limited_history": true,
            "checks": 2,
            "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-10-17T19:07:31.116Z",
            "end": "2026-10-19T20:20:23.000Z",
            "limited_history": true,
            "checks": 2,
            "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-10-20T07:07:47.785Z",
        "listed": true
      },
      "links": {
        "page": "https://agentservicedirectory.com/services/cand_cb058b6e7c159920",
        "api": "https://agentservicedirectory.com/api/v1/services/cand_cb058b6e7c159920"
      }
    }
  ]
}