Skip to main content
Glama

Run browser tasks in parallel

run_parallel
Destructive

Run multiple browser task batches concurrently in one call, each in its own isolated session. Use it to scrape or visit many pages at once or repeat a flow across sessions.

Instructions

Run many browser tasks at the same time in ONE call. Each task is a list of browser_* steps run in order in its own session; tasks run concurrently server-side. Use it to visit or scrape many pages at once, or to repeat a flow across sessions. Steps cannot use snapshot refs they have not seen, so target elements with CSS selectors (target accepts a selector) or use browser_evaluate / browser_run_code_unsafe. Keep output small: end tasks with browser_evaluate returning only the data you need.

Input Schema

NameRequiredDescriptionDefault
tasksYes
outputNo"last" (default) returns each task's final step plus any errors. "all" returns every step.
maxCharsNoText cap per task. Default 6000, lower for big batches.
concurrencyNoHow many tasks run at once. Default from server settings, capped by free session slots.
stopOnErrorNoStop a task at its first failing step. Default true.
taskTimeoutSecondsNoTime limit per task. Default 180.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.0.0

TDQS

A4.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already flag destructive/openWorld/non-idempotent, so the description adds real context beyond them: tasks run concurrently server-side, each in an isolated session, and per-task output should be kept small. The key cross-step constraint (a task cannot use snapshot refs it hasn't seen) is a genuinely non-obvious behavioral trait. It does not discuss aggregate failure behavior across tasks, which would have made this a 5.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Four dense sentences, front-loaded with the purpose and the concurrency model, then the targeting constraint, then the output-size tip. No filler and every sentence carries actionable content.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a nested, high-complexity batch tool with no output schema, the description covers the mental model (independent sessions, concurrent execution), the main pitfall (snapshot refs), and output trimming. Remaining gaps such as result shape per task and cross-task error aggregation are either covered by the schema's `output`/`stopOnError` descriptions or minor.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 83%, so the baseline is 3, but the description adds construction guidance for the required `tasks` parameter: steps run in order, each step targets a tool by name, and element targeting must use selectors rather than unseen refs. That is meaning beyond the schema's field-level text.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('Run many browser tasks at the same time in ONE call') and immediately clarifies granularity: each task is an ordered list of browser_* steps in its own session. This clearly distinguishes it from the single-action browser_* siblings.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives concrete use cases ('visit or scrape many pages at once', 'repeat a flow across sessions') and points to workarounds (CSS selectors, browser_evaluate, browser_run_code_unsafe) when snapshot refs are unavailable. It does not explicitly say when not to use it, e.g. for a single task where individual browser_* tools suffice.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.