Skip to main content
Glama

browser_click

Click web page elements using CSS selectors to automate browser interactions and perform actions like button presses or link navigation.

Instructions

Click an element on the page using CSS selector

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
selectorYesCSS selector for element to click

Implementation Reference

  • The main handler for the 'browser_click' tool. It uses Playwright's page.locator(selector).click() with fallback for strict mode violations by clicking the first matching element if multiple are found.
    case ToolName.BrowserClick: try { await page.locator(args.selector).click(); return { content: [{ type: "text", text: `Clicked: ${args.selector}`, }], isError: false, }; } catch (error) { if((error as Error).message.includes("strict mode violation")) { console.log("Strict mode violation, retrying on first element..."); try { await page.locator(args.selector).first().click(); return { content: [{ type: "text", text: `Clicked: ${args.selector}`, }], isError: false, }; } catch (error) { return { content: [{ type: "text", text: `Failed (twice) to click ${args.selector}: ${(error as Error).message}`, }], isError: true, }; } } return { content: [{ type: "text", text: `Failed to click ${args.selector}: ${(error as Error).message}`, }], isError: true, }; }
  • index.ts:61-71 (registration)
    Tool registration in the TOOLS array, including name, description, and input schema requiring a CSS selector.
    { name: ToolName.BrowserClick, description: "Click an element on the page using CSS selector", inputSchema: { type: "object", properties: { selector: { type: "string", description: "CSS selector for element to click" }, }, required: ["selector"], }, },
  • Input schema definition for the browser_click tool, specifying the required 'selector' parameter.
    inputSchema: { type: "object", properties: { selector: { type: "string", description: "CSS selector for element to click" }, }, required: ["selector"], },
  • Enum defining ToolName.BrowserClick as 'browser_click', used throughout for tool identification.
    enum ToolName { BrowserNavigate = "browser_navigate", BrowserScreenshot = "browser_screenshot", BrowserClick = "browser_click", BrowserClickText = "browser_click_text", BrowserFill = "browser_fill", BrowserSelect = "browser_select", BrowserSelectText = "browser_select_text", BrowserHover = "browser_hover", BrowserHoverText = "browser_hover_text", BrowserEvaluate = "browser_evaluate" }

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Automata-Labs-team/MCP-Server-Playwright'

If you have feedback or need assistance with the MCP directory API, please join our Discord server