Tools
All 27 MCP tools Deputy gives your agent, what each one does, and its arguments.
The list never changes as you browse, so your agent's context stays flat. The typed path is the default and the cheapest; the visual and low-level tools are there for tasks that need them, and their descriptions tell your agent when.
| Group | Tools |
|---|---|
| Act through typed tools | browser_capabilities · browser_invoke · delegate_goal · task_status · answer_task |
| Read without looking | browser_ask · browser_read · browser_extract · browser_find · browser_downloads |
| Act on anything | browser_act · browser_scroll · browser_drag · browser_upload · browser_dialog · browser_fill · browser_click |
| Navigate | browser_navigate · browser_tabs · browser_wait |
| See and debug | browser_screenshot · browser_look · browser_inspect · browser_console · browser_network · browser_resize · browser_eval |
How your agent gets them
- Loaded up front:
browser_navigate,browser_invoke,browser_act,browser_find,browser_read,browser_askandbrowser_screenshot. Clients that defer MCP tools behind a search, such as Claude Code, load these seven straight away, because nearly every task needs them and each search costs a turn. - Found by search: the other 20 carry search hints, so one search finds them.
- Read-only: the tools that only read (
browser_capabilities,browser_read,browser_ask,browser_find,browser_inspect,browser_extract,browser_console,browser_network,browser_screenshot,browser_look,browser_downloadsandtask_status) are marked read-only for your client. - Hidden when switched off: tools you switch off on the setup page disappear from your agent's list at once (Settings).
Every tool that works on a tab takes an optional tabId; without one, it uses the active tab.
Act through typed tools
browser_capabilities
The full contract of every open tab: each form as a typed tool with its JSON Schema, what its fields currently hold, and the buttons and links with refs. Long pages return a window of 25 links and the true total.
| Argument | |
|---|---|
actionQuery | Only buttons and links whose label contains this text |
actionLimit | How many to return (default 25) |
actionOffset | How many to skip, to page through a long list |
browser_invoke
Calls a page tool that browser_capabilities listed, with arguments matching its schema. It fills, and where allowed submits, the real form in your logged-in browser. A form that changes something asks first (Before it submits).
| Argument | |
|---|---|
tool | The tool's name, exactly as listed |
args | Arguments matching its inputSchema |
delegate_goal
Hands Deputy a goal in plain language. Deputy's planner chooses a tool on the tab and its arguments, and calls it. Argument: goal. See Delegating a goal.
task_status
Returns a delegated task by taskId: its state, steps, and result or error.
answer_task
Resumes a task that stopped for a person, a confirmation or a sign-in now done in the browser. Arguments: taskId, answer.
Read without looking
browser_ask
Answers a question about a tab in a sentence; the page never enters your agent's context. Without a working model, returns the page's passages most relevant to the question instead. See Reading pages.
browser_read
The page as plain text. maxChars caps it: 6,000 by default, up to 40,000.
browser_extract
A table or a repeated list as JSON rows, or the page's links. kind: auto (default), table, list or links; limit rows (default 50); scope with ref or selector.
browser_find
Finds elements by text, role or selector, and returns refs with their label, state and value. Reaches inside open and closed shadow roots and off-screen elements. Also exact, includeHidden, and limit (default 20).
browser_downloads
Files the browser downloaded. action: list shows recent downloads, wait waits for one just started by a click (timeoutMs, default 30000), and read returns a finished download by id (the newest without one): text files as text, PDFs as extracted text, others as their path, type and size.
Act on anything
browser_act
Does one thing to an element, by ref or selector. action: click, double_click, right_click, hover, focus, type, press, check, uncheck, select, clear or scroll_into_view.
| Argument | |
|---|---|
value | The text to type, or the option to select |
keys | For press, such as Enter or Shift+Tab |
append | For type: add to the text instead of replacing it |
acceptDialog, dialogText | Accept the confirm or prompt this action opens, and what to type into a prompt |
steps | Several actions in order in one call; stops at the first that fails |
Typing is sent key by key, so autocompletes react. The result reports any dialog or error the action caused.
browser_scroll
Scrolls the page or an element: direction (down, up), by pixels, or to top or bottom. untilStable keeps scrolling while an infinite feed keeps loading (maxRounds, default 10) and reports how much it grew. It finds the real scroll container in app layouts where the window itself doesn't scroll.
browser_drag
Drags one element onto another: fromRef or fromSelector, toRef or toSelector. Works with HTML5 drag and drop and with pointer-driven libraries such as kanban boards.
browser_upload
Attaches local files to a file input, or drops them onto a drop zone. paths are absolute paths, 25 MB in total.
browser_dialog
Sets how alert, confirm and prompt are answered on a tab your agent is driving. By default they're dismissed (a confirm returns false) and reported in the action result. Call it before the action that opens the dialog: accept, text for a prompt, and persist to keep answering that way.
browser_fill
Sets one field by ref to a value, for inputs Deputy couldn't put into a typed tool. A checkbox takes "true" or "false"; a <select> takes an option's value or visible text.
browser_click
Clicks a button or link that browser_capabilities listed, by ref.
Navigate
browser_navigate
Opens a url and waits for it to load, or moves through history with action: back, forward or reload. The answer lists the new page's tools with their schemas, the start of its text and its actions. With no web page active, it opens a tab of its own rather than using yours.
browser_tabs
action: list every tab, open a url in a new active tab, select a tab by tabId (other tools act on the active tab by default), or close one.
browser_wait
Waits until text appears, textGone disappears, or an element matching selector is visible, for pages that load content after the fact. With no condition, waits timeoutMs (default 10000, at most 60000). Fails with a clear message on timeout.
See and debug
browser_screenshot
Returns a screenshot to your agent, roughly 1,000 to 1,600 tokens per image. fullPage, ref or selector, format (jpeg or png), maxDimension (default 1280). See Seeing and debugging.
browser_look
Deputy Pro. A vision model answers a question about what's visible, or describes the page, in text. Needs the setup page's screenshot switch. See browser_look.
browser_inspect
With a ref or selector: the element's box model, computed CSS (or the properties you name), layout, contrast, overflow and what covers it. With no target: a layout audit of the page.
browser_console
Console messages and page errors. levels (error, warn, info, log, debug), limit, and clear to empty the log after reading.
browser_network
Requests the page made. filter by URL, failedOnly, includeBodies (the first 4 KB of text and JSON bodies), limit, clear.
browser_resize
Sets the viewport's width and height in CSS pixels, at least 200 each, by resizing your real window. reset: true puts the window back.
browser_eval
Runs code in the page and returns its JSON-serialisable result. world: main (default) or isolated. Needs Chrome's Allow User Scripts switch for Deputy.