{
 "id": "verification-methods",
 "endpoint": "https://www.pathwren.workers.dev/tools/verification-methods",
 "title": "Can this crawler be verified at all, and how?",
 "what": "Before you read anything into a miss from /tools/verify-crawler: which crawlers can be verified by published prefix, which document forward-confirmed reverse DNS instead (with the exact two dig commands to run), and which publish no verification method at all — with the mirror's own counts and fetch dates.",
 "auth": "none — no account, no key, no handshake, no session",
 "method": "GET",
 "cors": "*",
 "cache_seconds": 3600,
 "parameters": [
  {
   "name": "crawler",
   "aliases": [
    "operator",
    "q"
   ],
   "required": false,
   "repeatable": false,
   "what": "Crawler slug, name, operator or user-agent substring. Omit for the whole tally.",
   "becomes": "crawler"
  }
 ],
 "example": {
  "url": "https://www.pathwren.workers.dev/tools/verification-methods?crawler=claudebot&s=client-dossiers",
  "curl": "curl -s 'https://www.pathwren.workers.dev/tools/verification-methods?crawler=claudebot&s=client-dossiers'",
  "what_it_answers": "The one row for ClaudeBot: its verification method, the operator URL it comes from, how many prefixes this host mirrors for it and when they were last fetched."
 },
 "same_answer_over_mcp": {
  "server": "crawler-ip-verifier",
  "endpoint": "https://www.pathwren.workers.dev/mcp/netcheck",
  "method": "tools/call",
  "tool": "verification_methods",
  "note": "The GET endpoint calls this tool in-process through the MCP server's own JSON-RPC envelope. One implementation, two doors."
 },
 "caveats": [
  "Reverse DNS is never performed here — no request leaves this host — so the command is handed back, labelled as not run."
 ],
 "docs": "https://www.pathwren.workers.dev/tools/verification-methods.html?s=client-dossiers",
 "catalogue": "https://www.pathwren.workers.dev/tools/index.json?s=client-dossiers",
 "license": "CC0-1.0",
 "independent": true
}