Skip to main content
Glama
ZennoLab

ZennoBrowser MCP Server

Official

Updates an existing browser profile.

update_profile
DestructiveIdempotent

Modify an existing browser profile by updating its name, tags, notes, proxy, folder, or fingerprint settings such as CPU, memory, screen, language, and WebRTC.

Instructions

This method updates an existing browser profile.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
cpuNoCPU configuration settings. Allowed values: "auto" to use value from fingerprint, "ignore" to use system value, or one of the specific core/thread strings: "2/4", "4/8", "6/12", "8/16", "10/20", "12/24", "14/28", "16/32", "32/64", "64/128". Use the exact string including the slash, e.g. "4/8" not "4".
nameNoNew profile name.
tagsNoNew profile tags separated by spaces (optional).
audioNoAudio configuration settings. Allowed values: "on" to enable or "off" to disable.
fontsNoFont configuration settings. Allowed values: "on" to enable or "off" to disable.
notesNoNew profile notes (optional).
webGlNoWebGL configuration settings. Allowed values: "auto" to use value from fingerprint, "ignore" to use system value.
canvasNoCanvas settings. The allowed values are: "Ignore" to disable this feature or "Noise" to use noising.
memoryNoMemory configuration settings. Allowed values: "auto" to use value from fingerprint, "ignore" to use system value, or one of the specific GB values as a string: "2", "4", "8", "16", "32", "64", "128".
screenNoScreen configuration settings. Allowed values: "auto" to use value from fingerprint, "ignore" to use system value, or one of the named resolution IDs: "SVGA" (800×600), "WSVGA" (1024×600), "XGA" (1024×768), "HD" (1280×720), "WXGA" (1280×768), "WXGA+" (1280×800), "SXGA" (1280×1024), "WXGA HD" (1366×768), "WSXGA" (1440×900), "HD+" (1600×900), "UXGA" (1600×1200), "WSXGA+" (1680×1050), "FHD" (1920×1080), "WUXGA" (1920×1200), "WQHD" (2560×1440), "4K UHD-1" (3840×2160), "5K" (5120×2880), "8K UHD-2" (7680×4320), and others such as "XGA+", "SXGA-", "SXGA+", "1360×768", "1536×864", "QWXGA", "QXGA", "WQXGA". Use the exact named ID string, not pixel dimensions directly.
webGpuNoWebGPU configuration settings. Allowed values: "on" to enable or "off" to disable.
webRtcNoWebRTC configuration settings. Allowed values: "Emulate" to use value from fingerprint, "Real" to use system value, or "Hide" to disable.
batteryNoBattery configuration settings. Allowed values: "on" to enable or "off" to disable.
domRectNoDOM Rectangle configuration settings. Allowed values: "Ignore" to disable or "Noise" to use dom rect noising.
pluginsNoBrowser plugins configuration. Allowed values: "on" to enable or "off" to disable.
folderIdNoNew folder which the profile will be moved to (optional).
languageNoBrowser language settings. Allowed values: "auto" to use value from fingerprint, "ignore" to use system value, or one of the supported locale codes: "ru" (Russian), "en-US" (English US), "de" (German), "fr" (French), "es" (Spanish), "en-GB" (English UK).
presetIdNoPreset identifier to apply. Use null to keep unchanged, empty string to remove the preset, or a GUID to set a new preset.
timeZoneNoTime zone settings. Allowed values: "auto" to use value from fingerprint, "ignore" to use system value, or custom timezone value (e.g., Europe/Moscow).
profileIdYesUnique identifier of the edited profile (required).
geoLocationNoGeographic location settings. Allowed values: "auto" to use value from fingerprint, or from one to seven comma-separated numbers for coordinates (Latitude, Longitude, Altitude, Accuracy, AltitudeAccuracy, Heading, Speed, Radius). Numbers can be skipped (e.g., "10, , 40, , 60, 70"). Note: "ignore" is not supported for this field and will cause an error.
workspaceIdNoWorkspace identifier. -1 means the default workspace.
mediaDevicesNoMedia devices settings. The allowed values are: "auto" to use value from fingerprint, "ignore" to use real values or custom location values. You can specify from one to three integer numbers that represent the following values: AudioInput, AudioOutput and VideoInput. The numbers can be skipped. For example, the following values are valid: 1,,5 - means AudioInput = 1, AudioOutput = random, VideoInput = 5
speechVoicesNoSpeech voices configuration. Allowed values: "on" to enable or "off" to disable.
proxyServerIdNoProxy server ID configuration. Use null to keep unchanged, empty string to clear the proxy, or provide a valid GUID to set a new proxy server
commandLineArgumentsNoCustom command line arguments to pass to the browser on startup

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

C2.2/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=false, destructiveHint=true, idempotentHint=true, so the mutation/safety profile is covered structurally. The description adds nothing beyond that — it does not explain partial-update semantics, whether omitted fields are preserved, the meaning of empty-string vs null values, or permission requirements.

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

Conciseness2/5

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

A single short sentence, so there is no bloat, but it is under-specified rather than concise: it repeats the title and conveys no information the agent could not already derive from the name. Brevity here is a symptom of missing content, not efficiency.

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

Completeness2/5

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

This is a mutation tool with 26 optional fields, one required ID, and no output schema, so the description carries the burden of explaining update semantics — which fields are actually changed, what happens to fields left unspecified, and how null/empty-string sentinels behave. None of that is present; only the schema's per-field docs partially compensate.

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

Parameters3/5

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

Schema description coverage is 100% and each of the 26 parameters is documented in-schema with allowed values, so the baseline is 3. The description contributes no parameter meaning at all, but the schema fully compensates, so no penalty below baseline.

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

Purpose2/5

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

The description ("This method updates an existing browser profile") is a near-verbatim restatement of the title and tool name, adding no distinguishing information. It never mentions that this is a partial update over 26 fingerprint/identity fields, nor how it differs from siblings like bulk_update_profile_preset, bulk_update_profile_proxy, move_profile, or bulk_update_profile_tags.

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

Usage Guidelines2/5

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

No when-to-use guidance is given. With a large sibling set including several narrow bulk update tools (bulk_update_profile_preset, bulk_update_profile_proxy, bulk_update_profile_tags) and move_profile, the agent is given no cue for when this general updater is the right choice versus those specialized tools.

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