Tools & API Reference

Complete reference for all available MCP tools. Each tool provides specific browser automation capabilities.

Connection & Status

connectConnect to browser

Activate browser automation by connecting to the Chrome extension. Must be called before using any browser_ tools. After connecting, use browser_tabs to select or create tabs.

disconnectDisconnect from browser

Stop browser automation and close the connection to the Chrome extension. Returns server to passive mode where browser_ tools are unavailable.

statusConnection status

Check whether browser automation is currently active or passive. Shows if connect has been called and browser_ tools are available.

authManage authentication

Manage Blueprint MCP PRO authentication. Login to access unlimited browser tabs, logout to clear credentials, or check current authentication status.

Parameters
NameTypeDescription
actionrequiredenumAction to perform: login (authenticate and get PRO access), logout (clear tokens), status (check current auth state)

Tab Management

browser_tabsManage tabs

Manage browser tabs. IMPORTANT: Before performing any browser automation, you must first either connect to an existing tab (action='connect') or create a new tab (action='new'). Use action='list' to see available tabs, action='close' to close a tab, action='activate' to bring a tab to foreground.

Parameters
NameTypeDescription
actionrequiredenumOperation to perform
indexnumberTab index, used for connect/activate/close. If omitted for close, current tab is closed.
urlstringFor new action: URL to open in the new tab (default: about:blank)
stealthbooleanFor connect/new actions: Enable stealth mode to avoid bot detection (default: false). Stealth mode disables console logs but makes automation undetectable.

browser_navigateNavigate to a URL

Navigate the active browser tab to a specified URL. Requires browser_tabs connection. Waits for page load to complete.

Parameters
NameTypeDescription
urlrequiredstringThe URL to navigate to

browser_navigate_backGo back

Go back to the previous page in the active tab browser history. Equivalent to clicking the back button.

browser_reloadReload page

Reload the current page in the active tab. Useful after making changes or to get fresh data.

User Interaction

browser_handle_dialogHandle a dialog

Handle browser dialogs (alerts, confirms, prompts) in the active tab. Can accept or reject the dialog, and optionally provide text for prompts.

Parameters
NameTypeDescription
acceptrequiredbooleanWhether to accept the dialog.
promptTextstringThe text of the prompt in case of a prompt dialog.
includeSnapshotbooleanInclude page snapshot in response (default: false)

browser_fill_formFill form

Fill multiple form fields at once in the active tab. More efficient than typing into each field individually. Supports text boxes, checkboxes, radio buttons, dropdowns, and sliders.

Parameters
NameTypeDescription
fieldsrequiredarrayFields to fill in

browser_press_keyPress a key

Press a keyboard key on the currently focused element in the active tab. Useful for Enter, Tab, Arrow keys, etc. Requires browser_tabs connection.

Parameters
NameTypeDescription
keyrequiredstringName of the key to press or a character to generate, such as `ArrowLeft` or `a`
includeSnapshotbooleanInclude page snapshot in response (default: false)

browser_typeType text

Type text into an editable element in the active tab. Can submit forms by pressing Enter after typing. More reliable than pressing individual keys.

Parameters
NameTypeDescription
elementstringHuman-readable element description used to obtain permission to interact with the element
refstringExact target element reference from the page snapshot
selectorstringCSS selector (e.g., '#login-btn', '.submit-button')
xpathstringXPath selector (e.g., '//button[@id="login"]')
indexnumberWhich element to select when multiple match (0=first, 1=second, -1=last). Required if selector/xpath matches multiple elements.
textrequiredstringText to type into the element
submitbooleanWhether to submit entered text (press Enter after)
slowlybooleanWhether to type one character at a time. Useful for triggering key handlers in the page. By default entire text is filled in at once.
includeSnapshotbooleanInclude page snapshot in response (default: false)

browser_clickClick

Click on an element in the active tab. Can perform left, right, or double clicks with modifier keys. Specify element by selector, XPath, or text reference.

Parameters
NameTypeDescription
elementstringHuman-readable element description used to obtain permission to interact with the element
refstringExact target element reference from the page snapshot
selectorstringCSS selector (e.g., '#login-btn', '.submit-button')
xpathstringXPath selector (e.g., '//button[@id="login"]')
indexnumberWhich element to select when multiple match (0=first, 1=second, -1=last). Required if selector/xpath matches multiple elements.
doubleClickbooleanWhether to perform a double click instead of a single click
buttonenumButton to click, defaults to left
modifiersarrayModifier keys to press
includeSnapshotbooleanInclude page snapshot in response (default: false)

browser_dragDrag mouse

Perform drag and drop between two elements in the active tab. Useful for reordering lists or moving items between containers.

Parameters
NameTypeDescription
startElementstringHuman-readable source element description
startRefstringExact source element reference from the page snapshot
startSelectorstringCSS selector for source element
startXpathstringXPath selector for source element
endElementstringHuman-readable target element description
endRefstringExact target element reference from the page snapshot
endSelectorstringCSS selector for target element
endXpathstringXPath selector for target element
includeSnapshotbooleanInclude page snapshot in response (default: false)

browser_hoverHover mouse

Move mouse over an element in the active tab without clicking. Useful for revealing tooltips or triggering hover effects.

Parameters
NameTypeDescription
elementstringHuman-readable element description used to obtain permission to interact with the element
refstringExact target element reference from the page snapshot
selectorstringCSS selector (e.g., '#login-btn', '.submit-button')
xpathstringXPath selector (e.g., '//button[@id="login"]')
indexnumberWhich element to select when multiple match (0=first, 1=second, -1=last). Required if selector/xpath matches multiple elements.
includeSnapshotbooleanInclude page snapshot in response (default: false)

browser_select_optionSelect option

Select options in a native HTML <select> dropdown in the active tab. Only works with standard <select> elements, not custom dropdowns. Strings match both option values and labels. Supports multi-select.

Parameters
NameTypeDescription
elementstringHuman-readable element description used to obtain permission to interact with the element
refstringExact target element reference from the page snapshot
selectorstringCSS selector (e.g., '#login-btn', '.submit-button')
xpathstringXPath selector (e.g., '//button[@id="login"]')
indexnumberWhich element to select when multiple match (0=first, 1=second, -1=last). Required if selector/xpath matches multiple elements.
valuesrequiredarrayArray of values to select in the dropdown. This can be a single value or multiple values.
includeSnapshotbooleanInclude page snapshot in response (default: false)

Page Information

browser_console_messagesGet console messagesread-only

Get console messages (logs, warnings, errors) from the active browser tab. Supports filtering by error type, regex patterns, and limiting results. Useful for debugging and monitoring page behavior.

Parameters
NameTypeDescription
onlyErrorsbooleanOnly return error messages
filterstringRegular expression to filter messages
limitnumber | stringMaximum number of matching messages to return
directionenumReturn first or last matching messages (default: first)
beforenumber | stringNumber of lines to show before each match
afternumber | stringNumber of lines to show after each match

browser_locate_elementLocate elementread-only

Find element by coordinates (from screenshot) or by text content. Returns element details including selector, bounding box, and text.

Parameters
NameTypeDescription
xnumberX coordinate to find element at (use with y)
ynumberY coordinate to find element at (use with x)
textstringText content to search for in elements (partial match, case-insensitive)
exactbooleanWhen true, text must match exactly (case-sensitive). Default: false

browser_take_screenshotTake a screenshotread-only

Capture a screenshot of the active browser tab. Can screenshot the full page, visible viewport, or specific elements. Returns image data. Note: For interactive automation, use browser_snapshot instead as it provides element references.

Parameters
NameTypeDescription
typeenumImage format for the screenshot. Default is png.
filenamestringFile name to save the screenshot to. Defaults to `page-{timestamp}.{png|jpeg}` if not specified. Prefer relative file names to stay within the output directory.
elementstringHuman-readable element description used to obtain permission to screenshot the element. If not provided, the screenshot will be taken of viewport.
refstringExact target element reference from the page snapshot.
selectorstringCSS selector to screenshot a specific element (e.g., '.header', '#main-content').
xpathstringXPath selector to screenshot a specific element.
clipobjectCoordinates for clipping the screenshot to a specific region. Cannot be used with element/ref/selector or fullPage.
fullPagebooleanWhen true, takes a screenshot of the full scrollable page, instead of the currently visible viewport. Cannot be used with element screenshots.

browser_snapshotPage snapshotread-only

Capture an accessibility tree snapshot of the active tab DOM structure. Returns element hierarchy with selectors and text content. Use this instead of screenshots for automation tasks as it provides actionable element references.

browser_wait_forWait forread-only

Wait for specific conditions in the active tab before proceeding. Can wait for text to appear/disappear or wait a fixed time period. Useful for handling dynamic content loading and ensuring elements are ready.

Parameters
NameTypeDescription
timenumberThe time to wait in seconds
textstringThe text to wait for
textGonestringThe text to wait for to disappear
includeSnapshotbooleanInclude page snapshot in response (default: false)

Network & Debugging

browser_evaluateEvaluate JavaScript

Execute JavaScript code in the active browser tab and return the result. Can run code in page context or on specific elements. Useful for extracting data, modifying page state, or triggering custom functionality.

Parameters
NameTypeDescription
functionrequiredstring() => { /* code */ } or (element) => { /* code */ } when element is provided
elementstringHuman-readable element description used to obtain permission to interact with the element
refstringExact target element reference from the page snapshot
selectorstringCSS selector (e.g., '#login-btn', '.submit-button')
xpathstringXPath selector (e.g., '//button[@id="login"]')
includeSnapshotbooleanInclude page snapshot in response (default: false)

browser_network_requestsList network requestsread-only

Get all network requests (XHR, fetch, resources) made by the active tab since page load. Supports filtering by URL pattern and HTTP method. Useful for monitoring API calls and tracking data flow.

Parameters
NameTypeDescription
urlPatternstringFilter by URL pattern (substring match, case-insensitive)
methodenumFilter by HTTP method

browser_network_request_detailsGet request detailsread-only

Get detailed information about a specific network request by ID (from browser_network_requests)

Parameters
NameTypeDescription
requestIdrequirednumberRequest ID from browser_network_requests output
urlPatternstringURL pattern used in the original filter (required to match request ID)
methodenumHTTP method used in the original filter (required to match request ID)

Extensions & Advanced

browser_closeClose browserdestructive

Close the currently active browser tab. The tab must be connected first using browser_tabs. Useful for cleanup after completing automation tasks.

browser_resizeResize browser windowdestructive

Resize the currently active browser tab window to specific dimensions. Requires an active tab connection via browser_tabs.

Parameters
NameTypeDescription
widthrequirednumberWidth of the browser window
heightrequirednumberHeight of the browser window

browser_list_extensionsList Extensionsdestructive

List all unpacked (development) Chrome extensions

browser_reload_extensionsReload Extensionsdestructive

Reload a specific unpacked Chrome extension by name. Use this tool to reload an extension being developed or debugged after making code changes, without manually reloading via chrome://extensions.

Parameters
NameTypeDescription
extensionNamerequiredstringName of extension to reload (required)

browser_file_uploadUpload filesdestructive

Upload files to a file input element in the active tab. Provide absolute paths to files. Requires browser_tabs connection and a file input element to be present.

Parameters
NameTypeDescription
pathsarrayThe absolute paths to the files to upload. Can be single file or multiple files. If omitted, file chooser is cancelled.
includeSnapshotbooleanInclude page snapshot in response (default: false)