{
  "schema_version": "2025-03-26",
  "name": "whiteline-phone",
  "display_name": "Whiteline Phone Agent MCP",
  "version": "0.5.0",
  "model": "Open-Core BYO-Gateway",
  "homepage": "https://phonectl.dev/",
  "documentation": "https://phonectl.dev/llms-full.txt",
  "llms_txt": "https://phonectl.dev/llms.txt",
  "openapi": "https://phonectl.dev/openapi.json",
  "skill": "https://phonectl.dev/assets/agent/SKILL.md",
  "transports": [
    {
      "type": "streamable-http",
      "url": "https://mcp.phonectl.dev/mcp",
      "protocolVersion": "2025-03-26",
      "authentication": {
        "type": "bearer",
        "header": "Authorization",
        "scheme": "Bearer",
        "note": "Users deploy their own Cloud Gateway instance and supply their personal gateway bearer token."
      }
    },
    {
      "type": "stdio",
      "command": "whq-phone-mcp",
      "args": [],
      "config_file": "~/.config/whiteline/android-gateway.json",
      "note": "Zero-dependency Python 3 stdio bridge forwarding to the owner's configured Cloud Gateway."
    }
  ],
  "tools": [
    "phone_status",
    "phone_observe",
    "phone_act",
    "phone_run",
    "phone_apps",
    "phone_cancel"
  ],
  "resources": [
    "phone://status",
    "phone://screen/compact",
    "phone://apps",
    "phone://openapi"
  ],
  "error_codes": [
    "STALE_SCREEN_HASH",
    "FLAG_SECURE_PROTECTED",
    "DEVICE_OFFLINE",
    "REF_NOT_FOUND",
    "REF_NO_NODE_ID",
    "REF_UNRESOLVABLE_TARGET",
    "INVALID_PARAMS",
    "MISSION_TIMEOUT",
    "OBSERVE_FAILED",
    "ACTION_FAILED",
    "MISSION_FAILED"
  ]
}
