Skip to main content
Glama
whit3rabbit

Camoufox MCP Server

by whit3rabbit

browse_screenshot

Read-only

Navigate to a URL and capture a bounded screenshot with privacy-focused anti-detection, offering viewport, full-page, or element-specific captures.

Instructions

Navigate once and capture a bounded screenshot.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
osNoOptional OS to spoof. Can be 'windows', 'macos', or 'linux'. If not specified, will rotate between all OS types.
urlYesThe URL to navigate to. Must be a fully qualified http or https URL.
argsNoAdditional browser command-line arguments to pass to the browser. Rejected unless CAMOUFOX_MCP_ALLOW_UNSAFE_OPTIONS=1; denied args are always rejected.
typeNoScreenshot image type.png
geoipNoAutomatically detect geolocation based on IP address.
proxyNoProxy configuration for routing browser traffic through an HTTP(S) proxy. Proxy servers are checked against the same local-network URL policy as page requests.
localeNoBrowser locale (e.g., 'en-US', 'fr-FR').
windowNoSet fixed window size [width, height] instead of random generation. An empty array [] is accepted and treated as if the window parameter was not specified.
qualityNoJPEG quality from 1-100. Ignored for PNG.
timeoutNoTimeout in milliseconds for page load (5-300 seconds).
fullPageNoCapture the full page instead of only the viewport.
headlessNoRun browser in headless mode. Auto-detects best mode for environment if not specified.
humanizeNoEnable realistic cursor movements and human-like behavior for better stealth and anti-detection.
selectorNoOptional CSS selector for element-only screenshots.
viewportNoCustom viewport dimensions.
block_webglNoBlock WebGL to prevent fingerprinting and tracking.
block_imagesNoBlock all images for faster loading, reduced bandwidth, and lightweight browsing.
block_webrtcNoBlock WebRTC entirely for enhanced privacy and stealth.
disable_coopNoDisable Cross-Origin-Opener-Policy for sites that require it.
enable_cacheNoCache pages, requests, etc. Uses more memory but improves performance when revisiting pages.
waitStrategyNoWait strategy for page load. Defaults to 'domcontentloaded'. 'load' waits for all resources, 'networkidle' waits for network activity to finish.domcontentloaded
captchaPolicyNoChallenge handling policy. 'detect' reports signals, 'pause' returns state for human action, 'fail' returns an error, 'attempt' returns enhanced challenge metadata, interactive elements, a bounded screenshot, and a suggested strategy. When CAPTCHA_AUTONOMOUS=true, responses are marked for LLM-assisted handling and include provider-specific challengePlaybook context when known.
exclude_addonsNoList of default addons to exclude (e.g., ['ublock_origin']). Rejected unless CAMOUFOX_MCP_ALLOW_UNSAFE_OPTIONS=1.
includeConsoleNoInclude bounded page console diagnostics in the JSON response.
includeNetworkNoInclude bounded network diagnostics in the JSON response.
stealthProfileNoConvenience profile for common Camoufox browser settings. Explicit options override profile values.normal
firefox_user_prefsNoCustom Firefox user preferences to set. Rejected unless CAMOUFOX_MCP_ALLOW_UNSAFE_OPTIONS=1; denied prefs are always rejected.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
urlYes
titleNo
statusNo
messageNo
screenshotYes
contentTypeNo
challengeTypeNo
captchaIframesNo
captchaDetectedNo
challengeSignalsNo
challengeHandlingNo
challengePlaybookNo
challengeProviderNo
suggestedStrategyNo
requiresUserActionNo
interactiveElementsNo
Behavior2/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false, so safety is covered. However, the description adds only the vague term 'bounded' and does not explain what it means, nor does it disclose any behavioral traits such as stealth behavior, captcha handling, or response characteristics. It contributes minimal behavioral context beyond the structured annotations.

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?

The description is a single, concise sentence: 'Navigate once and capture a bounded screenshot.' It contains no fluff, redundant text, or repetition of schema details. Every word serves a purpose, making it highly efficient.

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?

Despite having rich schema and annotations, the tool is complex (27 parameters, nested objects, output schema). The description is too terse to provide sufficient context for an agent to fully understand the tool's capabilities and limitations. Terms like 'bounded' are undefined, and there is no mention of key behavioral aspects like stealth profiles, wait strategies, or diagnostic options. Given the complexity, the description is under-specified.

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% for all 27 parameters, with each parameter having a detailed description. The tool description itself adds no parameter-specific meaning, but since the schema fully documents parameter semantics, a baseline score of 3 is appropriate.

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?

The description 'Navigate once and capture a bounded screenshot' uses a specific verb ('capture') and resource ('bounded screenshot'), and 'navigate once' clearly distinguishes it from multi-step tools like browse_sequence or persistent-session tools. It precisely states the tool's core function.

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

Usage Guidelines3/5

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

The phrase 'navigate once' implies single-shot usage, subtly contrasting with browse_sequence, but there is no explicit statement of when to use this tool versus alternatives, nor any exclusions or prerequisites. The guidance is implied rather than direct.

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

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/whit3rabbit/camoufox-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server