Emulation

Emulation — MCP tools exposed to agents.

14 tools in this group.

browser_get_viewport

Get the current viewport dimensions

ParameterTypeRequiredDefaultDescription
sessionstringnoOptional: named session to run this call in (default: current session).

browser_set_viewport

Set the browser viewport size. Use browser_reset_viewport to clear the override.

ParameterTypeRequiredDefaultDescription
devicePixelRationumbernoDevice pixel ratio (optional; must be > 0 and at most 10, e.g., 2 for Retina)
heightintegeryesViewport height in pixels (positive integer, maximum 16384)
sessionstringnoOptional: named session to run this call in (default: current session).
widthintegeryesViewport width in pixels (positive integer, maximum 16384)

browser_reset_viewport

Reset the viewport size and device pixel ratio overrides for the current page/context, returning control of viewport sizing to the browser (WebDriver BiDi browsingContext.setViewport with viewport: null and devicePixelRatio: null).

ParameterTypeRequiredDefaultDescription
sessionstringnoOptional: named session to run this call in (default: current session).

browser_emulate_environment

Emulate the browsing environment for this session: locale, timezone, user agent, offline network, disabled scripting. Overrides are scoped to the session's user context (new tabs inherit them; other sessions are unaffected) and persist until cleared. At least one setting is required. Note: page_clock_set_timezone sets a per-tab timezone that wins over this session-wide one in that tab.

ParameterTypeRequiredDefaultDescription
localestringnoBCP 47 language tag (e.g. 'fr-CA'). Empty string clears the override.
networkstringnoNetwork conditions: "offline" emulates being offline, "default" restores real connectivity (one of: offline, default)
scriptingstringnoScripting: "disabled" emulates JavaScript disabled for page content, "default" restores it (one of: disabled, default)
sessionstringnoOptional: named session to run this call in (default: current session).
timezonestringnoIANA timezone ID (e.g. 'Asia/Tokyo') or offset string (e.g. '+05:30'). Empty string clears the override.
userAgentstringnoUser-Agent string. Empty string clears the override.

browser_emulate_media

Override CSS media features (color scheme, reduced motion, etc.)

ParameterTypeRequiredDefaultDescription
colorSchemestringnoColor scheme: "light", "dark", or "no-preference" (one of: light, dark, no-preference)
contraststringnoContrast preference: "more", "less", or "no-preference" (one of: more, less, no-preference)
forcedColorsstringnoForced colors: "active" or "none" (one of: active, none)
mediastringnoMedia type: "screen" or "print" (one of: screen, print)
reducedMotionstringnoReduced motion: "reduce" or "no-preference" (one of: reduce, no-preference)
sessionstringnoOptional: named session to run this call in (default: current session).

browser_set_geolocation

Override the browser geolocation

ParameterTypeRequiredDefaultDescription
accuracynumberno1Accuracy in meters (default: 1)
latitudenumberyesLatitude (-90 to 90)
longitudenumberyesLongitude (-180 to 180)
sessionstringnoOptional: named session to run this call in (default: current session).

page_clock_install

Install a fake clock on the page, overriding Date, setTimeout, setInterval, requestAnimationFrame, and performance.now

ParameterTypeRequiredDefaultDescription
sessionstringnoOptional: named session to run this call in (default: current session).
timenumbernoInitial time as epoch milliseconds (optional)
timezonestringnoIANA timezone ID to override (e.g. 'America/New_York', 'Europe/London')

page_clock_fast_forward

Jump the fake clock forward by N milliseconds, firing each due timer at most once

ParameterTypeRequiredDefaultDescription
sessionstringnoOptional: named session to run this call in (default: current session).
ticksnumberyesNumber of milliseconds to fast-forward

page_clock_run_for

Advance the fake clock by N milliseconds, firing all time-related callbacks systematically

ParameterTypeRequiredDefaultDescription
sessionstringnoOptional: named session to run this call in (default: current session).
ticksnumberyesNumber of milliseconds to advance

page_clock_pause_at

Jump the fake clock to a specific time and pause — no timers fire until resumed or advanced

ParameterTypeRequiredDefaultDescription
sessionstringnoOptional: named session to run this call in (default: current session).
timenumberyesTime as epoch milliseconds to pause at

page_clock_resume

Resume real-time progression from the current fake clock time

ParameterTypeRequiredDefaultDescription
sessionstringnoOptional: named session to run this call in (default: current session).

page_clock_set_fixed_time

Freeze Date.now() at a specific value permanently. Timers still run.

ParameterTypeRequiredDefaultDescription
sessionstringnoOptional: named session to run this call in (default: current session).
timenumberyesTime as epoch milliseconds to freeze at

page_clock_set_system_time

Set Date.now() to a specific value without triggering any timers

ParameterTypeRequiredDefaultDescription
sessionstringnoOptional: named session to run this call in (default: current session).
timenumberyesTime as epoch milliseconds to set

page_clock_set_timezone

Override the browser timezone. Pass an IANA timezone ID (e.g. 'America/New_York'), or empty string to reset to system default

ParameterTypeRequiredDefaultDescription
sessionstringnoOptional: named session to run this call in (default: current session).
timezonestringyesIANA timezone ID (e.g. 'America/New_York', 'Europe/London', 'Asia/Tokyo'). Empty string resets to system default.

On this page