puppeteer_click
Automate browser interactions by clicking a specified webpage element using its CSS selector. Facilitates precise page element interaction within the Puppeteer MCP Server.
Instructions
Click an element on the page
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| selector | Yes | CSS selector for element to click |
Implementation Reference
- src/tools/handlers.ts:141-159 (handler)The main handler logic for the puppeteer_click tool, which clicks on the element matching the provided CSS selector using Puppeteer's page.click method.case "puppeteer_click": try { await page.click(args.selector); return { content: [{ type: "text", text: `Clicked: ${args.selector}`, }], isError: false, }; } catch (error) { return { content: [{ type: "text", text: `Failed to click ${args.selector}: ${(error as Error).message}`, }], isError: true, }; }
- src/tools/definitions.ts:48-58 (schema)Input schema definition for the puppeteer_click tool, specifying the required 'selector' parameter.{ name: "puppeteer_click", description: "Click an element on the page", inputSchema: { type: "object", properties: { selector: { type: "string", description: "CSS selector for element to click" }, }, required: ["selector"], }, },
- src/server.ts:34-41 (registration)Registration of the MCP tool request handlers: ListTools returns the TOOLS array (including puppeteer_click schema), and CallTool dispatches to handleToolCall based on tool name.// Setup tool handlers server.setRequestHandler(ListToolsRequestSchema, async () => ({ tools: TOOLS, })); server.setRequestHandler(CallToolRequestSchema, async (request) => handleToolCall(request.params.name, request.params.arguments ?? {}, state, server) );