{
  "resource": "https://account.cowelldesign.online/",
  "authorization_servers": ["https://account.cowelldesign.online"],
  "scopes_supported": ["read", "write", "publish"],
  "bearer_methods_supported": ["header"],
  "dpop_signing_alg_values_supported": ["ES256"],
  "gateway": {
    "endpoint": "https://account.cowelldesign.online/-/user/agent",
    "method": "POST",
    "description": "User-scoped Dynamic Workers gateway — submit sandboxed JS workers with capabilities baked to the caller's user_key. One invocation, scoped by identity. Sender-constrained tokens ONLY (RFC 9449): a plain Bearer is refused here and belongs on /mcp. A token is bound to a holder key at the moment it is minted and never after, so register with dpop_bound_access_tokens=true and send a DPoP proof on the POST /-/oauth/token that mints it.",
    "dpop_bound_access_tokens_required": true,
    "request": {
      "headers": { "Authorization": "DPoP <token>", "DPoP": "<compact ES256 proof>", "Content-Type": "application/json" },
      "body": { "code": "ES module string", "capabilities": ["<Binding:method>", "..."] }
    },
    "response": { "ok": true, "result": "<return value from run()>" }
  },
  "mcp": {
    "endpoint": "https://account.cowelldesign.online/mcp",
    "method": "POST",
    "transport": "streamable-http",
    "protocolVersions": ["2026-07-28", "2025-06-18"],
    "description": "Remote-MCP server — JSON-RPC 2.0 over Streamable HTTP, serving both protocol eras on one endpoint: declare 2026-07-28 in each request's _meta for the stateless revision (server/discover, subscriptions/listen), or open with initialize for the handshake revision. OAuth 2.1 Bearer auth for an unbound token; a DPoP-bound token is refused as Bearer and goes as `Authorization: DPoP <token>` with a fresh `DPoP` proof per call (`ath` required, no nonce). The curated tool catalog maps each tool to one user-scoped Durable Object RPC, gated by construct ownership.",
    "request": {
      "headers": { "Authorization": "Bearer <token>", "Content-Type": "application/json" }
    }
  }
}
