Skip to content

Actions

Kelly Ferrone edited this page Sep 15, 2026 · 12 revisions

Actions

Every action is an MCP tool and an HTTP endpoint with the same parameters. A test fails the build if one exists without the other.

Browser actions

Everything you can do to a page.

Tool Endpoint Does
open_session POST /browser Open this session's browser, or pick up the one it was using.
current_session GET /browser What this session is, and whether it holds a browser.
navigate POST /browser/navigate Go to a URL. Returns the resulting URL and page title.
interact POST /browser/interact/{action} Perform a mouse action on an element.
drag POST /browser/drag Drag one element onto another, or by an offset in pixels.
write POST /browser/write Type text into an input, textarea or contenteditable.
press_key POST /browser/press-key Press a key, at an element or wherever focus currently is.
extract POST /browser/extract Read an element's visible text and innerHTML.
assert POST /browser/assert Assert that the page is what you expect, with JavaScript that must return true.
outline POST /browser/outline Map what is on the page: every element worth acting on, with a selector for it and whether it can actually be used.
screenshot POST /browser/screenshot Capture a PNG of the page and return it as an image you can see.
save_pdf POST /browser/pdf Print the current page to PDF and keep it with the session's files.
execute_script POST /browser/script Run JavaScript in the page and return its result.
frame POST /browser/frame Move into an iframe, or back out of it.
dialog POST /browser/dialog Answer a native alert, confirm or prompt dialog.
resize POST /browser/resize Resize the browser window.
upload_file POST /browser/upload Attach a file to a file input.
end_browser DELETE /browser Quit the browser, keeping the session and its context.

Flows

A sequence of the actions above, saved under a name and run in one call. See Flows for what a flow document looks like.

Tool Endpoint Does
list_flows GET /flows Every flow this session can run.
get_flow GET /flows/{name} One saved flow, with its steps.
flow_schema GET /schemas/flow The shape of a flow document.
save_flow PUT /flows/{name} Create or replace a flow.
run_flow POST /flows/{name}/runs Run a saved flow.
delete_flow DELETE /flows/{name} Delete one of this session's flows.

Files

What a session has produced, and how to keep one past the browser that made it. See Files.

Tool Endpoint Does
session_files GET /files Every file this session has.
keep_file PUT /files/{name}/kept Keep one download beyond its browser.

Every call names its session — an X-Session-Key header or ?session= on the URL. There is no session id anywhere; see Sessions.


Installing · Deployment · Administration

Clone this wiki locally