Emulation
Emulation — MCP tools exposed to agents.
14 tools in this group.
browser_get_viewport
Get the current viewport dimensions
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
session | string | no | Optional: 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.
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
devicePixelRatio | number | no | Device pixel ratio (optional; must be > 0 and at most 10, e.g., 2 for Retina) | |
height | integer | yes | Viewport height in pixels (positive integer, maximum 16384) | |
session | string | no | Optional: named session to run this call in (default: current session). | |
width | integer | yes | Viewport 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).
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
session | string | no | Optional: 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.
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
locale | string | no | BCP 47 language tag (e.g. 'fr-CA'). Empty string clears the override. | |
network | string | no | Network conditions: "offline" emulates being offline, "default" restores real connectivity (one of: offline, default) | |
scripting | string | no | Scripting: "disabled" emulates JavaScript disabled for page content, "default" restores it (one of: disabled, default) | |
session | string | no | Optional: named session to run this call in (default: current session). | |
timezone | string | no | IANA timezone ID (e.g. 'Asia/Tokyo') or offset string (e.g. '+05:30'). Empty string clears the override. | |
userAgent | string | no | User-Agent string. Empty string clears the override. |
browser_emulate_media
Override CSS media features (color scheme, reduced motion, etc.)
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
colorScheme | string | no | Color scheme: "light", "dark", or "no-preference" (one of: light, dark, no-preference) | |
contrast | string | no | Contrast preference: "more", "less", or "no-preference" (one of: more, less, no-preference) | |
forcedColors | string | no | Forced colors: "active" or "none" (one of: active, none) | |
media | string | no | Media type: "screen" or "print" (one of: screen, print) | |
reducedMotion | string | no | Reduced motion: "reduce" or "no-preference" (one of: reduce, no-preference) | |
session | string | no | Optional: named session to run this call in (default: current session). |
browser_set_geolocation
Override the browser geolocation
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
accuracy | number | no | 1 | Accuracy in meters (default: 1) |
latitude | number | yes | Latitude (-90 to 90) | |
longitude | number | yes | Longitude (-180 to 180) | |
session | string | no | Optional: 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
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
session | string | no | Optional: named session to run this call in (default: current session). | |
time | number | no | Initial time as epoch milliseconds (optional) | |
timezone | string | no | IANA 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
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
session | string | no | Optional: named session to run this call in (default: current session). | |
ticks | number | yes | Number of milliseconds to fast-forward |
page_clock_run_for
Advance the fake clock by N milliseconds, firing all time-related callbacks systematically
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
session | string | no | Optional: named session to run this call in (default: current session). | |
ticks | number | yes | Number 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
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
session | string | no | Optional: named session to run this call in (default: current session). | |
time | number | yes | Time as epoch milliseconds to pause at |
page_clock_resume
Resume real-time progression from the current fake clock time
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
session | string | no | Optional: 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.
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
session | string | no | Optional: named session to run this call in (default: current session). | |
time | number | yes | Time as epoch milliseconds to freeze at |
page_clock_set_system_time
Set Date.now() to a specific value without triggering any timers
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
session | string | no | Optional: named session to run this call in (default: current session). | |
time | number | yes | Time 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
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
session | string | no | Optional: named session to run this call in (default: current session). | |
timezone | string | yes | IANA timezone ID (e.g. 'America/New_York', 'Europe/London', 'Asia/Tokyo'). Empty string resets to system default. |