We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/redf0x1/camofox-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server
# π¦ CamoFox MCP
**The anti-detection browser MCP server for AI agents.** Navigate, interact, and automate the web without getting blocked.
[](https://github.com/redf0x1/camofox-mcp/actions/workflows/ci.yml)
[](https://www.npmjs.com/package/camofox-mcp)
[](https://opensource.org/licenses/MIT)
[](https://www.typescriptlang.org/)
[](https://nodejs.org/)
[](https://modelcontextprotocol.io/)
---
## Why CamoFox MCP?
AI agents using Playwright get **blocked constantly**. CAPTCHAs, fingerprint detection, IP bans β the web fights back against automation.
**CamoFox MCP** wraps the [CamoFox anti-detection browser](https://github.com/jo-inc/camofox-browser) as an MCP server, giving your AI agent:
- π‘οΈ **Anti-detection fingerprinting** β Each tab gets a unique, human-like browser fingerprint
- β‘ **Fast, token-efficient snapshots** β Accessibility tree snapshots use 90% fewer tokens than screenshots
- π **Built-in search** β Search Google, YouTube, Amazon + 11 more engines without getting blocked
- πͺ **Session persistence** β Import cookies, maintain login state across interactions
- π― **CSS selector fallback** β Target elements even when accessibility refs aren't available
### CamoFox MCP vs Playwright MCP
| Feature | CamoFox MCP | Playwright MCP |
|---------|:-----------:|:--------------:|
| Anti-detection fingerprinting | β
| β |
| Passes bot detection tests | β
| β |
| Search engine macros (14 engines) | β
| β |
| Accessibility snapshots | β
| β
|
| Cookie import/export | β
| Limited |
| Headless support | β
| β
|
| Setup complexity | Medium | Easy |
| Token efficiency | High | High |
### CamoFox MCP vs Other Camoufox MCPs
| Feature | CamoFox MCP | whit3rabbit/camoufox-mcp | baixianger/camoufox-mcp |
|---------|:-----------:|:-----------------------:|:-----------------------:|
| Tools | 27 | 1 | 33 |
| Architecture | REST API client | Direct browser | Direct browser |
| Session persistence | β
| β (destroyed per request) | β
|
| Token efficiency | High (snapshots) | Low (raw HTML) | High (snapshots) |
| Search macros | β
(14 engines) | β | β |
| CSS selector fallback | β
| β | β |
| Active maintenance | β
| β (stale 8mo) | β
|
| Press key support | β
| β | β
|
## Quick Start
### 1. Install CamoFox Browser
Download from [CamoFox releases](https://github.com/jo-inc/camofox-browser/releases) and start:
```bash
./camofox-browser # Starts on port 9377
```
### 2. Configure MCP Client
#### VS Code / Cursor (Recommended)
Add to your MCP settings (`settings.json` or `.vscode/mcp.json`):
```json
{
"servers": {
"camofox": {
"type": "stdio",
"command": "npx",
"args": ["-y", "camofox-mcp@latest"],
"env": {
"CAMOFOX_URL": "http://localhost:9377"
}
}
}
}
```
#### Claude Desktop
Add to `claude_desktop_config.json`:
```json
{
"mcpServers": {
"camofox": {
"command": "npx",
"args": ["-y", "camofox-mcp@latest"],
"env": {
"CAMOFOX_URL": "http://localhost:9377"
}
}
}
}
```
#### From Source (Development)
```bash
git clone https://github.com/redf0x1/camofox-mcp.git
cd camofox-mcp
npm install && npm run build
```
Then configure:
```json
{
"servers": {
"camofox": {
"type": "stdio",
"command": "node",
"args": ["/path/to/camofox-mcp/dist/index.js"],
"env": {
"CAMOFOX_URL": "http://localhost:9377"
}
}
}
}
```
## Tools (27)
### Tab Management
| Tool | Description |
|------|-------------|
| `create_tab` | Create a new tab with anti-detection fingerprinting |
| `close_tab` | Close a tab and release resources |
| `list_tabs` | List all open tabs with URLs and titles |
### Navigation
| Tool | Description |
|------|-------------|
| `navigate` | Navigate to a URL, waits for page load |
| `go_back` | Browser back button |
| `go_forward` | Browser forward button |
| `refresh` | Reload current page |
### Interaction
| Tool | Description |
|------|-------------|
| `click` | Click element by ref (from snapshot) or CSS selector |
| `type_text` | Type text into input fields by ref or CSS selector |
| `press_key` | Press keyboard keys (Enter, Tab, Escape, etc.) |
| `scroll` | Scroll page up or down by pixel amount |
### Batch / Composite
| Tool | Description |
|------|-------------|
| `fill_form` | Fill multiple form fields in one call, with optional submit click |
| `type_and_submit` | Type into a field and press a key (default: Enter) |
| `navigate_and_snapshot` | Navigate to a URL, wait for readiness, and return a snapshot |
| `scroll_and_snapshot` | Scroll then capture a fresh snapshot |
| `batch_click` | Click multiple elements sequentially with per-click results |
### Observation
| Tool | Description |
|------|-------------|
| `snapshot` | Get accessibility tree β PRIMARY way to read pages. Token-efficient |
| `screenshot` | Take visual screenshot as base64 PNG |
| `get_links` | Get all hyperlinks with URLs and text |
### Search
| Tool | Description |
|------|-------------|
| `web_search` | Search via 14 engines: Google, YouTube, Amazon, Bing, DuckDuckGo, Reddit, GitHub, StackOverflow, Wikipedia, Twitter, LinkedIn, Facebook, Instagram, TikTok |
### Session
| Tool | Description |
|------|-------------|
| `import_cookies` | Import cookies for authenticated sessions |
| `get_stats` | Get session statistics and performance metrics |
| `server_status` | Check CamoFox server health and connection |
## Configuration
### Environment Variables
| Variable | Default | Description |
|----------|---------|-------------|
| `CAMOFOX_URL` | `http://localhost:9377` | CamoFox server URL |
| `CAMOFOX_TIMEOUT` | `30000` | Request timeout in ms |
| `CAMOFOX_API_KEY` | β | API key (if CamoFox requires auth) |
## Architecture
```
AI Agent (Claude, GPT, etc.)
β
β MCP Protocol (stdio)
βΌ
βββββββββββββββββββ
β CamoFox MCP β β This package
β (TypeScript) β
ββββββββββ¬βββββββββ
β
β REST API (HTTP)
βΌ
βββββββββββββββββββ
β CamoFox Server β β Anti-detection browser
β (Port 9377) β
ββββββββββ¬βββββββββ
β
β Browser Engine
βΌ
βββββββββββββββββββ
β Camoufox β β Firefox-based, fingerprint spoofing
β (Firefox) β
βββββββββββββββββββ
```
## How It Works
1. **Your AI agent** sends MCP tool calls (e.g., `create_tab`, `navigate`, `snapshot`)
2. **CamoFox MCP** translates these into REST API calls to the CamoFox server
3. **CamoFox server** manages a Camoufox browser with anti-detection features
4. **Each tab** gets a unique fingerprint β different user agent, screen size, WebGL, fonts, etc.
5. **Websites see** what appears to be a normal human browser, not automation
## Anti-Detection Features
CamoFox (via [Camoufox](https://github.com/jo-inc/camofox-browser)) provides:
- β
Unique browser fingerprint per tab
- β
Human-like user agent rotation
- β
WebGL fingerprint spoofing
- β
Canvas fingerprint protection
- β
Screen resolution randomization
- β
Font enumeration protection
- β
Navigator properties masking
- β
Timezone/locale consistency
## Contributing
Contributions are welcome! Please open an issue or submit a PR.
## License
[MIT](LICENSE)
## Acknowledgments
- [CamoFox Browser](https://github.com/jo-inc/camofox-browser) β The anti-detection browser this MCP wraps
- [Camoufox](https://camoufox.com/) β Firefox-based anti-detection browser engine
- [Model Context Protocol](https://modelcontextprotocol.io/) β The protocol standard by Anthropic