Skip to content

Core Tools (72)

Always enabled. No --caps flag needed.

Always enabled — no --caps flag needed. Covers the essential browser automation workflow: session management, navigation, screenshots, DOM, JavaScript evaluation, tabs, cookies, and utility tools.

Summary

Tool Parameters Description
wavexis_act instruction, session_id, max_retries?, value? Execute a natural language instruction on the current page (M1).
wavexis_activate_tab session_id, tab_id Focus (bring to front) a browser tab by its ID.
wavexis_annotated_screenshot session_id, selectors, format?, output_path? Capture a screenshot with numbered labels overlaid on elements.
wavexis_back session_id Navigate backward one step in the browser history.
wavexis_backends List installed browser backends and their versions without launching a browser.
wavexis_browser_version session_id?, backend? Query the active browser's version string via the selected backend.
wavexis_check selector, session_id Check a checkbox or radio button matching a CSS selector.
wavexis_click selector, session_id?, url?, button?, click_count?, wait_timeout?, headless?, backend? Click an element matching a CSS selector.
wavexis_close_page tab_id?, session_id Close a browser page/tab by target id, or the current page if omitted.
wavexis_close_tab session_id, tab_id Close a browser tab by its ID.
wavexis_console_clear session_id Clear all buffered console messages for the session.
wavexis_cookie_get name, domain?, path?, session_id Retrieve a single cookie by name (and optional domain/path) from the browser.
wavexis_cookie_list name?, domain?, path?, limit?, session_id List browser cookies with optional name, domain, and path filters.
wavexis_cookies_clear session_id Clear all cookies from the browser session.
wavexis_cookies_delete name, domain, session_id?, url?, wait_timeout?, headless?, backend? Delete cookies matching a name and domain in the browser.
wavexis_cookies_get session_id?, url?, wait_timeout?, headless?, backend? Retrieve all cookies for the current page context.
wavexis_cookies_set name, value, domain, path?, secure?, http_only?, same_site?, session_id?, url?, wait_timeout?, headless?, backend? Set a single cookie in the browser for the current page.
wavexis_dom_focus selector, session_id Focus an element matching a CSS selector.
wavexis_dom_get selector, session_id?, url?, outer?, wait_timeout?, headless?, backend? Retrieve the HTML of an element matching a CSS selector.
wavexis_dom_get_attr selector, name, session_id Read an attribute value from an element matching a CSS selector.
wavexis_dom_query selector, session_id?, url?, all?, limit?, offset?, wait_timeout?, headless?, backend? Query elements by CSS selector and return paginated metadata.
wavexis_dom_remove selector, session_id Remove an element matching a CSS selector from the DOM.
wavexis_dom_remove_attr selector, name, session_id Remove an attribute from an element matching a CSS selector.
wavexis_dom_scroll session_id, selector?, x?, y? Scroll to an element or by a pixel offset.
wavexis_dom_set_attr selector, name, value, session_id Set an attribute on an element matching a CSS selector.
wavexis_dom_snapshot session_id Capture a full DOM snapshot of the page including iframes and shadow roots.
wavexis_double_click selector, session_id?, url?, auto_wait?, wait_timeout?, headless?, backend? Double-click an element matching a CSS selector.
wavexis_drag source, target, session_id?, url?, wait_timeout?, headless?, backend? Drag an element from a source selector to a target selector.
wavexis_drop selector, data?, paths?, session_id?, url?, wait_timeout?, headless?, backend? Drop files or MIME-typed data onto an element via drag events.
wavexis_eval expression, session_id?, url?, await_promise?, wait_timeout?, headless?, backend? Evaluate a JavaScript expression in the browser context and return the result.
wavexis_fill selector, value, session_id?, url?, wait_timeout?, headless?, backend? Fill an input element with a value, replacing existing content.
wavexis_fill_form fields, session_id?, url?, wait_timeout?, headless?, backend? Fill multiple form fields in one call (convenience composite tool).
wavexis_find text, limit?, session_id Search the accessibility snapshot for nodes matching text or a regex pattern.
wavexis_find_by_text query, all?, session_id Find element selector(s) by visible text content without interacting.
wavexis_forward session_id Navigate forward one step in the browser history.
wavexis_get_config Return wavexis-mcp server configuration and available browser backends.
wavexis_hover selector, session_id?, url?, wait_timeout?, headless?, backend? Hover over an element matching a CSS selector.
wavexis_iframe_click session_id, iframe_selector, selector Click an element inside an iframe.
wavexis_iframe_eval session_id, iframe_selector, expression, await_promise? Evaluate a JavaScript expression inside an iframe.
wavexis_iframe_fill session_id, iframe_selector, selector, value Fill an input element inside an iframe with a value.
wavexis_invoke method, params?, session_id?, url?, output_path?, backend?, headless?, width?, height?, user_agent?, extra_headers?, proxy?, timeout?, user_data_dir?, browser_url?, remote_url?, stealth?, browser?, wait_strategy?, wait_selector?, wait_timeout? Invoke any wavexis backend method by name, the ultimate escape hatch.
wavexis_key_down key, code?, alt?, ctrl?, meta?, shift?, session_id Dispatch a raw keyDown event to the active page via CDP.
wavexis_key_press key, session_id Press a single keyboard key on the focused element.
wavexis_key_up key, code?, alt?, ctrl?, meta?, shift?, session_id Dispatch a raw keyUp event to the active page via CDP.
wavexis_list_tabs session_id List all open browser tabs in the session.
wavexis_mouse_drag_xy start_x, start_y, end_x, end_y, button?, steps?, session_id Drag the mouse from one screen coordinate to another via CDP mouse events.
wavexis_navigate url, session_id?, wait_strategy?, wait_selector?, wait_url_pattern?, wait_timeout?, headless?, backend? Navigate the browser to a URL with a configurable wait strategy.
wavexis_new_tab session_id, url? Create a new browser tab, optionally navigating to a URL.
wavexis_nl_click query, auto_wait?, session_id Click an element described in natural language.
wavexis_nl_fill query, value, auto_wait?, session_id Fill an element described in natural language with a value.
wavexis_page_pdf url?, session_id?, landscape?, display_header_footer?, print_background?, scale?, paper_width?, paper_height?, margin_top?, margin_bottom?, margin_left?, margin_right?, output_path?, wait_timeout?, headless?, backend? Generate a PDF via the low-level Page.printToPDF CDP method.
wavexis_page_snapshot url?, session_id?, format?, output_path?, wait_timeout?, headless?, backend? Capture the page as MHTML or a plain text document.
wavexis_pdf url?, session_id?, paper?, landscape?, margin?, no_header_footer?, media?, js?, output_path?, wait_timeout?, headless?, backend? Generate a PDF document from a web page.
wavexis_press_keys text, delay?, session_id Type a sequence of characters at the page level without targeting an element.
wavexis_reload session_id, ignore_cache? Reload the current page, optionally bypassing the cache.
wavexis_right_click selector, session_id?, url?, auto_wait?, wait_timeout?, headless?, backend? Right-click an element matching a CSS selector.
wavexis_scrape urls, session_id?, expression?, output_format?, selector?, wait_timeout?, headless?, backend?, limit?, offset? Scrape data from multiple URLs by evaluating a JS expression on each.
wavexis_screencast url?, session_id?, format?, quality?, max_width?, max_height?, duration?, interval?, output_dir?, wait_timeout?, headless?, backend? Capture a frame-by-frame screenshot sequence over a duration.
wavexis_screenshot url?, session_id?, full_page?, format?, quality?, selector?, js?, device?, output_path?, wait_strategy?, wait_selector?, wait_timeout?, headless?, width?, height?, backend? Capture a screenshot of a web page or matched element.
wavexis_select_option selector, value, session_id?, url?, wait_timeout?, headless?, backend? Select an option in a <select> element by value.
wavexis_session_close session_id Close a browser session and release all associated resources.
wavexis_session_info session_id Query metadata and current URL of an active browser session.
wavexis_session_open backend?, headless?, width?, height?, user_agent?, extra_headers?, proxy?, timeout?, user_data_dir?, browser_url?, remote_url?, stealth?, browser?, connect_existing? Launch a persistent browser session for multi-step workflows.
wavexis_set_files selector, files, session_id?, url?, wait_timeout?, headless?, backend? Upload files to a file input element (<input type="file">).
wavexis_shadow_click session_id, selectors Click an element inside a shadow DOM tree.
wavexis_shadow_eval session_id, selectors, expression, await_promise? Evaluate a JavaScript expression inside a shadow DOM tree.
wavexis_shadow_fill session_id, selectors, value Fill an input element inside a shadow DOM tree with a value.
wavexis_stop session_id Stop all pending navigations and resource loads in the session.
wavexis_tap selector, session_id?, url?, wait_timeout?, headless?, backend? Tap an element matching a CSS selector (touch-emulated click).
wavexis_type selector, text, session_id?, url?, delay?, wait_timeout?, headless?, backend? Type text into an element character by character with optional delay.
wavexis_uncheck selector, session_id Uncheck a checkbox matching a CSS selector by clicking it.
wavexis_wait session_id, strategy?, selector?, url_pattern?, timeout? Block until a page condition (load, selector, URL, network idle) is met.

Natural Language Interaction

wavexis_act

Execute a natural language instruction on the current page (M1).

Takes an a11y snapshot, matches the instruction to an element, and performs the detected action (click, type, fill, hover).

Args: input: Act parameters (instruction, session_id, max_retries).

Returns: JSON string with action, element, score, status.

Parameters:

Parameter Type Required Default Description
instruction string Yes Natural language instruction (e.g. 'click the login button')
session_id string Yes Active session ID from wavexis_session_open
max_retries integer No 3 Maximum number of retry attempts
value string No null Explicit text value for type/fill actions (overrides auto-extraction)

Tabs

wavexis_activate_tab

Focus (bring to front) a browser tab by its ID.

Use to switch the active tab before running navigation or interaction tools; use wavexis_list_tabs to obtain tab IDs first.

Side effects: Changes the browser's active tab; subsequent tool calls operate on the newly focused tab. Returns: JSON string with keys: 'status' ('ok'/'error').

Parameters:

Parameter Type Required Default Description
session_id string Yes Active session ID from wavexis_session_open
tab_id string Yes Tab ID to operate on

wavexis_close_tab

Close a browser tab by its ID.

Use to clean up tabs created with wavexis_new_tab; use wavexis_session_close to terminate the entire session instead.

Side effects: Closes the specified tab and discards its page state. Destructive — unsaved data in that tab is lost. Returns: JSON string with keys: 'status' ('ok'/'error').

Parameters:

Parameter Type Required Default Description
session_id string Yes Active session ID from wavexis_session_open
tab_id string Yes Tab ID to operate on

wavexis_list_tabs

List all open browser tabs in the session.

Use to discover tab IDs before calling wavexis_activate_tab or wavexis_close_tab; use wavexis_session_info for session-level metadata instead.

Side effects: None — read-only query of the browser's tab list. Returns: JSON string with keys: 'status' ('ok'/'error'), 'tabs' (list[dict]), 'count' (int).

Parameters:

Parameter Type Required Default Description
session_id string Yes Active session ID from wavexis_session_open

wavexis_new_tab

Create a new browser tab, optionally navigating to a URL.

Use to open a parallel page without losing the current tab; use wavexis_navigate to change the current tab's URL instead.

Side effects: Opens a new browser tab; if a URL is provided, issues a network request to it. Returns: JSON string with keys: 'status' ('ok'/'error'), 'tab_id' (str), 'url' (str).

Parameters:

Parameter Type Required Default Description
session_id string Yes Active session ID from wavexis_session_open
url string No "about:blank" URL for the new tab

Screenshot / PDF / Capture

wavexis_annotated_screenshot

Capture a screenshot with numbered labels overlaid on elements.

Injects overlay divs with labels @e1, @e2, ... on each element matching the provided selectors, captures a screenshot, removes the overlays, and returns the image plus a label-to-selector map.

Use wavexis_screenshot for plain captures, or this tool when visual element identification is needed for follow-up actions.

Side effects: uses an existing session backend, injects and removes temporary overlay DOM nodes; writes to output_path when given. Returns: JSON string with keys: 'status' ('ok'/'error'), 'format' (str), 'base64' (str) or 'path' (str), 'size_bytes' (int), 'labels' (dict[str, str]).

Parameters:

Parameter Type Required Default Description
session_id string Yes Active session ID from wavexis_session_open
selectors array Yes CSS selectors to annotate with labels
format string No "png" Image format: 'png' or 'jpeg'
output_path string No null File path to save the output. If omitted, a default path is used.

wavexis_page_pdf

Generate a PDF via the low-level Page.printToPDF CDP method.

Offers pixel-level control over paper size, margins, and print options beyond wavexis_pdf. Use wavexis_pdf for simpler high-level PDF generation.

Side effects: launches/acquires a browser backend, navigates to url if provided; writes to output_path when given. Returns: JSON string with keys: 'status' ('ok'/'error'), 'type' ('pdf'), 'base64' (str) or 'path' (str), 'size_bytes' (int).

Parameters:

Parameter Type Required Default Description
url string No null URL to navigate to (required without session_id)
session_id string No null Active session ID. If omitted, a stateless session is created for this call.
landscape boolean No false Use landscape orientation
display_header_footer boolean No false Include header and footer in PDF
print_background boolean No false Print background graphics in PDF
scale number No 1.0 Scale factor for PDF rendering
paper_width number No 8.5 Paper width in inches
paper_height number No 11.0 Paper height in inches
margin_top number No 0.4 Top margin in inches
margin_bottom number No 0.4 Bottom margin in inches
margin_left number No 0.4 Left margin in inches
margin_right number No 0.4 Right margin in inches
output_path string No null Path to save the decoded PDF bytes
wait_timeout integer No 30000 Timeout in ms for wait conditions
headless boolean No true Run browser in headless mode
backend string (cdp, bidi, auto) No "cdp" Backend: 'cdp', 'bidi', or 'auto'

wavexis_page_snapshot

Capture the page as MHTML or a plain text document.

Use wavexis_scrape for structured data extraction, or this tool when a full page archive (MHTML) or text dump is required.

Side effects: launches/acquires a browser backend, navigates to url if provided; writes to output_path when given. Returns: JSON string with keys: 'status' ('ok'/'error'), 'format' (str), 'content' (str) or 'path' (str), 'size_bytes' (int).

Parameters:

Parameter Type Required Default Description
url string No null URL to navigate to (required without session_id)
session_id string No null Active session ID. If omitted, a stateless session is created for this call.
format string (mhtml, text) No "mhtml" Output format: 'mhtml' or 'text'
output_path string No null File path to save the output. If omitted, a default path is used.
wait_timeout integer No 30000 Timeout in ms for wait conditions
headless boolean No true Run browser in headless mode
backend string (cdp, bidi, auto) No "cdp" Backend: 'cdp', 'bidi', or 'auto'

wavexis_pdf

Generate a PDF document from a web page.

Use wavexis_screenshot for image capture, or wavexis_page_pdf when pixel-level control over paper size and margins is required.

Side effects: launches/acquires a browser backend, navigates to url if provided, optionally evaluates js; writes to output_path when given. Returns: JSON string with keys: 'status' ('ok'/'error'), 'base64' (str) or 'path' (str), 'size_bytes' (int).

Parameters:

Parameter Type Required Default Description
url string No null URL to navigate to (required without session_id)
session_id string No null Active session ID. If omitted, a stateless session is created for this call.
paper string (a4, letter, legal, a3, a5) No "letter" Paper size: a4, letter, legal, a3, a5
landscape boolean No false Use landscape orientation
margin string No "0.4in" Page margin (e.g. '0.4in')
no_header_footer boolean No false Exclude header and footer from PDF
media string (print, screen) No "print" CSS media: 'print' or 'screen'
js string No null JavaScript to execute before the action
output_path string No null File path to save the output. If omitted, a default path is used.
wait_timeout integer No 30000 Timeout in ms for wait conditions
headless boolean No true Run browser in headless mode
backend string (cdp, bidi, auto) No "cdp" Backend: 'cdp', 'bidi', or 'auto'

wavexis_scrape

Scrape data from multiple URLs by evaluating a JS expression on each.

Use wavexis_eval for single-page evaluation, or wavexis_scrape when the same expression must run across many pages with pagination.

Side effects: launches/acquires a browser backend, navigates to each URL in urls sequentially, evaluates expression in every page context. Returns: JSON string with keys: 'status' ('ok'/'error'), 'results' (list[dict[str, Any]]), 'format' (str), 'count' (int), 'total' (int).

Parameters:

Parameter Type Required Default Description
urls array Yes URLs to scrape
session_id string No null Active session ID. If omitted, a stateless session is created for this call.
expression string No "document.title" JS expression to evaluate on each page
output_format string (json, csv) No "json" Output format: 'json' or 'csv'
selector string No null CSS selector to wait for
wait_timeout integer No 30000 Timeout in ms for wait conditions
headless boolean No true Run browser in headless mode
backend string (cdp, bidi, auto) No "cdp" Backend: 'cdp', 'bidi', or 'auto'
limit integer No 50 Max results to return
offset integer No 0 Skip first N results for pagination

wavexis_screencast

Capture a frame-by-frame screenshot sequence over a duration.

Use wavexis_screenshot for a single still image, or wavexis_screencast when animation or time-series capture is needed.

Side effects: launches/acquires a browser backend, navigates to url if provided, captures frames for duration; writes frame files to output_dir when given. Returns: JSON string with keys: 'status' ('ok'/'error'), 'frames' (list[str]) or 'dir' (str), 'count' (int).

Parameters:

Parameter Type Required Default Description
url string No null URL to navigate to (required without session_id)
session_id string No null Active session ID. If omitted, a stateless session is created for this call.
format string (png, jpeg) No "png" Image format: 'png' or 'jpeg'
quality integer No 80 JPEG quality 1-100 (ignored for PNG)
max_width integer No 1280 Maximum screenshot width in pixels
max_height integer No 800 Maximum screenshot height in pixels
duration number No 5.0 Capture duration in seconds
interval number No 1.0 Seconds between frames
output_dir string No null Save frames to directory
wait_timeout integer No 30000 Timeout in ms for wait conditions
headless boolean No true Run browser in headless mode
backend string (cdp, bidi, auto) No "cdp" Backend: 'cdp', 'bidi', or 'auto'

wavexis_screenshot

Capture a screenshot of a web page or matched element.

Use wavexis_pdf when a print-ready document is needed, or wavexis_annotated_screenshot when labelled element markers are required.

Side effects: launches/acquires a browser backend, navigates to url if provided, optionally evaluates js; writes to output_path when given. Returns: JSON string with keys: 'status' ('ok'/'error'), 'format' (str), 'base64' (str) or 'path' (str), 'size_bytes' (int).

Parameters:

Parameter Type Required Default Description
url string No null URL to navigate to (required without session_id)
session_id string No null Active session ID. If omitted, a stateless session is created for this call.
full_page boolean No true Capture full scrollable page
format string (png, jpeg) No "png" Image format: 'png' or 'jpeg'
quality integer No 80 JPEG quality (ignored for PNG)
selector string No null CSS selector — screenshot only this element
js string No null JavaScript to execute before screenshot
device string No null Device preset name (e.g. 'iphone-15')
output_path string No null Save to file instead of returning base64
wait_strategy string (load, domcontentloaded, networkidle, selector, url, none) No "load" Wait strategy: load, domcontentloaded, networkidle, selector, url, none
wait_selector string No null CSS selector to wait for (used when wait_strategy='selector')
wait_timeout integer No 30000 Timeout in ms for wait conditions
headless boolean No true Run browser in headless mode
width integer No 1280 Viewport width in pixels
height integer No 800 Viewport height in pixels
backend string (cdp, bidi, auto) No "cdp" Backend: 'cdp', 'bidi', or 'auto'

wavexis_back

Navigate backward one step in the browser history.

Use for history navigation instead of wavexis_navigate when the target is the previous page.

Side effects: Changes the active page to the previous history entry; may trigger network requests if that page was not cached. Returns: JSON string with keys: 'status' ('ok'/'error').

Parameters:

Parameter Type Required Default Description
session_id string Yes Active session ID

wavexis_forward

Navigate forward one step in the browser history.

Use after wavexis_back to restore a page; use wavexis_navigate for direct URL navigation instead.

Side effects: Changes the active page to the next history entry; may trigger network requests if that page was not cached. Returns: JSON string with keys: 'status' ('ok'/'error').

Parameters:

Parameter Type Required Default Description
session_id string Yes Active session ID

wavexis_navigate

Navigate the browser to a URL with a configurable wait strategy.

Use for direct URL navigation; use wavexis_back/wavexis_forward for history navigation, or wavexis_act for natural-language interaction instead.

Side effects: Issues a network request to the target URL and replaces the current page content; may auto-create a stateless session if session_id is omitted. Returns: JSON string with keys: 'status' ('ok'/'error'), 'url' (str).

Parameters:

Parameter Type Required Default Description
url string Yes URL to navigate to
session_id string No null Active session ID. If omitted, a stateless session is created for this call.
wait_strategy string (load, domcontentloaded, networkidle, selector, url, none) No "load" Wait strategy: load, domcontentloaded, networkidle, selector, url, none
wait_selector string No null CSS selector to wait for (used when wait_strategy='selector')
wait_url_pattern string No null URL pattern to wait for (used when wait_strategy='url')
wait_timeout integer No 30000 Timeout in ms for wait conditions
headless boolean No true Run browser in headless mode
backend string (cdp, bidi, auto) No "cdp" Backend: 'cdp', 'bidi', or 'auto'

wavexis_reload

Reload the current page, optionally bypassing the cache.

Use to refresh stale content or retry a failed load; use wavexis_navigate to go to a different URL instead.

Side effects: Re-issues network requests for the current page and its resources; discards in-memory page state. Returns: JSON string with keys: 'status' ('ok'/'error').

Parameters:

Parameter Type Required Default Description
session_id string Yes Active session ID from wavexis_session_open
ignore_cache boolean No false Bypass cache on reload

wavexis_stop

Stop all pending navigations and resource loads in the session.

Use when a page load is hanging or no longer needed; use wavexis_wait to wait for a load to complete instead.

Side effects: Aborts in-flight network requests and pending navigations; the page is left in its current partial state. Returns: JSON string with keys: 'status' ('ok'/'error').

Parameters:

Parameter Type Required Default Description
session_id string Yes Active session ID

wavexis_wait

Block until a page condition (load, selector, URL, network idle) is met.

Use after wavexis_navigate when the wait strategy was 'none', or to wait for dynamic content; use wavexis_stop to cancel a load instead.

Side effects: None — read-only polling with no page mutations; blocks the tool call up to the configured timeout. Returns: JSON string with keys: 'status' ('ok'/'error'), 'elapsed_ms' (int).

Parameters:

Parameter Type Required Default Description
session_id string Yes Active session ID from wavexis_session_open
strategy string (load, domcontentloaded, networkidle, selector, url, none) No "load" load, domcontentloaded, networkidle, selector, url, none
selector string No null CSS selector to target an element
url_pattern string No null URL pattern to wait for (used when strategy='url')
timeout integer No 30000 Operation timeout in ms

Utility

wavexis_backends

List installed browser backends and their versions without launching a browser.

Use wavexis_browser_version instead when you need the version of a specific running session's backend.

Side effects: None; queries the local filesystem only. Returns: JSON string with keys: 'status' ('ok'/'error'), 'backends' (dict), 'available' (list[str]).

Parameters:

This tool takes no parameters.

wavexis_browser_version

Query the active browser's version string via the selected backend.

Use wavexis_backends instead when you need a list of all installed backends without launching a browser.

Side effects: Acquires (and may launch) a browser backend, then releases it. Returns: JSON string with keys: 'status' ('ok'/'error'), 'version' (str), 'backend' (str).

Parameters:

Parameter Type Required Default Description
session_id string No null Active session ID. If omitted, a stateless session is created for this call.
backend string (cdp, bidi, auto) No "cdp" Backend: 'cdp', 'bidi', or 'auto'

wavexis_invoke

Invoke any wavexis backend method by name, the ultimate escape hatch.

Use a dedicated MCP tool (e.g. wavexis_act, wavexis_navigate) instead when one exists for the desired action; this tool exposes the full AbstractBackend API (e.g. page_print_to_pdf, perf_trace, runtime_evaluate, pwa_install) for methods without a wrapper.

Side effects: May launch an ephemeral browser, navigate to a URL, and execute arbitrary backend methods; potentially destructive. Returns: JSON string with keys: 'status' ('ok'/'error'), 'type' (str), and either 'result' (any), 'base64' (str), or 'path' (str) depending on output.

Parameters:

Parameter Type Required Default Description
method string Yes Backend method name (snake_case), e.g. 'page_print_to_pdf' or 'runtime_evaluate'.
params object No Keyword arguments for the method. For methods that expect a single dataclass parameter (e.g. 'pdf'), pass the datacla...
session_id string No null Existing session ID. If omitted, an ephemeral browser is launched and closed automatically.
url string No null URL to navigate to before invoking the method.
output_path string No null If the method returns bytes, save to this path instead of base64.
backend string No "cdp" Backend type for ephemeral sessions: 'cdp', 'bidi', or 'auto'.
headless boolean No true Run browser in headless mode
width integer No 1280 Viewport width in pixels
height integer No 800 Viewport height in pixels
user_agent string No null Custom User-Agent string
extra_headers object No Extra HTTP headers to send
proxy string No null Proxy server URL (e.g. http://host:port)
timeout integer No 30000 Operation timeout in ms
user_data_dir string No null Persistent Chrome user data directory
browser_url string No null WebSocket URL of an existing browser (e.g. ws://localhost:9222)
remote_url string No null Cloud browser WebSocket URL
stealth boolean No false Enable anti-bot stealth mode
browser string (chrome, firefox) No "chrome" Browser engine for BiDi backend: 'chrome' or 'firefox'.
wait_strategy string (load, domcontentloaded, networkidle, selector, url, none) No "load" Wait strategy: load, domcontentloaded, networkidle, selector, url, none
wait_selector string No null CSS selector to wait for (used when wait_strategy='selector')
wait_timeout integer No 30000 Timeout in ms for wait conditions

Input

wavexis_check

Check a checkbox or radio button matching a CSS selector.

Use wavexis_uncheck to uncheck a checkbox or wavexis_click for generic element activation.

Side effects: Clicks the target checkbox/radio, toggling its checked state and firing change events. Returns: JSON string with keys: 'status' ('ok'/'error'), 'checked' (bool, the element's checked state after the action). On error also 'error', 'tool', 'type', 'message', 'suggestion' (all str).

Parameters:

Parameter Type Required Default Description
selector string Yes CSS selector for checkbox/radio
session_id string Yes Active session ID from wavexis_session_open

wavexis_click

Click an element matching a CSS selector.

Use wavexis_double_click for double clicks, wavexis_right_click for context menus, or wavexis_nl_click when you only have a text description.

Side effects: Triggers a click event on the target element, which may submit forms, toggle controls, or navigate the page. Returns: JSON string with keys: 'status' ('ok'/'error'). On error also 'error', 'tool', 'type', 'message', 'suggestion' (all str).

Parameters:

Parameter Type Required Default Description
selector string Yes CSS selector for element to click
session_id string No null Active session ID. If omitted, a stateless session is created for this call.
url string No null URL to navigate to (required without session_id)
button string (left, right, middle) No "left" left, right, middle
click_count integer No 1 Number of clicks to perform
wait_timeout integer No 30000 Timeout in ms for wait conditions
headless boolean No true Run browser in headless mode
backend string (cdp, bidi, auto) No "cdp" Backend: 'cdp', 'bidi', or 'auto'

wavexis_double_click

Double-click an element matching a CSS selector.

Use wavexis_click for single clicks or wavexis_nl_click when you only have a natural language description of the element.

Side effects: Fires two rapid click events on the element, which may open files, edit cells, or trigger application-specific actions. Returns: JSON string with keys: 'status' ('ok'/'error'). On error also 'error', 'tool', 'type', 'message', 'suggestion' (all str).

Parameters:

Parameter Type Required Default Description
selector string Yes CSS selector for element to double-click
session_id string No null Active session ID. If omitted, a stateless session is created for this call.
url string No null URL to navigate to (required without session_id)
auto_wait boolean No true Wait for the element before clicking
wait_timeout integer No 30000 Timeout in ms for wait conditions
headless boolean No true Run browser in headless mode
backend string (cdp, bidi, auto) No "cdp" Backend: 'cdp', 'bidi', or 'auto'

wavexis_drag

Drag an element from a source selector to a target selector.

Use wavexis_drop when you need to drop arbitrary MIME data or files onto an element rather than dragging an existing DOM element.

Side effects: Performs a drag-and-drop operation between two elements, firing drag/dragstart/dragend and drop events. Returns: JSON string with keys: 'status' ('ok'/'error'). On error also 'error', 'tool', 'type', 'message', 'suggestion' (all str).

Parameters:

Parameter Type Required Default Description
source string Yes CSS selector for drag source
target string Yes CSS selector for drop target
session_id string No null Active session ID. If omitted, a stateless session is created for this call.
url string No null URL to navigate to (required without session_id)
wait_timeout integer No 30000 Timeout in ms for wait conditions
headless boolean No true Run browser in headless mode
backend string (cdp, bidi, auto) No "cdp" Backend: 'cdp', 'bidi', or 'auto'

wavexis_drop

Drop files or MIME-typed data onto an element via drag events.

Use wavexis_set_files for standard <input type="file"> uploads or wavexis_drag for dragging an existing DOM element to another element.

Side effects: Dispatches dragEnter, dragOver, and drop events with the supplied data and files onto the target element's coordinates. Returns: JSON string with keys: 'status' ('ok'/'error'), 'selector' (str), 'x' (float), 'y' (float), 'data_types' (list[str]), 'files' (list[str]). On error also 'error', 'tool', 'type', 'message', 'suggestion' (all str).

Parameters:

Parameter Type Required Default Description
selector string Yes CSS selector for the drop target
data object No MIME type to string payload map
paths array No Absolute file paths to drop
session_id string No null Active session ID. If omitted, a stateless session is created for this call.
url string No null URL to navigate to (required without session_id)
wait_timeout integer No 30000 Timeout in ms for wait conditions
headless boolean No true Run browser in headless mode
backend string (cdp, bidi, auto) No "cdp" Backend: 'cdp', 'bidi', or 'auto'

wavexis_fill

Fill an input element with a value, replacing existing content.

Use wavexis_type for character-by-character typing with key events, or wavexis_fill_form when filling multiple fields in one call.

Side effects: Clears the target input/textarea and sets its value to the provided string, firing a single input event. Returns: JSON string with keys: 'status' ('ok'/'error'). On error also 'error', 'tool', 'type', 'message', 'suggestion' (all str).

Parameters:

Parameter Type Required Default Description
selector string Yes CSS selector for the target element
value string Yes Value to fill (replaces existing content)
session_id string No null Active session ID. If omitted, a stateless session is created for this call.
url string No null URL to navigate to (required without session_id)
wait_timeout integer No 30000 Timeout in ms for wait conditions
headless boolean No true Run browser in headless mode
backend string (cdp, bidi, auto) No "cdp" Backend: 'cdp', 'bidi', or 'auto'

wavexis_fill_form

Fill multiple form fields in one call (convenience composite tool).

Use wavexis_fill for a single field or wavexis_type when per-keystroke events are required.

Side effects: Clears and sets the value of each field in the provided list, firing input events on every targeted element. Returns: JSON string with keys: 'status' ('ok'/'error'), 'fields_filled' (int, number of fields successfully filled). On error also 'error', 'tool', 'type', 'message', 'suggestion' (all str).

Parameters:

Parameter Type Required Default Description
fields array Yes Form fields to fill
session_id string No null Active session ID. If omitted, a stateless session is created for this call.
url string No null URL to navigate to (required without session_id)
wait_timeout integer No 30000 Timeout in ms for wait conditions
headless boolean No true Run browser in headless mode
backend string (cdp, bidi, auto) No "cdp" Backend: 'cdp', 'bidi', or 'auto'

wavexis_find_by_text

Find element selector(s) by visible text content without interacting.

Use this to locate elements before calling wavexis_click or wavexis_fill when you know the visible text but not the CSS selector.

Side effects: None — this is a read-only lookup that does not modify the page or interact with any element. Returns: JSON string with keys: 'selector' (str, first match) when all=False, or 'selectors' (list[str]) and 'count' (int) when all=True. On error also 'error', 'tool', 'type', 'message', 'suggestion' (all str).

Parameters:

Parameter Type Required Default Description
query string Yes Text to search for in visible page content
all boolean No false Return all matches (True) or first match (False)
session_id string Yes Active session ID from wavexis_session_open

wavexis_hover

Hover over an element matching a CSS selector.

Use wavexis_click to actually activate an element; hover only moves the cursor without clicking.

Side effects: Moves the mouse cursor over the target element, firing mouseover/mouseenter events that may reveal tooltips or menus. Returns: JSON string with keys: 'status' ('ok'/'error'). On error also 'error', 'tool', 'type', 'message', 'suggestion' (all str).

Parameters:

Parameter Type Required Default Description
selector string Yes CSS selector for the target element
session_id string No null Active session ID. If omitted, a stateless session is created for this call.
url string No null URL to navigate to (required without session_id)
wait_timeout integer No 30000 Timeout in ms for wait conditions
headless boolean No true Run browser in headless mode
backend string (cdp, bidi, auto) No "cdp" Backend: 'cdp', 'bidi', or 'auto'

wavexis_key_press

Press a single keyboard key on the focused element.

Use wavexis_type for typing full strings or wavexis_fill for setting field values without individual key events.

Side effects: Dispatches a keydown/keypress/keyup sequence for the given key on whatever element currently has focus. Returns: JSON string with keys: 'status' ('ok'/'error'). On error also 'error', 'tool', 'type', 'message', 'suggestion' (all str).

Parameters:

Parameter Type Required Default Description
key string Yes Key to press (e.g. 'Enter', 'Tab', 'Escape', 'a')
session_id string Yes Active session ID from wavexis_session_open

wavexis_nl_click

Click an element described in natural language.

Use wavexis_click when you already know the CSS selector, or wavexis_nl_fill to fill a field described in natural language.

Side effects: Locates the best-matching element via text/semantic matching and triggers a click event on it. Returns: JSON string with keys: 'status' ('ok'/'error'). On error also 'error', 'tool', 'type', 'message', 'suggestion' (all str).

Parameters:

Parameter Type Required Default Description
query string Yes Natural language description of the element to click
auto_wait boolean No true Wait for element to be ready before clicking
session_id string Yes Active session ID from wavexis_session_open

wavexis_nl_fill

Fill an element described in natural language with a value.

Use wavexis_fill when you already know the CSS selector, or wavexis_nl_click to click an element described in natural language.

Side effects: Locates the best-matching element via text/semantic matching, clears it, and sets its value to the provided string. Returns: JSON string with keys: 'status' ('ok'/'error'). On error also 'error', 'tool', 'type', 'message', 'suggestion' (all str).

Parameters:

Parameter Type Required Default Description
query string Yes Natural language description of the element to fill
value string Yes Value to fill
auto_wait boolean No true Wait for element to be ready before filling
session_id string Yes Active session ID from wavexis_session_open

wavexis_right_click

Right-click an element matching a CSS selector.

Use wavexis_click for standard left clicks or wavexis_double_click for double clicks.

Side effects: Fires a contextmenu event on the element, typically opening a context menu in the browser. Returns: JSON string with keys: 'status' ('ok'/'error'). On error also 'error', 'tool', 'type', 'message', 'suggestion' (all str).

Parameters:

Parameter Type Required Default Description
selector string Yes CSS selector for element to right-click
session_id string No null Active session ID. If omitted, a stateless session is created for this call.
url string No null URL to navigate to (required without session_id)
auto_wait boolean No true Wait for the element before clicking
wait_timeout integer No 30000 Timeout in ms for wait conditions
headless boolean No true Run browser in headless mode
backend string (cdp, bidi, auto) No "cdp" Backend: 'cdp', 'bidi', or 'auto'

wavexis_select_option

Select an option in a <select> element by value.

Use wavexis_fill for text inputs or wavexis_click for custom dropdown widgets that are not native <select> elements.

Side effects: Changes the selected option of the <select> element, firing change and input events. Returns: JSON string with keys: 'status' ('ok'/'error'). On error also 'error', 'tool', 'type', 'message', 'suggestion' (all str).

Parameters:

Parameter Type Required Default Description
selector string Yes CSS selector for
value string Yes Option value to select
session_id string No null Active session ID. If omitted, a stateless session is created for this call.
url string No null URL to navigate to (required without session_id)
wait_timeout integer No 30000 Timeout in ms for wait conditions
headless boolean No true Run browser in headless mode
backend string (cdp, bidi, auto) No "cdp" Backend: 'cdp', 'bidi', or 'auto'

wavexis_set_files

Upload files to a file input element (<input type="file">).

Use wavexis_drop when you need to simulate drag-and-drop of files or MIME data onto a non-file-input element.

Side effects: Sets the selected files on the target file input element, firing change events that typically trigger upload logic. Returns: JSON string with keys: 'status' ('ok'/'error'). On error also 'error', 'tool', 'type', 'message', 'suggestion' (all str).

Parameters:

Parameter Type Required Default Description
selector string Yes CSS selector for element
files array Yes Absolute file paths to upload
session_id string No null Active session ID. If omitted, a stateless session is created for this call.
url string No null URL to navigate to (required without session_id)
wait_timeout integer No 30000 Timeout in ms for wait conditions
headless boolean No true Run browser in headless mode
backend string (cdp, bidi, auto) No "cdp" Backend: 'cdp', 'bidi', or 'auto'

wavexis_tap

Tap an element matching a CSS selector (touch-emulated click).

Use wavexis_click for mouse-based clicking on desktop contexts or wavexis_nl_click when you only have a natural language description.

Side effects: Dispatches a touch tap on the target element, which may toggle controls or trigger navigation on mobile-optimised pages. Returns: JSON string with keys: 'status' ('ok'/'error'). On error also 'error', 'tool', 'type', 'message', 'suggestion' (all str).

Parameters:

Parameter Type Required Default Description
selector string Yes CSS selector for element to tap
session_id string No null Active session ID. If omitted, a stateless session is created for this call.
url string No null URL to navigate to (required without session_id)
wait_timeout integer No 30000 Timeout in ms for wait conditions
headless boolean No true Run browser in headless mode
backend string (cdp, bidi, auto) No "cdp" Backend: 'cdp', 'bidi', or 'auto'

wavexis_type

Type text into an element character by character with optional delay.

Use wavexis_fill instead when you want to set a field's value instantly without per-keystroke delays, or wavexis_fill_form for multiple fields.

Side effects: Appends characters to the target input/textarea element, firing keydown/keypress/input/keyup events per character. Returns: JSON string with keys: 'status' ('ok'/'error'). On error also 'error', 'tool', 'type', 'message', 'suggestion' (all str).

Parameters:

Parameter Type Required Default Description
selector string Yes CSS selector for the target element
text string Yes Text to type character by character
session_id string No null Active session ID. If omitted, a stateless session is created for this call.
url string No null URL to navigate to (required without session_id)
delay integer No 0 Delay between keystrokes in ms
wait_timeout integer No 30000 Timeout in ms for wait conditions
headless boolean No true Run browser in headless mode
backend string (cdp, bidi, auto) No "cdp" Backend: 'cdp', 'bidi', or 'auto'

wavexis_uncheck

Uncheck a checkbox matching a CSS selector by clicking it.

Use wavexis_check to check a checkbox or wavexis_click for generic element activation.

Side effects: Clicks the target checkbox to toggle it to unchecked, firing change events. Returns: JSON string with keys: 'status' ('ok'/'error'). On error also 'error', 'tool', 'type', 'message', 'suggestion' (all str).

Parameters:

Parameter Type Required Default Description
selector string Yes CSS selector for checkbox/radio
session_id string Yes Active session ID from wavexis_session_open

Page Actions

wavexis_close_page

Close a browser page/tab by target id, or the current page if omitted.

This tool mirrors Playwright's API for compatibility; use it to free resources. The session itself remains active for other tabs.

Side effects: Closes the specified browser target; destructive and irreversible. Returns: JSON string with keys: 'status' ('ok'/'error'), 'closed' (str).

Parameters:

Parameter Type Required Default Description
tab_id string No null Optional tab/target id; current page is closed if omitted
session_id string Yes Active session ID from wavexis_session_open

wavexis_console_clear

Clear all buffered console messages for the session.

This tool mirrors Playwright's API for compatibility; use it before capturing a fresh set of console logs to avoid stale entries.

Side effects: Resets the session's in-memory console message buffer. Returns: JSON string with keys: 'status' ('ok'/'error').

Parameters:

Parameter Type Required Default Description
session_id string Yes Active session ID from wavexis_session_open

Retrieve a single cookie by name (and optional domain/path) from the browser.

Use wavexis_cookie_list instead when you need multiple cookies or broad filtering.

Side effects: None; reads cookie state from the browser session. Returns: JSON string with keys: 'status' ('ok'/'error'), 'cookie' (dict|null).

Parameters:

Parameter Type Required Default Description
name string Yes Cookie name to retrieve
domain string No null Optional domain filter
path string No null Optional path filter
session_id string Yes Active session ID from wavexis_session_open

List browser cookies with optional name, domain, and path filters.

Use wavexis_cookie_get instead when you need a single named cookie.

Side effects: None; reads cookie state from the browser session. Returns: JSON string with keys: 'status' ('ok'/'error'), 'cookies' (list[dict]), 'count' (int).

Parameters:

Parameter Type Required Default Description
name string No null Optional cookie name filter
domain string No null Optional domain filter
path string No null Optional path filter
limit integer No 100 Maximum number of cookies to return
session_id string Yes Active session ID from wavexis_session_open

wavexis_find

Search the accessibility snapshot for nodes matching text or a regex pattern.

Use wavexis_act instead for natural-language element interaction; this tool mirrors Playwright's snapshot search for compatibility.

Side effects: None; fetches and searches the a11y tree read-only. Returns: JSON string with keys: 'status' ('ok'/'error'), 'matches' (list[dict]), 'count' (int).

Parameters:

Parameter Type Required Default Description
text string Yes Text or regex to search in the a11y snapshot
limit integer No 20 Maximum number of matches to return
session_id string Yes Active session ID from wavexis_session_open

wavexis_get_config

Return wavexis-mcp server configuration and available browser backends.

Use wavexis_backends instead when you only need the backend list; this tool additionally exposes the server name for introspection.

Side effects: None; queries the local filesystem only. Returns: JSON string with keys: 'status' ('ok'/'error'), 'name' (str), 'available_backends' (list[str]), 'backend_versions' (dict).

Parameters:

This tool takes no parameters.

wavexis_key_down

Dispatch a raw keyDown event to the active page via CDP.

This tool mirrors Playwright's API for compatibility; use wavexis_press_keys for typing text and wavexis_act for natural-language interaction.

Side effects: Sends a key-down input event to the browser page. Returns: JSON string with keys: 'status' ('ok'/'error').

Parameters:

Parameter Type Required Default Description
key string Yes Key to press (e.g. 'Enter', 'a', 'ArrowLeft')
code string No "" Optional physical key code
alt boolean No false Whether to hold the Alt key
ctrl boolean No false Whether to hold the Ctrl key
meta boolean No false Whether to hold the Meta (Cmd) key
shift boolean No false Whether to hold the Shift key
session_id string Yes Active session ID from wavexis_session_open

wavexis_key_up

Dispatch a raw keyUp event to the active page via CDP.

This tool mirrors Playwright's API for compatibility; pair with wavexis_key_down for low-level key control, or use wavexis_press_keys for simple text entry.

Side effects: Sends a key-up input event to the browser page. Returns: JSON string with keys: 'status' ('ok'/'error').

Parameters:

Parameter Type Required Default Description
key string Yes Key to release (e.g. 'Enter', 'a')
code string No "" Optional physical key code
alt boolean No false Whether to hold the Alt key
ctrl boolean No false Whether to hold the Ctrl key
meta boolean No false Whether to hold the Meta (Cmd) key
shift boolean No false Whether to hold the Shift key
session_id string Yes Active session ID from wavexis_session_open

wavexis_mouse_drag_xy

Drag the mouse from one screen coordinate to another via CDP mouse events.

This tool mirrors Playwright's API for compatibility; use wavexis_act instead for natural-language drag interactions.

Side effects: Dispatches mouseMoved, mousePressed, and mouseReleased events to the browser page; may trigger page interactions. Returns: JSON string with keys: 'status' ('ok'/'error').

Parameters:

Parameter Type Required Default Description
start_x number Yes Starting X coordinate in CSS pixels
start_y number Yes Starting Y coordinate in CSS pixels
end_x number Yes Ending X coordinate in CSS pixels
end_y number Yes Ending Y coordinate in CSS pixels
button string (left, right, middle) No "left" Mouse button to use
steps integer No 5 Number of intermediate steps for smooth dragging
session_id string Yes Active session ID from wavexis_session_open

wavexis_press_keys

Type a sequence of characters at the page level without targeting an element.

Use wavexis_key_down/wavexis_key_up instead for individual modifier-key control, or wavexis_act for natural-language typing.

Side effects: Dispatches keyDown/keyUp pairs to the browser page; no network requests. Returns: JSON string with keys: 'status' ('ok'/'error'), 'typed' (str).

Parameters:

Parameter Type Required Default Description
text string Yes Text/keys to type character by character
delay integer No 0 Delay between keystrokes in milliseconds
session_id string Yes Active session ID from wavexis_session_open

Cookies

wavexis_cookies_clear

Clear all cookies from the browser session.

Use wavexis_cookies_delete to remove a specific cookie, or wavexis_cookies_get to inspect cookies before clearing.

Side effects: uses an existing session backend, destructively removes all cookies from the browser. Returns: JSON string with keys: 'status' ('ok'/'error').

Parameters:

Parameter Type Required Default Description
session_id string Yes Active session ID from wavexis_session_open

wavexis_cookies_delete

Delete cookies matching a name and domain in the browser.

Use wavexis_cookies_clear to remove all cookies, or wavexis_cookies_set to add a new cookie.

Side effects: launches/acquires a browser backend, navigates to url if provided, destructively removes matching cookies from browser state. Returns: JSON string with keys: 'status' ('ok'/'error').

Parameters:

Parameter Type Required Default Description
name string Yes Name of the item
domain string Yes Cookie domain
session_id string No null Active session ID. If omitted, a stateless session is created for this call.
url string No null URL to navigate to (required without session_id)
wait_timeout integer No 30000 Timeout in ms for wait conditions
headless boolean No true Run browser in headless mode
backend string (cdp, bidi, auto) No "cdp" Backend: 'cdp', 'bidi', or 'auto'

wavexis_cookies_get

Retrieve all cookies for the current page context.

Use wavexis_cookies_set to add a cookie, or wavexis_cookies_clear to remove all cookies at once.

Side effects: launches/acquires a browser backend, navigates to url if provided; read-only with respect to browser state. Returns: JSON string with keys: 'status' ('ok'/'error'), 'cookies' (list[dict]), 'count' (int).

Parameters:

Parameter Type Required Default Description
session_id string No null Active session ID. If omitted, a stateless session is created for this call.
url string No null URL to navigate to (required without session_id)
wait_timeout integer No 30000 Timeout in ms for wait conditions
headless boolean No true Run browser in headless mode
backend string (cdp, bidi, auto) No "cdp" Backend: 'cdp', 'bidi', or 'auto'

wavexis_cookies_set

Set a single cookie in the browser for the current page.

Use wavexis_cookies_get to read cookies, or wavexis_cookies_delete to remove a specific cookie.

Side effects: launches/acquires a browser backend, navigates to url if provided, mutates browser cookie state. Returns: JSON string with keys: 'status' ('ok'/'error').

Parameters:

Parameter Type Required Default Description
name string Yes Name of the item
value string Yes Value to set
domain string Yes Cookie domain
path string No "/" Cookie path
secure boolean No true Whether the cookie is Secure
http_only boolean No false Whether the cookie is HttpOnly
same_site string (Strict, Lax, None) No "Lax" SameSite attribute: Strict, Lax, or None
session_id string No null Active session ID. If omitted, a stateless session is created for this call.
url string No null URL to navigate to (required without session_id)
wait_timeout integer No 30000 Timeout in ms for wait conditions
headless boolean No true Run browser in headless mode
backend string (cdp, bidi, auto) No "cdp" Backend: 'cdp', 'bidi', or 'auto'

DOM

wavexis_dom_focus

Focus an element matching a CSS selector.

Use wavexis_dom_click instead when the intent is to activate a control rather than focus it.

Side effects: Mutates DOM focus state; may trigger focus event handlers on the element. Returns: JSON string with keys: 'status' ('ok'/'error').

Parameters:

Parameter Type Required Default Description
selector string Yes CSS selector for the target element
session_id string Yes Active session ID from wavexis_session_open

wavexis_dom_get

Retrieve the HTML of an element matching a CSS selector.

Use wavexis_dom_query instead when you need element metadata rather than raw HTML.

Side effects: None; read-only. May navigate to url if provided. Returns: JSON string with keys: 'status' ('ok'/'error'), 'html' (str), 'selector' (str).

Parameters:

Parameter Type Required Default Description
selector string Yes CSS selector for the target element
session_id string No null Active session ID. If omitted, a stateless session is created for this call.
url string No null URL to navigate to (required without session_id)
outer boolean No true Return outerHTML (True) or innerHTML (False)
wait_timeout integer No 30000 Timeout in ms for wait conditions
headless boolean No true Run browser in headless mode
backend string (cdp, bidi, auto) No "cdp" Backend: 'cdp', 'bidi', or 'auto'

wavexis_dom_get_attr

Read an attribute value from an element matching a CSS selector.

Use wavexis_dom_set_attr to write an attribute value.

Side effects: None; read-only. Returns: JSON string with keys: 'status' ('ok'/'error'), 'value' (str|None), 'selector' (str), 'name' (str).

Parameters:

Parameter Type Required Default Description
selector string Yes CSS selector for the target element
name string Yes Name of the item
session_id string Yes Active session ID from wavexis_session_open

wavexis_dom_query

Query elements by CSS selector and return paginated metadata.

Use wavexis_dom_get instead when you only need the raw HTML of a single element.

Side effects: None; read-only. May navigate to url if provided. Returns: JSON string with keys: 'status' ('ok'/'error'), 'elements' (list[dict]), 'count' (int), 'total' (int).

Parameters:

Parameter Type Required Default Description
selector string Yes CSS selector for the target element
session_id string No null Active session ID. If omitted, a stateless session is created for this call.
url string No null URL to navigate to (required without session_id)
all boolean No false Return all matches (True) or first only (False)
limit integer No 50 Max elements to return when all=True
offset integer No 0 Skip first N elements for pagination
wait_timeout integer No 30000 Timeout in ms for wait conditions
headless boolean No true Run browser in headless mode
backend string (cdp, bidi, auto) No "cdp" Backend: 'cdp', 'bidi', or 'auto'

wavexis_dom_remove

Remove an element matching a CSS selector from the DOM.

Use wavexis_dom_set_attr to hide an element (e.g. display:none) instead of deleting it.

Side effects: Destructive; permanently removes the matched element from the live DOM. Returns: JSON string with keys: 'status' ('ok'/'error').

Parameters:

Parameter Type Required Default Description
selector string Yes CSS selector for the target element
session_id string Yes Active session ID from wavexis_session_open

wavexis_dom_remove_attr

Remove an attribute from an element matching a CSS selector.

Use wavexis_dom_set_attr to restore or change an attribute instead of removing it.

Side effects: Mutates the DOM by deleting the attribute from the matched element. Returns: JSON string with keys: 'status' ('ok'/'error').

Parameters:

Parameter Type Required Default Description
selector string Yes CSS selector for the target element
name string Yes Name of the item
session_id string Yes Active session ID from wavexis_session_open

wavexis_dom_scroll

Scroll to an element or by a pixel offset.

Use wavexis_dom_get to inspect an element's position before scrolling by offset.

Side effects: Changes the page scroll position; may trigger scroll event listeners. Returns: JSON string with keys: 'status' ('ok'/'error').

Parameters:

Parameter Type Required Default Description
session_id string Yes Active session ID from wavexis_session_open
selector string No null CSS selector to scroll to
x integer No 0 Horizontal scroll offset
y integer No 0 Vertical scroll offset

wavexis_dom_set_attr

Set an attribute on an element matching a CSS selector.

Use wavexis_dom_get_attr to read the current value before setting.

Side effects: Mutates the DOM by writing the attribute on the matched element. Returns: JSON string with keys: 'status' ('ok'/'error').

Parameters:

Parameter Type Required Default Description
selector string Yes CSS selector for the target element
name string Yes Attribute name
value string Yes Attribute value
session_id string Yes Active session ID from wavexis_session_open

wavexis_dom_snapshot

Capture a full DOM snapshot of the page including iframes and shadow roots.

Use wavexis_dom_query for lightweight element metadata instead of a full snapshot.

Side effects: None; read-only. Returns: JSON string with keys: 'status' ('ok'/'error'), 'snapshot' (dict), 'documents' (int).

Parameters:

Parameter Type Required Default Description
session_id string Yes Active session ID from wavexis_session_open

wavexis_iframe_click

Click an element inside an iframe.

Use wavexis_iframe_eval only for custom JS that click/fill cannot express.

Side effects: Triggers click handlers and may navigate or mutate the iframe DOM. Returns: JSON string with keys: 'status' ('ok'/'error').

Parameters:

Parameter Type Required Default Description
session_id string Yes Active session ID from wavexis_session_open
iframe_selector string Yes CSS selector for the