getPageTitle
Extract the title of the current web page during browser automation, useful for web scraping, testing, and verifying page content.
Instructions
Get the title of the current page
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Implementation Reference
- src/controllers/playwright.ts:293-306 (handler)The core handler function in PlaywrightController that retrieves and returns the title of the current browser page using page.title().async getPageTitle(): Promise<string> { try { if (!this.isInitialized()) { throw new Error('Browser not initialized'); } this.log('Getting page title'); const title = await this.state.page?.title(); this.log('Page title retrieved:', title); return title || ''; } catch (error: any) { console.error('Get page title error:', error); throw new BrowserError('Failed to get page title', 'Check if the page is loaded'); } }
- src/server.ts:103-111 (schema)Tool schema definition including name, description, and input schema (no input parameters required). This is used for MCP tool registration.const GET_PAGE_TITLE_TOOL: Tool = { name: "getPageTitle", description: "Get the title of the current page", inputSchema: { type: "object", properties: {}, required: [] } };
- src/server.ts:514-553 (registration)Registration of the getPageTitle tool in the MCP server's tools dictionary, which is passed to server capabilities.const tools = { openBrowser: OPEN_BROWSER_TOOL, navigate: NAVIGATE_TOOL, type: TYPE_TOOL, click: CLICK_TOOL, moveMouse: MOVE_MOUSE_TOOL, scroll: SCROLL_TOOL, screenshot: SCREENSHOT_TOOL, getPageSource: GET_PAGE_SOURCE_TOOL, getPageText: GET_PAGE_TEXT_TOOL, getPageTitle: GET_PAGE_TITLE_TOOL, getPageUrl: GET_PAGE_URL_TOOL, getScripts: GET_SCRIPTS_TOOL, getStylesheets: GET_STYLESHEETS_TOOL, getMetaTags: GET_META_TAGS_TOOL, getLinks: GET_LINKS_TOOL, getImages: GET_IMAGES_TOOL, getForms: GET_FORMS_TOOL, getElementContent: GET_ELEMENT_CONTENT_TOOL, getElementHierarchy: GET_ELEMENT_HIERARCHY_TOOL, executeJavaScript: EXECUTE_JAVASCRIPT_TOOL, goForward: GO_FORWARD_TOOL, hover: HOVER_TOOL, dragAndDrop: DRAG_AND_DROP_TOOL, selectOption: SELECT_OPTION_TOOL, pressKey: PRESS_KEY_TOOL, waitForText: WAIT_FOR_TEXT_TOOL, waitForSelector: WAIT_FOR_SELECTOR_TOOL, resize: RESIZE_TOOL, handleDialog: HANDLE_DIALOG_TOOL, getConsoleMessages: GET_CONSOLE_MESSAGES_TOOL, getNetworkRequests: GET_NETWORK_REQUESTS_TOOL, uploadFiles: UPLOAD_FILES_TOOL, evaluateWithReturn: EVALUATE_WITH_RETURN_TOOL, takeScreenshot: TAKE_SCREENSHOT_TOOL, mouseMove: MOUSE_MOVE_TOOL, mouseClick: MOUSE_CLICK_TOOL, mouseDrag: MOUSE_DRAG_TOOL, closeBrowser: CLOSE_BROWSER_TOOL };
- src/server.ts:693-698 (registration)Dispatch/execution handler in the MCP callTool request handler that invokes the Playwright controller's getPageTitle method and returns the result.case 'getPageTitle': { const title = await playwrightController.getPageTitle(); return { content: [{ type: "text", text: title }] }; }