ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

mcp-helm MCP 服务说明文档

mcp-helm MCP 服务说明文档

1. 服务概述

一句话简介:驱动真实的Chrome浏览器会话,实现Claude副驾驶模式,具备交接感知能力

  • 服务名称:mcp-helm
  • 版本号:v0.1
  • 开发者/提供方:flying-pisces
  • 协议类型:MCP (Model Context Protocol)

2. 核心功能

该MCP服务提供以下主要功能:

  • 浏览器连接:连接到真实的Chrome浏览器(端口9222),而非启动新的浏览器实例
  • 标签页管理:列出所有打开的标签页,切换活动标签页
  • 页面截图:截取页面PNG图像,获取URL和标题,检测交接触发器(2FA提示、验证码等)
  • 元素检查:通过可访问性树获取交互元素的编号列表
  • 点击操作:通过ID、文本或CSS选择器点击元素,返回截图差异检测结果
  • 文本输入:在字段中输入文本,支持自动提交
  • 页面导航:导航到指定URL
  • 等待机制:等待特定文本或选择器出现
  • 交接感知:检测敏感操作(2FA、支付确认等)并暂停等待人工接管

3. 使用场景

该服务适合在以下情况下使用:

  • Apple服务自动化:自动化App Store Connect等Apple服务的操作流程
  • Cloudflare管理:自动化Cloudflare仪表板任务,包括导航和交互
  • Google Play Console:自动化Google Play Console和其他Google服务的操作
  • Stripe仪表板:自动化Stripe仪表板操作,包括导航、点击和表单填写
  • Vercel操作:自动化Vercel仪表板操作,通过实时Chrome会话驱动
  • 需要登录态的自动化:利用已有的登录状态、Cookie和2FA,避免重复登录

4. 接入方式

4.1 服务端点

该服务需要连接到本地Chrome浏览器的远程调试端口:

  • 调试端口:9222
  • 用户数据目录:~/.chrome-pilot(独立配置文件)
  • 协议:Chrome DevTools Protocol

4.2 认证与权限

该服务使用您已登录Chrome会话中的认证信息:

  • 利用现有Chrome配置文件中的Cookie和登录状态
  • 支持2FA、生物识别等安全验证
  • 交接机制确保敏感操作需要人工确认

4.3 数据格式

服务使用以下数据格式:

  • 截图:PNG格式图像
  • 元素选择:基于可访问性树的语义ID
  • 配置文件:JSON格式

4.4 服务器配置

在MCP客户端配置中添加服务:

{ "mcpServers": { "helm": { "command": "mcp-helm" } } }

5. 接口定义

工具名称功能描述参数说明
attach连接到Chrome(端口9222)无参数,必须首先调用
list_tabs列出所有打开的标签页无参数
focus_tab切换活动标签页index: 标签索引 或 url: URL子串
screenshot截取页面截图返回PNG、URL、标题和交接触发器
inspect检查交互元素返回可访问性树中的编号元素列表
click点击元素id: 元素ID / text: 文本 / selector: CSS选择器
type输入文本text: 文本内容, submit: 是否按Enter
navigate导航到URLurl: 目标URL
wait_for等待元素出现text: 文本 或 selector: 选择器
handoff暂停并请求人工接管无参数

6. 快速开始

6.1 环境要求

  • Node.js(建议v16或更高版本)
  • Google Chrome浏览器
  • npm或yarn包管理器

6.2 安装步骤

步骤1:全局安装mcp-helm

npm install -g mcp-helm

步骤2:配置Chrome启动别名

在您的shell配置文件(如~/.bashrc或~/.zshrc)中添加:

alias chrome-pilot='open -a "Google Chrome" --args --remote-debugging-port=9222 --user-data-dir=$HOME/.chrome-pilot'

步骤3:启动可驱动的Chrome

chrome-pilot

这将打开一个独立的Chrome配置文件,在其中登录您需要自动化的服务(Play Console、Stripe等)。Cookie将在多次启动间保持,您只需登录一次。

步骤4:配置MCP客户端

在~/.claude.json中添加服务器配置(见4.4节)

6.3 使用示例

用户:上传AAB文件到Play Store内部测试 Claude:[调用 helm.attach] → [helm.navigate 到 play.google.com/console] → [helm.screenshot] 查看仪表板 → [helm.click "Personalized AI Portfolio Bot"] → ... 继续操作

7. 注意事项

重要提醒

  • 独立Chrome配置文件:必须使用独立的Chrome配置文件(~/.chrome-pilot),因为主Chrome在运行时无法启用远程调试模式
  • 首次登录:在chrome-pilot中登录所需服务后,Cookie将持久化保存
  • 交接机制:当检测到2FA提示、验证码、支付确认或生物识别请求时,服务会自动暂停并等待人工处理

当前限制(v0.1)

  • 不支持Shadow DOM组件(某些Web组件密集型网站)
  • 不支持iframe(需要框架切换功能)
  • 不支持从磁盘上传文件
  • 仅支持Enter键盘快捷键

设计优势

  • 可访问性树而非坐标:使用语义ID而非视觉坐标,避免Retina显示器和高DPI缩放问题
  • 截图差异检测:每次点击后检测页面变化,避免误报成功
  • 基于正则的交接检测:快速、低成本,无常见登录短语误报
  • 无标签管理启发式:attach选择第一个非空白标签,使用list_tabs + focus_tab精确控制

总结

mcp-helm解决了Claude与浏览器交互的"眼手问题",通过连接真实的Chrome会话,利用已有的登录状态和Cookie,实现了安全、高效的浏览器自动化。其交接感知机制确保敏感操作需要人工确认,是自动化云服务管理任务的理想工具。

返回列表