开发者与自动化

用 Playwright、本地 API 和 MCP 自动化指纹浏览器

AliasMode 提供三种自动化方式:本地 API、脚本库和 MCP 服务器。三种都免费,按你的技术栈选择。

一句话回答

AliasMode 的本地 API 兼容 AdsPower 的 /api/v1 接口,调用 browser/start 启动环境并拿到 CDP 地址,再用 Playwright 的 connectOverCDP 连接即可。不写外部程序的话,可以在应用内的脚本库运行 JavaScript 或 Python 脚本;想让 Claude Code、Codex 等 AI 智能体直接操作环境,就用 MCP 服务器。

方式一:本地 API + Playwright

AliasMode 桌面端默认在 http://127.0.0.1:50400 提供本地 API,实现了 AdsPower /api/v1 接口的一个子集:状态检查、环境的列表/创建/更新/删除、分组、浏览器启动和停止、Cookie 和缓存。没有列在文档里的 AdsPower 接口不要默认可用。

流程是三步:用 /api/v1/user/list 找到环境 ID;调用 /api/v1/browser/start?user_id= 启动环境,从返回的 data.ws.puppeteer 读取 CDP 地址;再用 Playwright 的 chromium.connectOverCDP 连接。连接后的浏览器使用该环境自己的数据、代理、Cookie 和登录状态。这种方式适用于 Chromium 环境。

返回格式是 { code, msg, data },code 为 0 表示成功。HTTP 状态正常时 code 也可能是 -1,两个都要检查。脚本结束时先断开 Playwright,再调用 browser/stop 停止环境。

// 先用 curl 'http://127.0.0.1:50400/api/v1/user/list' 找到环境 ID
const res = await fetch('http://127.0.0.1:50400/api/v1/browser/start?user_id=' + profileId);
const { data } = await res.json();
const browser = await chromium.connectOverCDP(data.ws.puppeteer);
const context = browser.contexts()[0];
// 在已登录的环境里执行自动化

await browser.close();
await fetch('http://127.0.0.1:50400/api/v1/browser/stop?user_id=' + profileId);
  1. 调用失败时,先确认 AliasMode 桌面端已经打开,并用 curl http://127.0.0.1:50400/api/v1/status 检查接口是否返回 JSON。
  2. 确认环境 ID 来自 /api/v1/user/list,并且这个环境仍然存在。
  3. 同时检查 HTTP 状态和返回里的 code、msg。没有拿到 CDP 地址,就按启动失败处理。
  4. 删除环境前先停止它的浏览器。同一个环境同一时间只交给一个自动化程序操作,避免动作互相覆盖。

方式二:脚本库,多环境并行运行

在应用的“脚本”页面直接编写 JavaScript 或 Python 的 Playwright 脚本。Windows 版已内置 Node.js、Python 和 Playwright,不需要另外安装。脚本在 AliasMode Firefox 和 Chromium 环境上都能运行。

运行时选择一个、多个环境或整个文件夹,设置同时运行的浏览器数量(默认 10,设为 1 就逐个运行),日志实时显示,随时可以停止。并行运行时每个浏览器仍使用自己的会话和代理。公开脚本库里的社区脚本可以先读源码,再导入一份私有副本。

async def run(page, profile, log, **_):
    await page.goto('https://example.com')
    log(profile['name'], await page.title())

方式三:MCP 服务器,让 AI 智能体操作环境

MCP(Model Context Protocol)是 AI 客户端调用外部工具的标准协议。AliasMode 安装包自带 MCP 服务器,提供列出、创建、删除环境,打开和关闭浏览器等工具,以及在选中浏览器里点击、输入、截图的 Playwright 工具。

本地 MCP 通过 stdio 运行在保存环境的电脑上,支持 Claude Code、Codex 等客户端,本地模式下不需要账号。在安装目录运行 aliasmode-mcp setup --yes,可以把 AliasMode 注册到检测到的客户端。远程 MCP 通过 AliasMode 云端发布同样的工具,Claude.ai 和 ChatGPT 用 OAuth 连接,需要云端模式和一台已登录、正在运行的 Windows 电脑。

如果桌面端没有打开,本地 MCP 服务器会在后台启动它并等待就绪,定时运行的智能体任务不会因为没人打开应用而失败。打开浏览器的工具会同时选中这个浏览器,之后的 Playwright 操作都在它里面执行,使用该环境自己的数据、代理和指纹。

三种自动化方式对比

AliasMode 自动化方式对比
方式适合场景语言是否需要账号运行位置
本地 API + Playwright已有 AdsPower 脚本,或自己编排任务任意语言调用 HTTP,Playwright 连接 CDP不需要只能在本机回环地址调用
脚本库在多个环境上批量跑重复任务JavaScript、Python运行不需要;发布脚本需登录云端应用内运行
MCP 服务器让 AI 智能体用自然语言操作环境无需编程本地 stdio 不需要;远程 MCP 需要云端模式本地 stdio 或经云端的远程 MCP

自动化常见问题

AdsPower 的脚本能直接用吗?

大部分常用接口可以。AliasMode 本地 API 兼容 AdsPower /api/v1 的一个子集,包括 browser/start、browser/stop、user/list、group/list 等,通常把地址改成 127.0.0.1:50400 即可。没有实现的接口不能用,迁移前请对照英文文档里的接口列表。

指纹浏览器自动化支持 Python 吗?

支持。脚本库可以直接写 Python 的 Playwright 脚本;外部程序也可以用 Python 调用本地 API,再通过 CDP 连接。

什么是 MCP?

MCP 是让 AI 客户端调用外部工具的协议。接入 AliasMode 的 MCP 服务器后,Claude Code、Codex、Claude.ai 或 ChatGPT 可以直接打开环境、浏览网页、填写表单。

能远程控制环境吗?

本地 API 不能远程开放,它没有身份验证。需要远程控制时用远程 MCP:开启云端模式,保持 Windows 电脑登录并运行,再用 OAuth 连接 Claude.ai 或 ChatGPT。