{
 "protocol": "x-hc-draft",
 "versions": [
  {
   "version": "0.1",
   "status": "draft"
  }
 ],
 "api_base": "https://api.person.tools",
 "mcp": "https://api.person.tools/mcp",
 "openapi": "https://api.person.tools/openapi.json",
 "jwks_uri": "https://api.person.tools/.well-known/jwks.json",
 "mcp_protocol_versions": [
  "2026-07-28",
  "2025-11-25",
  "2025-06-18",
  "2025-03-26",
  "2024-11-05"
 ],
 "kinds": [
  "listen",
  "watch",
  "view",
  "play",
  "compare",
  "answer"
 ],
 "pools": [
  "simulated",
  "panel"
 ],
 "features": [
  "keyless",
  "url_content",
  "outcome",
  "panels"
 ],
 "profiles": [
  "x-hc-draft/fair-call/0.1"
 ],
 "screening_policy": "https://person.tools/policy",
 "test_keys": "https://api.person.tools/v1/keys",
 "privacy_floor": 20,
 "pay_floor_usd_per_hour": "18.00",
 "limits": {
  "max_people": 100,
  "max_deadline_minutes": 10080,
  "max_wait_seconds": 25,
  "stop_minimum_usd": "0.25"
 },
 "retention": {
  "recordings_days": 90,
  "responses_days": 395,
  "records_days": 30
 },
 "test_money": true,
 "ext": {
  "person.tools": {
   "status": "preview: simulated people for everyone; real calls by invitation; all money is test money",
   "names": {
    "network": "person.tools",
    "standard": "the Ahoy Protocol",
    "tool": "ask_people",
    "domain": "person.tools"
   },
   "wire_note": "The wire name is a placeholder until the standard is final; it changes once, then never.",
   "what_you_pay": "Always within max_total_usd: people who finished, at the quoted pay; people who stopped, for their time; each fee on those amounts; nothing for people never rung. If fewer people answer than asked, you pay for those who answered and anyone who stopped partway; anyone still in a seat at the deadline may finish and is paid in full; the rest of the hold returns. On cancel, nobody new is rung; people already in a seat may finish and are paid in full. A person who takes longer than estimated is topped up to the floor from the reserve; past the reserve the operator bears it; never above max_total_usd. The unused hold returns to the balance when the call closes, and the result says how much.",
   "mcp_protocol_versions": [
    "2026-07-28",
    "2025-11-25",
    "2025-06-18",
    "2025-03-26",
    "2024-11-05"
   ],
   "no_key": "quotes and simulated calls work without a key",
   "build": "20261115T062933Z-api"
  }
 }
}