playwright_evaluate
Execute JavaScript code directly in the browser console to automate interactions, extract data, or modify web page elements during browser automation sessions.
Instructions
Execute JavaScript in the browser console
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| script | Yes | JavaScript code to execute |
Implementation Reference
- src/playwright_server/server.py:260-268 (handler)The EvaluateToolHandler class that executes the playwright_evaluate tool by running JavaScript on the page using page.evaluate(script).class EvaluateToolHandler(ToolHandler): async def handle(self, name: str, arguments: dict | None) -> list[types.TextContent | types.ImageContent | types.EmbeddedResource]: if not self._sessions: return [types.TextContent(type="text", text="No active session. Please create a new session first.")] session_id = list(self._sessions.keys())[-1] page = self._sessions[session_id]["page"] script = arguments.get("script") result = await page.evaluate(script) return [types.TextContent(type="text", text=f"Evaluated script, result: {result}")]
- JSON Schema definition for the playwright_evaluate tool inputs.types.Tool( name="playwright_evaluate", description="Execute JavaScript in the browser console", inputSchema={ "type": "object", "properties": { "script": {"type": "string", "description": "JavaScript code to execute"} }, "required": ["script"] } ),
- src/playwright_server/server.py:339-339 (registration)Registration of the EvaluateToolHandler in the tool_handlers dictionary used by the call_tool handler."playwright_evaluate": EvaluateToolHandler(),