{
  "name": "browser_click",
  "description": "Perform click on a web page. Supports single/double click, different mouse buttons, modifier keys, position offsets, and hold duration.",
  "arguments": {
    "type": "object",
    "properties": {
      "element": {
        "type": "string",
        "description": "Human-readable element description used to obtain permission to interact with the element"
      },
      "ref": {
        "type": "string",
        "description": "Exact target element reference from the page snapshot"
      },
      "doubleClick": {
        "type": "boolean",
        "description": "Whether to perform a double click instead of a single click"
      },
      "button": {
        "type": "string",
        "enum": [
          "left",
          "right",
          "middle"
        ],
        "description": "Mouse button to click. Defaults to \"left\"."
      },
      "modifiers": {
        "type": "array",
        "items": {
          "type": "string",
          "enum": [
            "Control",
            "Shift",
            "Alt",
            "Meta",
            "ControlOrMeta"
          ]
        },
        "description": "Modifier keys to hold during click. \"ControlOrMeta\" uses Ctrl on Windows/Linux and Cmd on Mac."
      },
      "offsetX": {
        "type": "number",
        "description": "Horizontal offset from element's left edge in pixels. If omitted, clicks at horizontal center."
      },
      "offsetY": {
        "type": "number",
        "description": "Vertical offset from element's top edge in pixels. If omitted, clicks at vertical center."
      },
      "holdDurationMs": {
        "type": "number",
        "description": "Duration to hold the mouse button down before releasing, in milliseconds. Useful for long-press interactions. Defaults to 0 (immediate release)."
      },
      "viewId": {
        "type": "string",
        "description": "Target browser tab ID. If omitted, uses the last interacted tab."
      }
    },
    "required": [
      "element",
      "ref"
    ]
  }
}