playwright_fill
Automate web form filling by specifying a CSS selector and input value using browser automation capabilities within the Playwright MCP Server.
Instructions
fill out an input field
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| selector | Yes | CSS selector for input field | |
| value | Yes | Value to fill |
Implementation Reference
- src/tools/browser/interaction.ts:91-102 (handler)FillTool class with execute method implementing the core logic of playwright_fill: waits for selector and fills the input field with the provided value using Playwright's page.fill().export class FillTool extends BrowserToolBase { /** * Execute the fill tool */ async execute(args: any, context: ToolContext): Promise<ToolResponse> { return this.safeExecute(context, async (page) => { await page.waitForSelector(args.selector); await page.fill(args.selector, args.value); return createSuccessResponse(`Filled ${args.selector} with: ${args.value}`); }); } }
- src/tools.ts:149-160 (schema)Input schema definition for the playwright_fill tool, specifying selector and value parameters.{ name: "playwright_fill", description: "fill out an input field", inputSchema: { type: "object", properties: { selector: { type: "string", description: "CSS selector for input field" }, value: { type: "string", description: "Value to fill" }, }, required: ["selector", "value"], }, },
- src/toolHandler.ts:493-494 (registration)Dispatch case in the main tool handler that routes playwright_fill calls to the FillTool.execute method.case "playwright_fill": return await fillTool.execute(args, context);
- src/toolHandler.ts:324-324 (registration)Instantiation of the FillTool instance used for handling playwright_fill.if (!fillTool) fillTool = new FillTool(server);
- src/tools.ts:456-456 (registration)Inclusion of playwright_fill in the BROWSER_TOOLS array, which triggers browser context setup."playwright_fill",