camoufox-mcp-python
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@camoufox-mcp-pythonGo to https://example.com and take a screenshot"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
camoufox-mcp-python
A Model Context Protocol (MCP) server that provides browser automation tools powered by Camoufox — a stealthy, anti-detect browser built on Firefox. It exposes a Playwright-MCP compatible tool interface using accessibility snapshots and ref-based element targeting.
Think of it as playwright-mcp, but with built-in anti-detection and fingerprint spoofing.
Features
Anti-detect browser fingerprinting — Camoufox automatically spoofs browser fingerprints to bypass bot detection
Ref-based accessibility snapshots — Interact with page elements via accessibility refs, no CSS selectors needed
Human-like cursor movement — Cursor humanization enabled by default for realistic interactions
WebRTC leak protection — WebRTC blocked by default to prevent IP leaks
Isolated browser profiles by default — Each server process gets a fresh temporary profile that is deleted on close; pass
--user-data-dirto reuse a persistent profileGeoIP auto-matching — Automatically match browser locale/timezone to proxy location
Proxy support — Full proxy support including authentication
WebGL fingerprint control — Specify WebGL vendor/renderer pair or block entirely
Custom addons — Load custom Firefox addons or exclude defaults like uBlock Origin
Advanced fingerprint config — Override any BrowserForge fingerprint property or use a custom fingerprint
Firefox preferences — Set custom Firefox user preferences
Browser caching — Optional page/request caching for performance
Privacy controls — Block WebGL and image loading to reduce leaks and bandwidth
Multi-tab management — Create, close, select, and list browser tabs
Modal & dialog handling — Handle JavaScript dialogs and file choosers
Console & network monitoring — Inspect console messages and network requests
Related MCP server: Camoufox MCP
Quick Start
Use with Claude Desktop
Add to your Claude Desktop configuration (claude_desktop_config.json):
{
"mcpServers": {
"camoufox": {
"command": "uvx",
"args": ["camoufox-mcp-python"]
}
}
}Use with Claude Code
claude mcp add camoufox -- uvx camoufox-mcp-pythonUse with VS Code / Cursor
Add to .vscode/mcp.json:
{
"servers": {
"camoufox": {
"command": "uvx",
"args": ["camoufox-mcp-python"]
}
}
}Use with Codex CLI
Add to codex.json or pass via CLI:
codex --mcp-server "npx @anthropic-ai/mcp-proxy -- uvx camoufox-mcp-python"Pin a specific version
{
"mcpServers": {
"camoufox": {
"command": "uvx",
"args": ["--from", "camoufox-mcp-python==0.2.1", "camoufox-mcp-python"]
}
}
}CLI Options
Option | Description |
| Run the browser headlessly (default: on) |
| Proxy server URL (supports |
| Target OS fingerprint: |
| Cursor humanization (default: on). Pass a number for max duration, or |
| Auto-match locale/timezone to proxy IP, or specify a target IP |
| Browser locale(s), e.g. |
| Outer window size, e.g. |
| Block WebRTC to prevent IP leaks (default: on) |
| Disable WebGL |
| Block image requests to reduce bandwidth |
| Disable COOP for cross-origin iframe interactions |
| Optional persistent profile directory. If omitted, each server process uses an isolated temporary profile that is deleted on close |
| Enable capability groups, e.g. |
| WebGL vendor/renderer pair, e.g. |
| Paths to extracted Firefox addons (repeatable, comma-separated) |
| Default addons to exclude, e.g. |
| Camoufox fingerprint properties as a JSON string |
| Cache previous pages and requests (uses more memory) |
| Firefox user preferences as a JSON string |
| Silence Camoufox warnings for advanced configurations |
| Print the config being sent to Camoufox |
Examples
# Zero-config anti-detection (headless + humanize + block-webrtc on by default)
camoufox-mcp-python
# With proxy and GeoIP matching
camoufox-mcp-python --proxy http://user:pass@proxy.example.com:8080 --geoip
# Visible browser for debugging
camoufox-mcp-python --no-headless --debug
# Custom WebGL fingerprint
camoufox-mcp-python --webgl-config "Intel Inc.,Intel(R) UHD Graphics 620" --os windows
# Custom fingerprint properties
camoufox-mcp-python --config '{"navigator.hardwareConcurrency": 8}'
# With caching and custom Firefox prefs
camoufox-mcp-python --enable-cache --firefox-user-prefs '{"dom.webnotifications.enabled": false}'
# Privacy-hardened mode
camoufox-mcp-python --block-webgl --block-images
# Disable default anti-detection for debugging
camoufox-mcp-python --no-headless --humanize false --no-block-webrtc --debug
# Enable JavaScript evaluation
camoufox-mcp-python --caps dangerousAvailable Tools
Navigation
Tool | Description |
| Navigate to a URL |
| Go back to the previous page |
Snapshot & Interaction
Tool | Description |
| Capture an accessibility snapshot of the current page |
| Click an element by ref (supports double-click, right-click, modifiers) |
| Hover over an element |
| Drag from one element to another |
| Select option(s) in a dropdown |
Input
Tool | Description |
| Type text into an editable element (supports slow typing and submit) |
| Press a keyboard key or key combination |
| Fill multiple form fields in a single call |
Page
Tool | Description |
| Take a screenshot (viewport, full page, or element) |
| Retrieve collected console messages |
| List network requests seen by the page |
| Resize the viewport |
| Wait for text to appear/disappear, or a fixed duration |
| Close the browser session |
Tabs
Tool | Description |
| List, create, close, or select browser tabs |
Modals & Files
Tool | Description |
| Accept or dismiss a JavaScript dialog |
| Handle a file chooser and upload files |
Dangerous (requires --caps dangerous)
Tool | Description |
| Execute arbitrary JavaScript on the page or an element |
How It Works
The server uses Camoufox (a Firefox-based anti-detect browser) through Playwright's async API. Pages are represented as accessibility snapshots in YAML format, where each interactive element is assigned a ref identifier. The AI model reads the snapshot, identifies the target ref, and calls the appropriate tool — no fragile CSS/XPath selectors required.
AI Model ←→ MCP Server ←→ Camoufox Browser
│
├── Accessibility Snapshot (YAML)
├── Ref-based element targeting
└── Anti-detect fingerprintingLocal Development
# Clone and install
git clone https://github.com/user/camoufox-mcp.git
cd camoufox-mcp
uv pip install --python .venv/bin/python -e .
# Run the server
./.venv/bin/camoufox-mcp-python --headless
# Or run as a module
./.venv/bin/python -m camoufox_mcp --headless
# Smoke test
./.venv/bin/python -m compileall camoufox_mcp
./.venv/bin/camoufox-mcp-python --helpRequirements
Python >= 3.10
camoufox >= 0.4.11
mcp[cli] >= 1.25
playwright >= 1.58
Note: The first launch on a new machine may trigger automatic Camoufox binary and addon downloads.
License
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/zc-libre/camoufox-mcp-python'
If you have feedback or need assistance with the MCP directory API, please join our Discord server