Deputydocs
Reference

Measurements

What Deputy saves an agent, measured against Playwright MCP on the same tasks, with the method.

Measured on 2026-09-12 on one machine, Linux with Chromium 152. The runs used Deputy's own model at the time, qwen/qwen3.7-flash through OpenRouter. Reproducible, not cited: the method and both tasks are in docs/measurements.md in the open-source repository.

Filling a real form

The task: book a table on a seven-field form (text, email, number, date, time, <select> and a textarea). Same prompt, same data, both through claude -p --output-format json. Both runs succeeded, and the form was really submitted in both.

Claude + Playwright MCPClaude + Deputy
Turns96
Claude tokens216,888133,3661.63× fewer
Deputy's own model1 call · 229 in / 55 out · $0.000014
Total cost$0.2730$0.18611.47× cheaper
Wall clock26.1 s17.2 s1.52× faster

Deputy isn't free, and it was measured: its model made one call costing fourteen millionths of a dollar, against Claude's $0.19. The saving survives full accounting.

Deputy's entire view of that form (every field, its type, allowed values, minimum and maximum, which are required, and what each holds) is 611 tokens.

The finding worth reading twice

browser_capabilities first returned tool names only, to keep the reply small. The agent had to probe for parameter names: 246,003 tokens, 11 turns.

Returning the full JSON Schemas brought it to 155,774 tokens, 7 turns. Adding even more, the fields' current values and every button and link with a clickable ref, brought it to 133,366 tokens, 6 turns.

Sending about 5× more data made the task 1.8× cheaper. Every probe an agent is forced to make costs more than the context that would have prevented it.

What crosses the wire per observation

en.wikipedia.org/wiki/Main_Page, the same page at the same moment:

Representation~Tokens
Full accessibility tree215,495
Raw HTML62,184
Screenshot (PNG, 1440 × 900)57,134
Trimmed accessibility snapshot, what Playwright MCP sends14,170
Deputy on a form page (schemas, values, actions)611
Deputy on Wikipedia (5 tools, 25 actions)3,545
Deputy: an answer from browser_ask~40

The Playwright baseline was given browser_snapshot, its cheap text path, not only screenshots. The comparison is deliberately conservative: an agent sending 57,134-token screenshots would look far worse.

Long pages

Wikipedia's main page has 263 links. Deputy returns a window of them, never a silent subset:

CallReturnsPayload
browser_capabilities()25 actions, and Showing 1-25 of 263 with how to get the rest~2,094 tokens
browser_capabilities({ actionQuery: "Contact" })3 of 263: refs a8, a257, a258~1,224 tokens
browser_capabilities({ actionOffset: 25, actionLimit: 5 })Items 26 to 30, with the next offset~1,346 tokens

The filter reaches a257 directly, an item 230 places past the default window.

A second task: a Wikipedia lookup

Search Wikipedia for "Byzantine Empire", open the article, report its first sentence.

Playwright MCPDeputy
Wall clock95.0 s28.0 s (3.4× faster)
Cost$0.2820$0.2464
Total tokens218,135221,975

The session totals are about equal here. On a three-step lookup both are dominated by Claude Code's own system prompt (202,310 of the baseline's 218,135 tokens are cache reads), not by the browser payload. The form task has enough steps for the difference to show.

Live, on the real Wikipedia

Deputy grafted search_wikipedia and search_wikipedia_2 onto a site that has never heard of WebMCP, invoked one, and the real form submitted and went to /wiki/Byzantine_Empire. browser_ask answered "what is today's featured article?" in 1.96 s from the live page.

On this page