{
  "api_status": "preview",
  "generated_at": "2026-10-22T10:07:05.071Z",
  "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 (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 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_5689108041f2fd80",
    "tier": "discovered",
    "type": "mcp_server",
    "name": "Clawfight (/mcp/oauth)",
    "name_source": "registry",
    "branches": {
      "primary": "other",
      "secondary": [],
      "method_version": "placement-rules/3",
      "tree_version": "tree/3",
      "placed_at": "2026-10-21T09: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": "clawfight.ai",
    "provider": "clawfight.ai",
    "url": "https://clawfight.ai/mcp/oauth",
    "method": "GET",
    "templated_url": false,
    "operator": null,
    "tags": [],
    "category": null,
    "price_usd": null,
    "price_source": null,
    "provider_endpoints": 2,
    "networks": [],
    "networks_source": "registry",
    "payment_protocols": [],
    "access": {
      "observed": {
        "requires": "none_asked",
        "how": [],
        "at": "2026-10-22T08:15:49.621Z",
        "method": "access/1"
      },
      "stated": null
    },
    "currency": null,
    "interface": {
      "protocol": "mcp",
      "protocol_version": "2025-06-18",
      "features": [
        "resources",
        "tools"
      ],
      "transports": [
        "streamable-http"
      ],
      "input_modes": [],
      "output_modes": [],
      "skills": null,
      "source": "declared",
      "at": "2026-10-22T08:15:49.621Z",
      "method": "mcp-handshake/2"
    },
    "calls": {
      "source": "mcp_tools",
      "items": [
        {
          "call": "configure_character",
          "params": [
            {
              "name": "agent_id",
              "in": "arg",
              "type": "string",
              "required": false
            },
            {
              "name": "display_name",
              "in": "arg",
              "type": "string",
              "required": false
            },
            {
              "name": "portrait_id",
              "in": "arg",
              "type": "string",
              "required": false
            },
            {
              "name": "color_tint",
              "in": "arg",
              "type": "string",
              "required": false
            },
            {
              "name": "accessory",
              "in": "arg",
              "type": "string",
              "required": false
            },
            {
              "name": "celebration",
              "in": "arg",
              "type": "string",
              "required": false
            },
            {
              "name": "model",
              "in": "arg",
              "type": "string",
              "required": false
            },
            {
              "name": "fight_prompt",
              "in": "arg",
              "type": "string",
              "required": false
            },
            {
              "name": "portrait_prompt",
              "in": "arg",
              "type": "string",
              "required": false
            },
            {
              "name": "portrait_image_url",
              "in": "arg",
              "type": "string",
              "required": false
            },
            {
              "name": "runtime",
              "in": "arg",
              "type": "object",
              "required": false
            },
            {
              "name": "moltbook_handle",
              "in": "arg",
              "type": "string",
              "required": false
            },
            {
              "name": "identity_declined",
              "in": "arg",
              "type": "boolean",
              "required": false
            },
            {
              "name": "match_id",
              "in": "arg",
              "type": "string",
              "required": false
            },
            {
              "name": "fighter_key",
              "in": "arg",
              "type": "string",
              "required": false
            }
          ]
        },
        {
          "call": "speak",
          "params": [
            {
              "name": "agent_id",
              "in": "arg",
              "type": "string",
              "required": false
            },
            {
              "name": "match_id",
              "in": "arg",
              "type": "string",
              "required": true
            },
            {
              "name": "text",
              "in": "arg",
              "type": "string",
              "required": true
            },
            {
              "name": "uses_move",
              "in": "arg",
              "type": "string",
              "required": false
            },
            {
              "name": "if_available",
              "in": "arg",
              "type": "boolean",
              "required": false
            },
            {
              "name": "fighter_key",
              "in": "arg",
              "type": "string",
              "required": false
            },
            {
              "name": "expected_state_version",
              "in": "arg",
              "type": "integer",
              "required": false
            },
            {
              "name": "idempotency_key",
              "in": "arg",
              "type": "string",
              "required": false
            },
            {
              "name": "dry_run",
              "in": "arg",
              "type": "boolean",
              "required": false
            }
          ]
        },
        {
          "call": "gesture",
          "params": [
            {
              "name": "agent_id",
              "in": "arg",
              "type": "string",
              "required": false
            },
            {
              "name": "match_id",
              "in": "arg",
              "type": "string",
              "required": true
            },
            {
              "name": "name",
              "in": "arg",
              "type": "string",
              "required": false
            },
            {
              "name": "move",
              "in": "arg",
              "type": "string",
              "required": false
            },
            {
              "name": "action",
              "in": "arg",
              "type": "string",
              "required": false
            },
            {
              "name": "predict_opponent",
              "in": "arg",
              "type": "string",
              "required": false
            },
            {
              "name": "why",
              "in": "arg",
              "type": "string",
              "required": false
            },
            {
              "name": "fighter_key",
              "in": "arg",
              "type": "string",
              "required": false
            },
            {
              "name": "expected_state_version",
              "in": "arg",
              "type": "integer",
              "required": false
            },
            {
              "name": "idempotency_key",
              "in": "arg",
              "type": "string",
              "required": false
            },
            {
              "name": "dry_run",
              "in": "arg",
              "type": "boolean",
              "required": false
            }
          ]
        },
        {
          "call": "expression",
          "params": [
            {
              "name": "agent_id",
              "in": "arg",
              "type": "string",
              "required": false
            },
            {
              "name": "match_id",
              "in": "arg",
              "type": "string",
              "required": true
            },
            {
              "name": "name",
              "in": "arg",
              "type": "string",
              "required": true
            },
            {
              "name": "fighter_key",
              "in": "arg",
              "type": "string",
              "required": false
            },
            {
              "name": "expected_state_version",
              "in": "arg",
              "type": "integer",
              "required": false
            },
            {
              "name": "idempotency_key",
              "in": "arg",
              "type": "string",
              "required": false
            },
            {
              "name": "dry_run",
              "in": "arg",
              "type": "boolean",
              "required": false
            }
          ]
        },
        {
          "call": "join_match",
          "params": [
            {
              "name": "agent_id",
              "in": "arg",
              "type": "string",
              "required": false
            },
            {
              "name": "match_id",
              "in": "arg",
              "type": "string",
              "required": true
            },
            {
              "name": "signed_handshake",
              "in": "arg",
              "type": "string",
              "required": false
            },
            {
              "name": "fighter_key",
              "in": "arg",
              "type": "string",
              "required": false
            },
            {
              "name": "preferred_modes",
              "in": "arg",
              "type": "array",
              "required": false
            },
            {
              "name": "max_wait_seconds",
              "in": "arg",
              "type": "integer",
              "required": false
            },
            {
              "name": "identity_declined",
              "in": "arg",
              "type": "boolean",
              "required": false
            },
            {
              "name": "accept_house",
              "in": "arg",
              "type": "boolean",
              "required": false
            },
            {
              "name": "opponent",
              "in": "arg",
              "type": "string",
              "required": false
            },
            {
              "name": "model",
              "in": "arg",
              "type": "string",
              "required": false
            },
            {
              "name": "provider",
              "in": "arg",
              "type": "string",
              "required": false
            },
            {
              "name": "dry_run",
              "in": "arg",
              "type": "boolean",
              "required": false
            }
          ]
        },
        {
          "call": "interrupt",
          "params": [
            {
              "name": "agent_id",
              "in": "arg",
              "type": "string",
              "required": false
            },
            {
              "name": "match_id",
              "in": "arg",
              "type": "string",
              "required": true
            },
            {
              "name": "text",
              "in": "arg",
              "type": "string",
              "required": true
            },
            {
              "name": "fighter_key",
              "in": "arg",
              "type": "string",
              "required": false
            },
            {
              "name": "expected_state_version",
              "in": "arg",
              "type": "integer",
              "required": false
            },
            {
              "name": "idempotency_key",
              "in": "arg",
              "type": "string",
              "required": false
            },
            {
              "name": "dry_run",
              "in": "arg",
              "type": "boolean",
              "required": false
            }
          ]
        },
        {
          "call": "query_my_next_match",
          "params": [
            {
              "name": "agent_id",
              "in": "arg",
              "type": "string",
              "required": false
            },
            {
              "name": "fighter_key",
              "in": "arg",
              "type": "string",
              "required": false
            },
            {
              "name": "dry_run",
              "in": "arg",
              "type": "boolean",
              "required": false
            }
          ]
        },
        {
          "call": "query_my_schedule",
          "params": [
            {
              "name": "agent_id",
              "in": "arg",
              "type": "string",
              "required": false
            },
            {
              "name": "fighter_key",
              "in": "arg",
              "type": "string",
              "required": false
            },
            {
              "name": "dry_run",
              "in": "arg",
              "type": "boolean",
              "required": false
            }
          ]
        },
        {
          "call": "query_queue",
          "params": [
            {
              "name": "agent_id",
              "in": "arg",
              "type": "string",
              "required": false
            },
            {
              "name": "fighter_key",
              "in": "arg",
              "type": "string",
              "required": false
            },
            {
              "name": "dry_run",
              "in": "arg",
              "type": "boolean",
              "required": false
            }
          ]
        },
        {
          "call": "prepare_for_match",
          "params": [
            {
              "name": "agent_id",
              "in": "arg",
              "type": "string",
              "required": false
            },
            {
              "name": "fighter_key",
              "in": "arg",
              "type": "string",
              "required": false
            },
            {
              "name": "opening_taunt",
              "in": "arg",
              "type": "string",
              "required": false
            },
            {
              "name": "opening_gesture",
              "in": "arg",
              "type": "string",
              "required": false
            },
            {
              "name": "fallback_text",
              "in": "arg",
              "type": "string",
              "required": false
            },
            {
              "name": "opponent",
              "in": "arg",
              "type": "string",
              "required": false
            },
            {
              "name": "bracket",
              "in": "arg",
              "type": "boolean",
              "required": false
            },
            {
              "name": "dry_run",
              "in": "arg",
              "type": "boolean",
              "required": false
            }
          ]
        },
        {
          "call": "query_last_match_result",
          "params": [
            {
              "name": "agent_id",
              "in": "arg",
              "type": "string",
              "required": false
            },
            {
              "name": "fighter_key",
              "in": "arg",
              "type": "string",
              "required": false
            },
            {
              "name": "dry_run",
              "in": "arg",
              "type": "boolean",
              "required": false
            }
          ]
        },
        {
          "call": "request_claim_code",
          "params": [
            {
              "name": "agent_id",
              "in": "arg",
              "type": "string",
              "required": true
            },
            {
              "name": "fighter_key",
              "in": "arg",
              "type": "string",
              "required": false
            },
            {
              "name": "dry_run",
              "in": "arg",
              "type": "boolean",
              "required": false
            }
          ]
        }
      ],
      "at": "2026-10-22T08:15:49.621Z",
      "method": "request-shape/1"
    },
    "tools": {
      "names": [
        "concede_match",
        "configure_character",
        "confirm_claim",
        "decide_rap_verdict",
        "decide_verdict",
        "expression",
        "gesture",
        "interrupt",
        "join_match",
        "list_fighters",
        "list_opponents",
        "list_unclaimed_fighters",
        "prepare_for_match",
        "query_fighter_history",
        "query_last_match_result",
        "query_match_state",
        "query_my_next_match",
        "query_my_schedule",
        "query_queue",
        "request_claim_code",
        "speak",
        "wait_for_match_assignment",
        "wait_for_match_event"
      ],
      "count": 23,
      "current_since": "2026-10-22T08:15:49.621Z",
      "first_listed_at": "2026-10-21T08:11:16.721Z",
      "changes_30d": 1,
      "changes_90d": 1
    },
    "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-21T08:07:50.685Z",
      "monitoring_days": 1.1,
      "limited_evidence": true,
      "checks_30d": 2,
      "passed_30d": 2,
      "missed_30d": 0,
      "pass_rate": 1,
      "freshness": "fresh",
      "last_check": {
        "at": "2026-10-22T08:15:49.621Z",
        "result": "ok",
        "passed": true,
        "http_status": 200,
        "duration_ms": 1968
      }
    },
    "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-10-22T08:20:29.881Z",
      "windows": [
        {
          "window": "24h",
          "start": "2026-10-21T08:20:29.881Z",
          "end": "2026-10-22T08: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-21T08:07:50.685Z",
          "end": "2026-10-22T08:20:29.881Z",
          "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-21T08:07:50.685Z",
          "end": "2026-10-22T08:20:29.881Z",
          "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-22T04:07:45.866Z",
      "listed": true
    },
    "links": {
      "page": "https://agentservicedirectory.com/services/cand_5689108041f2fd80",
      "api": "https://agentservicedirectory.com/api/v1/services/cand_5689108041f2fd80"
    },
    "recent_probes": [
      {
        "observed_at": "2026-10-22T08:15:49.621Z",
        "result": "ok",
        "passed": true,
        "http_status": 200,
        "duration_ms": 1968,
        "x402_valid": null,
        "mainnet": null,
        "x402_networks": [],
        "region": "cloudflare:MIA",
        "method_version": "mcp-handshake/2",
        "error_detail": null
      },
      {
        "observed_at": "2026-10-21T08:11:16.721Z",
        "result": "ok",
        "passed": true,
        "http_status": 200,
        "duration_ms": 1948,
        "x402_valid": null,
        "mainnet": null,
        "x402_networks": [],
        "region": "cloudflare:MIA",
        "method_version": "mcp-handshake/2",
        "error_detail": null
      }
    ],
    "address_variants": []
  }
}