浏览器自动化服务器

Camoufox MCP Server 是一个提供完整浏览器自动化功能的Python服务器,具备反检测能力,适用于需要模拟真实用户行为的自动化任务。

  • by rlgrpe
  • Python
  • 本地部署
  • 10 星标
  • 更新于
在 GitHub 查看 rlgrpe/camoufox-mcp-python

使用说明

迷彩MCP服务器

已弃用:移至 camoufox-browser

此存储库已弃用。 该项目已转移到:

  • 存储库:https://github.com/rlgrpe/camoufox-browser-cli
  • PyPI:https://pypi.org/project/camoufox-browser/

Python MCP(模型上下文协议)服务器提供完全的浏览器自动化 迷彩 反检测能力。

特性

  • 21种浏览器自动化工具 用于完全控制浏览器
  • 反侦测:自动指纹随机化,避免机器人检测
  • 惰性初始化:浏览器仅在第一次工具调用时启动
  • 持续会话:浏览器在工具调用之间保持不变
  • 选项卡管理:支持多个选项卡/页面
  • 表单自动化:填写表单、上传文件、处理对话框

安装

快速入门(uvx-推荐)

uvx camoufox-mcp

使用pipx

pipx run camoufox-mcp

使用pip

pip install camoufox-mcp
camoufox-mcp

来源

# Clone the repository
git clone https://github.com/rlgrpe/camoufox-mcp-python.git
cd camoufox-mcp-python

# Install with uv
uv sync

安装camofox浏览器

安装软件包后,您需要下载迷彩浏览器二进制文件。 该命令取决于您安装软件包的方式:

如果通过uvx安装(推荐)

uvx camoufox fetch

如果通过pipx安装

pipx run camoufox fetch

如果通过pip安装

# macOS
python3 -m camoufox fetch

# Linux
python -m camoufox fetch

# Windows
camoufox fetch

如果从源头安装(紫外线)

uv run python -m camoufox fetch

Linux系统依赖关系

在Linux上,您还需要安装系统依赖项:

# Ubuntu/Debian
sudo apt install -y libgtk-3-0 libx11-xcb1 libasound2

# Arch
sudo pacman -S gtk3 libx11 libxcb cairo libasound alsa-lib

卸载浏览器二进制文件

# Use the same method as installation:
uvx camoufox remove          # if using uvx
pipx run camoufox remove     # if using pipx
camoufox remove              # if using pip
uv run python -m camoufox remove  # if using uv from source

用法

启动服务器

# Using uvx (recommended)
uvx camoufox-mcp

# Using uv (from source)
uv run camoufox-mcp

# Or as a module
python -m camoufox_mcp

添加到克劳德代码

claude mcp add camoufox-mcp -- uvx camoufox-mcp

Claude桌面配置

添加到您的Claude Desktop配置文件中:

{
  "mcpServers": {
    "camoufox-mcp": {
      "command": "uvx",
      "args": ["camoufox-mcp"]
    }
  }
}

或者,如果从源代码运行:

{
  "mcpServers": {
    "camoufox-mcp": {
      "command": "uv",
      "args": [
        "run",
        "--directory",
        "/path/to/camoufox-mcp-python",
        "camoufox-mcp"
      ]
    }
  }
}

工具参考

导航(4个工具)

工具 说明
browser_navigate 导航到URL
browser_navigate_back 返回上一页
browser_snapshot 捕获当前页面的可访问性快照
browser_wait_for 等待文本出现/消失或指定时间

互动(6个工具)

工具 说明
browser_click 点击一个元素
browser_type 在元素中键入文本
browser_hover 将鼠标悬停在元素上
browser_drag 在两个元素之间拖放
browser_press_key 按键盘上的一个键
browser_select_option 在下拉列表中选择一个选项

第页(4个工具)

工具 说明
browser_evaluate 在页面或元素上评估JavaScript
browser_console_messages 获取控制台消息
browser_network_requests 获取网络请求
browser_take_screenshot 截图

表格(3个工具)

工具 说明
browser_fill_form 填写多个表单字段
browser_file_upload 上传文件
browser_handle_dialog 处理对话框(警告、确认、提示)

会话(4个工具)

工具 说明
browser_tabs 列出、创建、关闭或选择选项卡
browser_resize 调整浏览器窗口大小
browser_close 关闭浏览器
browser_install 安装camofox浏览器

配置

浏览器可以通过以下方式配置 BrowserConfig 上课中 camoufox_mcp/config.py。可用选项:

参数 类型 默认值 说明
os str 无 要欺骗的操作系统(windows/macos/linux)
headless bool/str False 无头模式(或“虚拟”)
humanize bool/float True 类人光标移动
geoip bool True 从IP自动检测地理位置
proxy str/dict 无 代理配置
block_webrtc bool True 阻止WebRTC泄漏
block_webgl bool False 阻止WebGL指纹识别
block_images bool False 块图像加载
locale str 无 浏览器区域设置
viewport dict 无 视口尺寸
enable_cache bool True 启用缓存
timeout int 30000 页面加载超时(毫秒)
wait_strategy str “domcontentloaded” 等待策略
ublock bool False 启用uBlock原点

代理配置示例

proxy = {
    'server': 'http://proxy.example.com:8080',
    'username': 'user',
    'password': 'pass'
}

发展

# Install dev dependencies
uv sync --dev

# Run tests
uv run pytest

# Format code
uv run ruff format

# Lint
uv run ruff check

许可证

MIT许可证-请参阅 许可证 了解详情。

相关项目

  • 迷彩 -此MCP服务器所基于的反检测浏览器
  • 主控程序 -模型上下文协议规范
  • FastMCP -用于构建MCP服务器的Python框架