Skip to main content
Glama

browser_element_is_displayed

Check if a web element is visible on the page using locator strategies like ID, CSS, or XPath to verify element display status for automated testing.

Instructions

Checks if an element is displayed

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
byYesLocator strategy to find element
timeoutNoMaximum time to wait for element in milliseconds
valueYesValue for the locator strategy

Implementation Reference

  • Registration of the 'browser_element_is_displayed' tool, including inline handler function that uses ElementService to check if the element is displayed.
    server.tool( 'browser_element_is_displayed', 'Checks if an element is displayed', { ...locatorSchema }, async ({ by, value, timeout = 15000 }) => { try { const driver = stateManager.getDriver(); const elementService = new ElementService(driver); const isDisplayed = await elementService.isElementDisplayed({ by, value, timeout, }); return { content: [{ type: 'text', text: `Element is displayed: ${isDisplayed}` }], }; } catch (e) { return { content: [ { type: 'text', text: `Error checking element display status: ${(e as Error).message}`, }, ], }; } } );
  • Core handler logic in ElementService.isElementDisplayed: waits for element, calls Selenium's isDisplayed() on it, returns false on error.
    async isElementDisplayed(params: LocatorParams): Promise<boolean> { try { const element = await this.findElement(params); return element.isDisplayed(); } catch { return false; } }
  • locatorSchema defines the input parameters (by, value, timeout) used by the tool.
    export const locatorSchema = { by: z .enum(['id', 'css', 'xpath', 'name', 'tag', 'class', 'link', 'partialLink']) .describe('Locator strategy to find element'), value: z.string().describe('Value for the locator strategy'), timeout: z.number().optional().describe('Maximum time to wait for element in milliseconds'), };
  • findElement helper method used by isElementDisplayed to locate the element using LocatorFactory.
    async findElement(params: LocatorParams): Promise<WebElement> { const locator = LocatorFactory.createLocator(params.by, params.value); return this.driver.wait(until.elementLocated(locator), params.timeout || 15000); }

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/pshivapr/selenium-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server