resize
Adjust browser viewport dimensions to specified width and height for precise web automation, testing, or scraping tasks using Playwright integration.
Instructions
Resize the browser viewport
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| height | Yes | ||
| width | Yes |
Implementation Reference
- src/controllers/playwright.ts:708-720 (handler)Core implementation of the resize tool handler in PlaywrightController class. Resizes the browser viewport using page.setViewportSize and includes error handling.async resize(width: number, height: number): Promise<void> { try { if (!this.isInitialized() || !this.state.page) { throw new Error('Browser not initialized'); } this.log('Resizing viewport', { width, height }); await this.state.page.setViewportSize({ width, height }); this.log('Resize complete'); } catch (error: any) { console.error('Resize error:', error); throw new BrowserError('Failed to resize viewport', 'Check if width and height are positive numbers'); } }
- src/server.ts:359-370 (schema)Tool schema definition including name, description, and inputSchema for width and height parameters.const RESIZE_TOOL: Tool = { name: "resize", description: "Resize the browser viewport", inputSchema: { type: "object", properties: { width: { type: "number" }, height: { type: "number" } }, required: ["width", "height"] } };
- src/server.ts:541-542 (registration)Registration of the resize tool in the tools object passed to MCP Server capabilities.waitForSelector: WAIT_FOR_SELECTOR_TOOL, resize: RESIZE_TOOL,
- src/server.ts:873-884 (handler)MCP callTool request handler case for 'resize' that validates arguments and delegates to PlaywrightController.resize.case 'resize': { if (typeof args.width !== 'number' || typeof args.height !== 'number') { return { content: [{ type: "text", text: "Width and height are required" }], isError: true }; } await playwrightController.resize(args.width, args.height); return { content: [{ type: "text", text: "Browser resized successfully" }] }; }