TabbitBlog

Browser MCP vs CLI: A Same-Task Test

Compare browser MCP and CLI on the same Codex task.

In this article
  1. What changes when you switch interfaces
  2. Our controlled browser read
  3. What the token counts showed
  4. Decide by host, permissions and evidence

Choose browser MCP when your client needs discoverable, named tools. Choose a CLI when your agent can run a bounded command and you want to reuse that command in scripts. Before picking on token cost, measure the task you actually need. We ran the same read with the same model and Tabbit browser twice per connection. The direction of the raw input difference changed between pairs.

What changes when you switch interfaces

The Model Context Protocol gives a host a way to discover tool names and schemas, call a tool, and receive its result. An MCP tool may navigate, read a snapshot or run a whole browser workflow. A CLI exposes commands and arguments to a shell. It may return a short status, produce a snapshot file or print a large body. Neither interface determines how much page data the host includes in model context. MCP tool specification

Microsoft publishes both Playwright MCP and Playwright CLI. They are examples of different browser interfaces. Compare their actual configuration and output before generalizing from one default. The Playwright browser automation overview covers the underlying browser capabilities.

QuestionBrowser MCPBrowser CLI
How does the agent find an action?The host lists tools and decides which schemas to expose.The agent uses help, a skill, or a provided command.
What proves execution?A tool response tied to the named call and the rendered result.A command receipt or output tied to the command and the rendered result.
Where is browser state?In the browser context selected by the server.In the profile or session chosen by the command.
What can make context grow?Tool descriptions and large repeated observations.Verbose stdout, long instructions and artifacts read into context.

Our controlled browser read

We used Codex CLI 0.166.0, the same requested model gpt-6.1-sol, and Tabbit CLI 1.22.6.0. The task was to return one heading and two reference IDs from the rendered local page. The IDs were generated at runtime and changed between pairs. Within a pair, both paths read the same values.

The CLI path ran one approved shell wrapper. The MCP path used a local stdio server that exposed one read-only tool. That tool invoked the same wrapper, which used the same Tabbit launcher and page locator. We reversed the order for the second pair, gave each run a fresh conversation, and recorded provider-reported usage and wall time. The tool hint necessarily changed with the interface. No account, form submission or download was involved.

The Tabbit Release validation fixture displays two reference IDs during the controlled comparison

All four runs used the intended tool once, matched the two IDs in the receipt and returned the expected heading and IDs. MCP also recorded initialization, tool discovery and the tool call. The CLI recorded its command and stdout. This exercise compares two surfaces over the same browser and operation. It is separate from the Tabbit CLI benchmark, which uses a broader set of workflows.

What the token counts showed

Pair and pathTotal inputCached inputUncached inputOutputSeconds
1 · CLI49,83024,57625,2546111.55
1 · MCP75,30562,20813,0978312.97
2 · MCP50,08537,37612,7097015.32
2 · CLI50,09537,37612,7195710.79

Cached input is part of total input. Subtract it to compare uncached input here. In pair 1, MCP used 25,475 more raw input tokens but 12,157 fewer uncached input tokens. In pair 2, raw and uncached input differed by only ten tokens, in the other direction. CLI finished faster in both pairs. Wall time includes Codex startup, inference and browser execution, so it is no estimate of protocol latency.

The experiment used a single tool and a short output. A long MCP tool catalogue, repeated full-page snapshots or a CLI command that prints everything can change the result. Two pairs do not rank all browser tooling or predict billing. In an independent browser benchmark, a Reddit author also found that the agent and connection changed their token results. Another practitioner measured the difference between broad snapshots and typed operations on a form. These are separate configurations and tasks. Codex field report, snapshot comparison

Decide by host, permissions and evidence

If you compare your own workflow, save the action receipt and a deterministic outcome. Keep the model, task prompt, browser state and verification rule stable, alternate order, and record failures separately from token usage. Start with a page you can verify by hand. Download Tabbit

FAQ

What is the difference between browser MCP and CLI?

MCP lets a host discover and invoke named tools through a protocol. A CLI runs a local executable with arguments or input. Either can use the same browser engine.

Is CLI always cheaper in tokens?

No. The host, schemas, output detail, steps and prompt cache all contribute. In our two pairs, the higher raw input count switched sides.

Do I need MCP if my agent can run a terminal command?

A narrow CLI command is enough when the host can run it with acceptable permissions. MCP is useful when the host relies on a structured tool interface or needs shared tool discovery.

Does either option automatically preserve sign-in state?

Session reuse depends on the browser, profile and task settings. Check the actual target page and permissions independently of the connection method.

What should a fair comparison measure?

Use the same model, host, browser, page, and success rule. Compare tool calls, cached and uncached input, output, time and the actual page result.

Take the next step

Let Tabbit work alongside you.

Research across tabs, automate repetitive browser work, and keep every piece of context within reach.