servers / camofox-mcp

camofox-mcp

communitystdiolocaldestructive capablehealthy

Anti-detection browser MCP server for AI agents — navigate, interact, and automate the web without getting blocked


01Tools · 47

How to read this: tool names here are observed from a live tools/list handshake. The Risk label is a heuristic inferred from the tool name (write/destructive verbs), not from executing the tool — a conservative guess, not a verified capability. We never escalate risk from a description. Found one that's wrong? Tell us — we fix on report.

ToolRiskSide effectsApproval
delete_download
Delete a downloaded file from disk and registry
destructivetruetrue
extract_structured
Extract deterministic structured JSON from a page using the camofox-browser structured extraction schema.
unknownunknownunknown
camofox_scroll_element_and_snapshot
Scroll a container element AND take a snapshot. Combines scroll_element + snapshot in one call. Perfect for incrementally loading lazy content in modals (e.g. Facebook group post comments). Returns both scroll position and page snapshot.
readfalseunknown
close_tab
Close a browser tab and release resources. Always close tabs when done to free memory.
unknownunknownunknown
camofox_close_session
Close all browser tabs for a user session. Use for complete cleanup when done with a browsing session.
unknownunknownunknown
go_forward
Navigate forward in browser history (Forward button). Returns new page URL.
readfalseunknown
list_presets
List all available geo presets supported by the CamoFox server. Presets include locale, timezone, and optional geolocation.
readfalseunknown
camofox_press_key
Press a keyboard key. Use after type_text to submit forms (Enter), navigate between elements (Tab), move through suggestions (ArrowDown/ArrowUp), or dismiss dialogs (Escape). Common keys: Enter, Tab, Escape, ArrowDown, ArrowUp, Backspace, Space.
unknownunknownunknown
extract_resources
Extract resources (images, links, media, documents) from a specific DOM container. Use a CSS selector or element ref from snapshot to scope extraction to a particular section of the page. This is useful for extracting all images from a specific post, all links from a table, etc.
unknownunknownunknown
delete_profile
Delete a saved browser profile from disk. Removes the profile's cookie data permanently.
destructivetruetrue
server_status
Check CamoFox server health and browser connection. Call first to verify server is running. Returns version, browser status, and active tab count.
readfalseunknown
camofox_scroll_element
Scroll a specific container element (modal dialog, scrollable div, sidebar). Use when page-level scroll doesn't reach content inside modals or overflow containers. Returns scroll position metadata to track progress.
readfalseunknown
batch_click
Click multiple elements sequentially. Continues on error (clicks are independent). Returns per-click results.
readfalseunknown
scroll_and_snapshot
Scroll the page and take a snapshot. Useful for revealing content below the fold.
unknownunknownunknown
refresh
Reload the current page. Useful when page state is stale or after changes.
unknownunknownunknown
camofox_evaluate_js
Execute JavaScript in the browser page context. Runs in isolated scope (invisible to page scripts — safe for anti-detection). Use for: extracting data not visible in accessibility snapshot, checking element properties, reading computed styles, manipulating DOM elements. Requires CAMOFOX_API_KEY only when browser-server authentication is enabled.
unknownunknownunknown
camofox_get_page_html
Get rendered HTML from the live DOM. Use when snapshot refs are incomplete on SPA/custom-component sites or when you need the final DOM state rather than the accessibility tree. Optionally pass a CSS selector to return only that element's outerHTML instead of the full page. Requires CAMOFOX_API_KEY only when browser-server authentication is enabled.
readfalseunknown
type_and_submit
Type text into a field and press a key (default: Enter). Useful for search boxes and single-field forms.
readfalseunknown
youtube_transcript
Extract transcript from a YouTube video. Returns timestamped text. No tab required.
readfalseunknown
get_download
Get a downloaded file. Images are always returned as viewable images. Recommended for AI agents: set includeContent=true to get non-image file content as base64 inline (max 256KB). Otherwise returns metadata only (including contentUrl).
readfalseunknown
batch_download
Extract resources from a DOM container and download them all. Combines extract_resources + download in one call. Useful for downloading all images from a chat, all PDFs from a table, etc.
unknownunknownunknown
camofox_hover
Hover over an element to trigger tooltips, dropdown menus, or hover states. Use ref from snapshot or CSS selector.
unknownunknownunknown
toggle_display
Toggle browser display mode between headless and headed. When encountering CAPTCHAs or issues requiring visual interaction, switch to headed mode (headless: false) to show the browser window. After resolving, switch back to headless mode (headless: true). When switching an existing single context to virtual or headed mode, the response includes a vncUrl field — open this URL in a browser to see and interact with the browser GUI. Check tabsInvalidated in the response: when true, recreate tabs; when false, existing tracked tabs remain usable and the override applies to future contexts.
readfalseunknown
web_search
Search via the 14 macros supported by camofox-browser 2.4.7: google, youtube, amazon, reddit, reddit_subreddit, wikipedia, twitter, yelp, spotify, netflix, linkedin, instagram, tiktok, twitch. Call snapshot after to read results.
readfalseunknown
screenshot
Take a viewport or full-page visual screenshot in base64 PNG. Set fullPage to capture the entire scrollable page. Use ONLY for visual verification (CSS, layout, proof). Prefer snapshot for most tasks — much more token-efficient.
unknownunknownunknown
list_profiles
List all saved browser profiles with metadata. Shows profile names, cookie counts, save dates, and descriptions.
readfalseunknown
get_stats
Get session statistics: request counts, active tabs, uptime, performance metrics.
readfalseunknown
scroll
Scroll page up or down by pixel amount. Use to reveal content below the fold or navigate long pages.
unknownunknownunknown
navigate
Navigate a tab to a URL. Waits for page load. Use create_tab first, then navigate. Returns final URL (may differ due to redirects).
readfalseunknown
navigate_and_snapshot
Navigate to a URL and return the page snapshot. Combines navigate + wait + snapshot into one call.
unknownunknownunknown
get_links
Get all hyperlinks on page with URLs and text. Useful for navigation discovery and site mapping.
readfalseunknown
type_text
Type text into an input field. Provide either a ref (from snapshot) or a CSS selector. Use ref when available; otherwise use selector when snapshot doesn't assign refs (common with combobox/autocomplete inputs). Call snapshot first to find target element.
readfalseunknown
import_cookies
Import cookies for authenticated sessions. Provide cookies in a JSON string array. Restores login sessions without re-auth. Requires userId.
unknownunknownunknown
load_profile
Load a saved profile's cookies into an active browser tab. Restores login sessions without re-authentication. Use after create_tab to restore saved state.
unknownunknownunknown
list_tabs
List all open browser tabs with URLs and titles. Use to discover available tabs or verify tab state.
readfalseunknown
go_back
Navigate backward in browser history (Back button). Returns new page URL.
readfalseunknown
save_profile
Save browser cookies from an active tab to a named profile on disk. Enables session persistence across restarts. Use after login to save authenticated state.
unknownunknownunknown
create_tab
Create a new browser tab with anti-detection fingerprinting. Each tab gets a unique fingerprint. Optionally provide a URL, userId, sessionKey, and viewport. To share the camofox CLI default browser profile/context, pass userId "cli-default" and sessionKey "default"; this creates a tracked MCP tab in that context but does not attach to a CLI tab that is already open.
writetrueunknown
list_downloads
List downloaded files with optional filtering by tab, status, extension, MIME type, and size range. Each download includes contentUrl for direct file retrieval.
readfalseunknown
fill_form
Fill multiple form fields in one call. Provide an array of field entries, each with a ref or CSS selector and the text to type. Optionally specify a submit button to click after filling.
unknownunknownunknown
camofox_wait_for_selector
Wait for a CSS selector to appear in the live DOM. Use for SPA hydration and async content when snapshot refs are incomplete or stale. Once found, prefer snapshot refs for interaction when available. Requires CAMOFOX_API_KEY only when browser-server authentication is enabled.
unknownunknownunknown
snapshot
Get accessibility tree snapshot — the PRIMARY way to read page content. Returns element refs, roles, names and values. Token-efficient. Always prefer over screenshot. Refs come from the accessibility tree, so custom SPA elements may be missing; fall back to CSS selectors, camofox_wait_for_selector, or camofox_get_page_html when needed.
readfalseunknown
resolve_blobs
Resolve blob: URLs to downloadable base64 data. Blob URLs are temporary browser objects (common in Telegram, WhatsApp, Discord) that cannot be downloaded directly. This tool converts them to base64 data URIs.
unknownunknownunknown
camofox_wait_for
Wait for page to be fully ready (DOM loaded, network idle, framework hydration complete). Use after navigation or actions that trigger page changes.
unknownunknownunknown
camofox_wait_for_text
Wait for specific text to appear on the page. Useful for waiting for search results, form submissions, or dynamic content loading.
readfalseunknown
click
Click an element. Provide either ref (from snapshot) or CSS selector. Use snapshot first to discover element refs.
unknownunknownunknown
camofox_query_selector
Query a CSS selector in the live DOM and return its element details or a specific attribute. Use this for targeted inspection without writing raw evaluate_js. Requires CAMOFOX_API_KEY only when browser-server authentication is enabled.
readfalseunknown

02Install & source
npx -y camofox-mcp@latest
npx
npx -y camofox-browser@latest
npx
docker run ghcr.io/redf0x1/camofox-browser:latest
docker

03Access granted
Browser automation · write

The access this server can exercise, inferred from its verified tools — not a declared OAuth scope.


05Provenance & freshness
sourcesGitHub repo search [p4]
last_checked2026-08-20 12:31Z
next_check2026-08-20 15:19Z
cadenceevery 3h
verifiedtools_list:passed handshake:passed metadata:passed tools_list:passed handshake:passed metadata:passed tools_list:passed handshake:passed metadata:passed tools_list:passed
index_statusindex9 unique facts >= 5

06Badge

Add the “as seen on MCPExplorer” badge to your README. camofox-mcp MCP — as seen on mcpexplorer.com

[![camofox-mcp MCP — as seen on mcpexplorer.com](https://mcpexplorer.com/badge/camofox-mcp.svg)](https://mcpexplorer.com/servers/camofox-mcp)

Next step

This is one server. A loadout combines the right servers, governance, and proven plays for a whole job — assembled deliberately, not tool-dumped.

Explore loadouts →