铁MCP🌐
  ](https://rubygems.org/gems/ferrum-mcp) ](https://rubygems.org/gems/ferrum-mcp) ](https://github.com/Eth3rnit3/FerrumMCP/actions/workflows/docker-publish.yml) ](https://hub.docker.com/r/eth3rnit3/ferrum-mcp)  
用于模型上下文协议(MCP)的浏览器自动化服务器,使AI助手能够通过标准化的界面与网页进行交互。
______________________________________________________________________
🚀 快速链接
| 文档 | 描述 |
|---|---|
| 入门指南 | 安装、设置和第一步 |
| 使用Claude Desktop集成完成Docker指南 | |
| API 参考 | 所有27+工具的完整文档 |
| 配置 | 环境变量和高级配置 |
| 故障排除 | 常见问题和解决方案 |
| 部署 | 生产部署指南 |
| BotBrowser集成 | 防检测浏览器设置 |
______________________________________________________________________
📖 目录
______________________________________________________________________
什么是FerrumMCP?
FerrumMCP是一种 浏览器自动化服务器 这实现了 模型上下文协议(MCP) 通过Anthropic。它为人工智能助手提供了导航网站、与元素交互、提取内容以及通过简单、标准化的界面执行复杂浏览器自动化任务的能力。
主要优势:
- 🤖 AI原生设计:专为克劳德等人工智能助手打造
- 🔄 基于会话:具有隔离配置的多个并发浏览器会话
- 🌐 多浏览器:支持Chrome、Edge、Brave和BotBrowser
- 🧩 智能自动化:Cookie横幅检测和验证码解决(⚠️ 实验)
- 📦 轻松部署:Docker、systemd或Kubernetes就绪
- 🔌 双重运输:HTTP和STDIO实现最大兼容性
______________________________________________________________________
特性
核心能力
✅ 会话管理
- 创建/管理多个浏览器会话
- 自动清理(30分钟空闲超时)
- 每个会话的自定义浏览器配置
✅ 导航
- 带有网络空闲检测的URL导航
- 浏览器历史记录(后退/前进)
- 页面刷新
✅ 交互
- 点击、悬停、拖放
- 填写表格时出现打字延迟
- 键盘输入模拟
- 智能cookie横幅接受 (8种策略,多语言)
- 基于人工智能的验证码解决方案 (Whisper集成-⚠️ 实验中,开发中)
✅ 提取
- 文本和HTML内容提取
- 屏幕截图(base64)
- 页面元数据(标题、URL)
- 基于XPath的文本搜索
✅ 高级
- JavaScript执行和评估
- Cookie管理(获取/设置/清除)
- 影子DOM查询
- 元素属性检索
企业功能
🦾 BotBrowser集成
- 反检测浏览器自动化
- 使用加密配置文件进行指纹管理
- 备注:需要有效的试用/高级配置文件(演示配置文件会导致会话不稳定)
🔒 安全 (v1.0+)
- 会话限制
- 速率限制
- 健康检查端点
- 非root Docker用户
📊 可观测性
- 基于文件的日志记录
- 健康检查
- 指标终点(计划)
______________________________________________________________________
快速开始
选项1:Docker(推荐)
标准图像 (仅铬):
docker pull eth3rnit3/ferrum-mcp:latest
docker run --security-opt seccomp=unconfined -p 3000:3000 eth3rnit3/ferrum-mcp:latestBotBrowser图片 (反检测):
docker pull eth3rnit3/ferrum-mcp:botbrowser
docker run --security-opt seccomp=unconfined -p 3000:3000 \
-v /path/to/bot_profiles:/profiles:ro \
-e "BROWSER_BOTBROWSER=botbrowser:/opt/botbrowser/chrome:BotBrowser:Anti-detection browser" \
-e "BOT_PROFILE_MACOS_1=/profiles/profile_1.enc:Profile 1:Trial profile 1" \
eth3rnit3/ferrum-mcp:botbrowser选项2:宝石安装
gem install ferrum-mcp
ferrum-mcp start选项3:来源
git clone https://github.com/Eth3rnit3/FerrumMCP.git
cd FerrumMCP
bundle install
ruby bin/ferrum-mcp➡️ 完整安装指南
______________________________________________________________________
文档
入门指南
| 指南 | 说明 |
|---|---|
| 安装 | Docker、gem和源代码安装 |
| Claude桌面设置 | 与克劳德桌面(STDIO)集成 |
| 第一届会议 | 创建您的第一个浏览器自动化 |
配置
API 文档
| 资源 | 描述 |
|---|---|
| API 参考 | 完整的工具文档和示例 |
| 会话管理 | 创建、列出和管理浏览器会话 |
| 导航工具 | URL导航和历史记录 |
| 交互工具 | 点击、填写表格、解决验证码 |
| 提取工具 | 获取内容、截图、元数据 |
| 高级工具 | JavaScript、Cookie、Shadow DOM |
运营
______________________________________________________________________
工具和功能
FerrumMCP提供 27+浏览器自动化工具 分为6类:
1.会话管理(4个工具)
create_session-使用自定义配置创建浏览器会话list_sessions-列出所有活动会话get_session_info-获取详细的会话信息close_session-手动关闭会话
2.导航(4个工具)
navigate-导航到URLgo_back-浏览器后退按钮go_forward-浏览器前进按钮refresh-重新加载当前页面
3.互动(7个工具)
click-点击元素fill_form-填写表单字段press_key-键盘输入hover-鼠标悬停drag_and_drop-拖动元素accept_cookies- 智能cookie横幅检测 (8个策略)solve_captcha- 基于人工智能的验证码解决方案 (⚠️ 实验中,开发中)
4.提取(6个工具)
get_text-提取文本内容get_html-获取HTML内容screenshot-截图get_title-获取页面标题get_url-获取当前URLfind_by_text-XPath文本搜索
5.高级(9个工具)
execute_script-运行JavaScriptevaluate_js-使用返回值评估JavaScriptget_cookies-获取浏览器Cookieset_cookie-设置Cookieclear_cookies-清除Cookieget_attribute-获取元素属性query_shadow_dom-与Shadow DOM交互
6.MCP资源(7个资源)
ferrum://browsers-发现已配置的浏览器ferrum://user-profiles-发现Chrome配置文件ferrum://bot-profiles-发现BotBrowser配置文件ferrum://capabilities-服务器功能
➡️ 完整的API参考资料
______________________________________________________________________
项目资源
发展
社区
链接
| 资源 | URL |
|---|---|
| 仓库 | https://github.com/Eth3rnit3/FerrumMCP |
| 文档 | https://github.com/Eth3rnit3/FerrumMCP/tree/main/docs |
| 发布 | https://github.com/Eth3rnit3/FerrumMCP/releases |
| RubyGems | https://rubygems.org/gems/ferrum-mcp |
______________________________________________________________________
需求
系统要求
- 红宝石:3.2或更高
- 浏览器:铬、铬、Edge或Brave
- 操作系统:Linux、macOS或Windows
可选依赖关系
- 耳语cli:用于验证码解决
- 植物浏览器:用于反检测自动化
- 码头工人:用于集装箱化部署
______________________________________________________________________
贡献
我们欢迎捐款!请查看我们的 贡献指南 了解详情。
快速捐款清单:
- 📖 阅读 贡献.md
- 🐛 使用问题模板查找错误
- ✨ 使用功能请求模板
- ✅ 运行测试:
bundle exec rspec - 📝 更新文档
- 🎨 遵循RuboCop风格
______________________________________________________________________
安全
有关安全漏洞,请发送电子邮件至 eth3rnit3@gmail.com。参见 安全.md 我们的安全政策。
______________________________________________________________________
许可证
FerrumMCP在 MIT许可证.
______________________________________________________________________
鸣谢
内置:
______________________________________________________________________
支持
- 📚 文档: docs/
- 💬 讨论:
- 🐛 问题:
- 📧 电子邮件: eth3rnit3@gmail.com
______________________________________________________________________
Made with ❤️ by Eth3rnit3
Back to Top
