Mcp

Mcp

🚀 浏览器MCP服务器

这是一个模型上下文协议(MCP)服务器,借助 Playwright 并使用 Anchor浏览器 的远程浏览器服务,提供浏览器自动化功能。该服务器使大语言模型(LLMs)能够通过Anchor基于云的浏览器与网页进行交互,这些浏览器内置了代理、隐身功能和高级特性。

✨ 主要特性

  • 远程浏览器执行:使用Anchor浏览器的云基础设施,而非本地浏览器。
  • 内置代理:自动轮换住宅代理并支持地理定位。
  • 隐身与反检测:具备先进的浏览器指纹识别和反机器人检测功能。
  • 快速轻量:使用Playwright的可访问性树,而非基于像素的输入。
  • 对大语言模型友好:无需视觉模型,仅对结构化数据进行操作。
  • 确定性工具应用:避免了基于截图方法常见的歧义问题。

📦 安装指南

要求

  • Node.js 18 或更高版本
  • Anchor浏览器API密钥在此获取
  • VS Code、Cursor、Windsurf、Claude Desktop、Goose或任何其他MCP客户端

开始使用

1. 克隆并构建

由于这是一个自定义的浏览器MCP服务器,你需要在本地进行构建:

# 克隆仓库
git clone https://github.com/anchorbrowser/anchor-mcp.git
cd anchor-mcp

# 安装依赖并构建
npm install
npm run build

2. 获取你的Anchor API密钥

  1. anchorbrowser.io 上注册。
  2. 从仪表盘获取你的API密钥。
  3. 复制你的API密钥(以 sk- 开头)。

3. 配置MCP客户端

Cursor

添加到你的 ~/.cursor/mcp.json 文件中:

{
"mcpServers": {
"anchor-browser": {
"command": "node",
"args": [
"/path/to/anchor-mcp/cli.js"
],
"env": {
"ANCHOR_API_KEY": "sk-your-api-key-here"
}
}
}
}
VS Code

添加到你的MCP配置中:

{
"mcpServers": {
"anchor-browser": {
"command": "node",
"args": [
"/path/to/anchor-mcp/cli.js"
],
"env": {
"ANCHOR_API_KEY": "sk-your-api-key-here"
}
}
}
}
Claude Desktop

添加到你的 claude_desktop_config.json 文件中:

{
"mcpServers": {
"anchor-browser": {
"command": "node",
"args": [
"/path/to/anchor-mcp/cli.js"
],
"env": {
"ANCHOR_API_KEY": "sk-your-api-key-here"
}
}
}
}

4. 重启你的MCP客户端

更新配置后,重启你的MCP客户端(如Cursor、VS Code等)以加载新的服务器。

配置选项

浏览器MCP服务器仅支持必要的配置选项:

node cli.js --help

可用选项

  • --host - 将服务器绑定到的主机(默认:localhost,使用 0.0.0.0 表示所有接口)
  • --port - 用于HTTP传输的监听端口(Docker/服务器模式)

带选项的示例

{
"mcpServers": {
"anchor-browser": {
"command": "node",
"args": [
"/path/to/anchor-mcp/cli.js",
],
"env": {
"ANCHOR_API_KEY": "sk-your-api-key-here"
}
}
}
}

HTTP服务器模式(Docker)

对于Docker或无头服务器环境:

# 作为HTTP服务器运行
ANCHOR_API_KEY="sk-your-key" node cli.js --port 8931 --host 0.0.0.0

然后配置你的MCP客户端使用HTTP端点:

{
"mcpServers": {
"anchor-browser": {
"url": "http://localhost:8931/mcp"
}
}
}

为何选项如此之少?

由于Anchor浏览器在远程处理所有复杂的浏览器管理,大多数传统的浏览器选项都不再必要:

  • 无需选择浏览器 - Anchor使用优化的远程浏览器。
  • 无需配置代理 - Anchor提供内置的代理轮换。
  • 无需管理浏览器配置文件 - 由Anchor的基础设施处理。
  • 无需进行网络过滤 - 使用Anchor的仪表盘进行高级控制。
  • 无需设置视口/设备选项 - 通过Anchor浏览器API进行配置。 这使得MCP服务器保持简单,并专注于关键任务:连接到Anchor的远程浏览器服务。

🔧 技术细节

工作原理

  1. 浏览器会话创建:当你使用浏览器工具时,MCP服务器调用Anchor的API创建一个远程浏览器会话。
  2. 远程连接:使用Chrome DevTools协议(CDP)通过WebSocket连接到远程浏览器。
  3. 工具执行:所有浏览器自动化操作都在Anchor的云基础设施中进行。
  4. 代理与隐身:自动轮换住宅代理并具备先进的反检测功能。
  5. 会话管理:每个会话都是隔离的,并且可以通过Anchor的仪表盘实时查看。

与本地浏览器相比的优势

🌐 全球代理网络

  • 自动轮换住宅代理
  • 针对不同地区进行地理定位
  • 无需配置代理

🛡️ 高级隐身功能

  • 保护浏览器指纹
  • 绕过反机器人检测
  • 真实的浏览器环境

☁️ 云基础设施

  • 无需本地浏览器依赖
  • 一致的浏览器版本
  • 可扩展的执行

📊 监控与调试

  • 实时查看浏览器会话
  • 会话记录和跟踪
  • 网络请求日志

💻 使用示例

可用工具

浏览器MCP服务器提供所有标准的浏览器自动化工具:

核心自动化

  • anchor_navigate - 导航到URL
  • anchor_click - 点击元素
  • browser_type - 在输入框中输入文本
  • browser_snapshot - 获取页面可访问性树
  • browser_take_screenshot - 截图
  • browser_evaluate - 执行JavaScript
  • browser_wait_for - 等待条件满足

标签管理

  • browser_tab_new - 打开新标签页
  • browser_tab_list - 列出打开的标签页
  • browser_tab_select - 在标签页之间切换
  • browser_tab_close - 关闭标签页

高级功能

  • browser_file_upload - 上传文件
  • browser_handle_dialog - 处理警报/确认框
  • browser_network_requests - 查看网络流量
  • browser_pdf_save - 生成PDF(使用 --caps=pdf

常见问题解决

API密钥无效

Error: Missing ANCHOR_API_KEY environment variable

解决方案:确保你的API密钥已正确设置在MCP配置中。

构建错误

npm run build

解决方案:确保你安装了Node.js 18+ 并先运行 npm install

连接问题

检查MCP日志中的Anchor API响应和WebSocket连接状态。

会话限制

每个Anchor API密钥都有会话限制。在 anchorbrowser.io 的仪表盘上查看使用情况。

开发

要修改或扩展浏览器MCP服务器:

# 对src/目录下的TypeScript文件进行更改
# 然后重新构建
npm run build

# 测试你的更改
node cli.js --help

服务器将自动使用Anchor的远程浏览器进行所有操作,提供基于云的浏览器自动化的优势,以及先进的代理和隐身功能。

📄 许可证

本项目采用Apache License 2.0许可 - 详情请参阅 LICENSE 文件。

支持

  • 0 关注
  • 0 收藏,25 浏览
  • system 提出于 2025-10-05 01:15

相似服务问题

相关AI产品