Skip to main content
Glama
ColorSource

cloakbrowser-mcp

by ColorSource

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
CLOAKBROWSER_LOG_FILENoLog file path~/.cloakbrowser/logs/server.log
CLOAKBROWSER_LOG_LEVELNoLog levelINFO
CLOAKBROWSER_LOG_STDERRNoAlso log to stderrfalse

Capabilities

Features and capabilities supported by this server

CapabilityDetails
tools
{
  "listChanged": false
}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}
experimental
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
browser_launchA

Launch a stealth CloakBrowser instance. All anti-detection is ON by default.

CloakBrowser is a source-patched Chromium passing Cloudflare Turnstile, reCAPTCHA v3 (0.9 score), FingerprintJS, BrowserScan, and 30+ detectors.

Args: headless: Run headless. Some aggressive sites need headed mode (False). proxy: Proxy URL (e.g. 'http://user:pass@proxy:8080'). Residential recommended. humanize: Human-like mouse/keyboard/scroll (default: True). human_preset: 'default' or 'careful' (slower, more deliberate). stealth_args: Apply stealth fingerprint args (default: True). timezone: IANA timezone (e.g. 'America/New_York'). locale: BCP 47 locale (e.g. 'en-US'). geoip: Auto-detect timezone/locale from proxy IP. fingerprint_seed: Fixed seed for consistent identity across sessions. user_data_dir: Persistent profile path (cookies/localStorage survive restarts). viewport_width: Viewport width in pixels (default: 1920 headless; 1280 headed fallback, or auto-detected). viewport_height: Viewport height in pixels (default: 947 headless; 800 headed fallback, or auto-detected). color_scheme: 'light', 'dark', or 'no-preference'. user_agent: Custom user agent override. extra_args: Additional Chromium CLI flags.

browser_closeA

Close the stealth browser and release all resources. Always call when done.

browser_snapshotA

Capture the page's accessibility tree — the PRIMARY way to understand pages.

Returns interactive elements with [@eN] ref IDs for use with browser_click, browser_type, browser_select, browser_drag, etc. Call this BEFORE interacting with a page.

full=False (default): interactive elements only — compact and fast. full=True: includes surrounding text content for reading context.

This is FASTER, CHEAPER, and MORE RELIABLE than screenshots. Always prefer this over browser_screenshot for deciding what to click.

Args: page_id: Target page ID from browser_launch or browser_new_page. full: Include text content alongside interactive elements. max_length: Max characters to return (default: 12000).

browser_clickA

Click an element by its [@eN] ref ID from browser_snapshot.

Auto-retries once if the element moved. Returns an updated snapshot.

Args: page_id: Target page ID. ref: Ref ID from snapshot (e.g. '@e5' or 'e5').

browser_typeA

Type text into an input by its [@eN] ref ID from browser_snapshot.

Clears the field first by default. Set submit=True to press Enter after. Returns an updated snapshot.

Args: page_id: Target page ID. ref: Ref ID from snapshot (e.g. '@e3' or 'e3'). text: Text to type. clear: Clear field before typing (default: True). submit: Press Enter after typing (default: False).

browser_selectA

Select a dropdown option by ref ID. Provide one of: value, label, or index.

Returns an updated snapshot.

Args: page_id: Target page ID. ref: Ref ID of the element. value: Option value attribute to select. label: Option visible text to select. index: Option index (0-based) to select.

browser_hoverB

Hover over an element by ref ID. Returns an updated snapshot.

Args: page_id: Target page ID. ref: Ref ID from snapshot.

browser_dragA

Drag one element to another by their [@eN] ref IDs from browser_snapshot.

Humanized by default: picks non-center points, follows a curved uneven mouse path, and uses randomized timing. If that fails, fallback=True retries with Playwright's native drag_to for HTML5 drag-and-drop compatibility. Returns an updated snapshot.

Args: page_id: Target page ID. source_ref: Ref ID of the element to drag. target_ref: Ref ID of the drop target. humanize: Use human-like mouse movement instead of direct drag_to. duration_ms: Approximate humanized drag duration, clamped to 250-5000 ms. steps: Number of mouse movement points, clamped to 8-80. fallback: Retry with Playwright drag_to if humanized drag fails.

browser_checkA

Check or uncheck a checkbox/radio by ref ID. Returns an updated snapshot.

Args: page_id: Target page ID. ref: Ref ID from snapshot. checked: True to check, False to uncheck.

browser_read_pageA

Get the page content as clean, readable markdown.

Best for reading articles, docs, search results, or any content-heavy page. Strips navigation, ads, footers — returns just the main content. Much more token-efficient than raw HTML (60-80% savings).

Args: page_id: Target page ID. max_length: Max characters to return (default: 50000).

browser_screenshotA

Take an annotated screenshot with element indices overlaid.

Each numbered element maps to [@eN] refs from browser_snapshot. Use when you need VISUAL context — images, charts, CAPTCHAs, or layout. For most interactions, prefer browser_snapshot() instead.

Returns: file path to saved PNG, element count.

Args: page_id: Target page ID. full_page: Capture entire scrollable page (default: viewport only).

browser_navigateA

Navigate to a URL. Auto-waits for the page to settle (network idle + DOM stable).

Handles Cloudflare challenge pages with extra wait time. Returns an updated snapshot of the loaded page.

Args: page_id: Target page ID. url: URL to navigate to. timeout: Navigation timeout in milliseconds.

browser_backA

Navigate back in browser history. Returns an updated snapshot.

Args: page_id: Target page ID.

browser_forwardB

Navigate forward in browser history. Returns an updated snapshot.

Args: page_id: Target page ID.

browser_press_keyA

Press a keyboard key (Enter, Tab, Escape, ArrowDown, etc.).

Returns an updated snapshot.

Args: page_id: Target page ID. key: Key name (DOM KeyboardEvent key).

browser_scrollA

Scroll the page. Returns an updated snapshot.

Args: page_id: Target page ID. direction: 'up' or 'down'. amount: Pixels to scroll.

browser_waitA

Wait for the page to settle (no DOM mutations + network idle).

Use after actions that trigger dynamic content loading. Returns whether the page settled and how many DOM mutations occurred.

Args: page_id: Target page ID. timeout_ms: Max wait time in milliseconds (default: 5000).

browser_evaluateB

Execute JavaScript in the page context and return the result.

Args: page_id: Target page ID. expression: JavaScript expression to evaluate.

browser_new_pageA

Open a new browser page/tab. Optionally navigate to a URL.

Args: url: URL to navigate to after creating the page.

browser_list_pagesA

List all open pages with their IDs and URLs.

browser_close_pageC

Close a specific page by ID.

Args: page_id: Page ID to close.

browser_network_interceptA

Intercept network requests — block, mock, or passthrough.

Args: page_id: Target page ID. url_pattern: Glob pattern (e.g. '/api/', '**/*.png'). action: 'block', 'mock', or 'continue'. mock_body: Response body for 'mock' action. mock_status: HTTP status for 'mock' action. mock_content_type: Content-Type for 'mock' action.

browser_network_continueA

Remove a network interception rule.

Args: page_id: Target page ID. url_pattern: Same pattern used in browser_network_intercept.

browser_get_cookiesC

Get all cookies from the page's browser context.

Args: page_id: Target page ID.

browser_set_cookiesB

Set cookies in the page's browser context.

Args: page_id: Target page ID. cookies: List of cookie dicts with name, value, domain, path.

browser_pdfB

Save the current page as a PDF file.

Args: page_id: Target page ID. format: Page format — 'A4', 'Letter', 'Legal'. print_background: Include background graphics.

browser_consoleA

Get browser console output (log/warn/error/info) and JS errors.

Args: page_id: Target page ID. clear: Clear the message buffer after reading.

browser_downloadsA

Get list of files downloaded by the browser on a page.

Returns downloaded file info including suggested filenames and local paths. After clicking a download link, call this to retrieve the downloaded file path.

Args: page_id: Target page ID.

Prompts

Interactive templates invoked by user choice

NameDescription
browse_and_extractBrowse a URL and extract content. Args: url: URL to visit. what: What to extract.
fill_formFill and submit a form. Args: url: URL with the form. instructions: What to fill in.
loginLog into a website. Args: url: Login page URL. username: Username/email. password: Password.

Resources

Contextual data attached and managed by the client

NameDescription

No resources

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/ColorSource/cloakbrowser-mcp'

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