Cách quản lý profile Dolphin Anty bằng AI

Cách quản lý profile Dolphin Anty bằng AI

Hướng dẫn tự động hóa với MCP

Các tác nhân AI hiện đại không chỉ có thể trả lời câu hỏi và viết văn bản mà còn thực hiện nhiều thao tác khác nhau trong trình duyệt: mở trang, nhấp vào nút, điền biểu mẫu, đọc nội dung website và kiểm tra kết quả. Bạn cũng có thể kết nối AI với các profile trình duyệt 🚀 Dolphin Anty bằng chrome-devtools-mcp – một máy chủ MCP cung cấp cho AI các công cụ để điều khiển trình duyệt. Trong bài viết này, chúng tôi sẽ giải thích cách hoạt động của cơ chế tự động hóa, vì sao cần thêm một script và cách kết nối với Dolphin Anty.

Những công cụ cần thiết để kết nối tác nhân AI

Để thiết lập tự động hóa, bạn sẽ cần:

  • Tác nhân AI – chương trình sử dụng AI, nhận nhiệm vụ từ người dùng và có thể thực hiện các thao tác thông qua những công cụ được kết nối. Trong trường hợp này, bạn có thể sử dụng Claude Code, Cursor, VS Code, Windsurf và các client tương thích khác.
  • MCP (Model Context Protocol) – tiêu chuẩn cho phép tác nhân AI kết nối với các công cụ bên ngoài và sử dụng chúng.
  • chrome-devtools-mcp – máy chủ MCP có sẵn, cung cấp cho AI các công cụ để điều khiển trình duyệt.
  • Profile trong Dolphin Anty – profile trình duyệt nơi AI sẽ thực hiện các thao tác.

Cuối cùng, bạn sẽ có một hệ thống tự động hóa hoạt động theo quy trình sau:

  1. Giao nhiệm vụ cho tác nhân AI;
  2. Gửi yêu cầu đến chrome-devtools-mcp thông qua MCP;
  3. Điều khiển profile trong Dolphin Anty.

Cách kết nối chrome-devtools-mcp với Dolphin Anty

Kết nối chrome-devtools-mcp với profile Dolphin Anty cho phép trao quyền điều khiển profile cho tác nhân AI, để tác nhân tự thực hiện tất cả các thao tác cần thiết.

👉 Cần lưu ý rằng tác nhân không làm việc với toàn bộ trình duyệt antidetect mà chỉ với một profile cụ thể.

Tác nhân sẽ có toàn quyền truy cập vào profile này: các tab đang mở, cookie, phiên đăng nhập, extension và những dữ liệu khác. Vì vậy, chỉ nên kết nối những profile 📣 không chứa thông tin nhạy cảm.

Cần chuẩn bị gì trước khi thiết lập

Trước khi kết nối, hãy kiểm tra xem bạn đã có:

  • Phiên bản Dolphin Anty trả phí vì tính năng tự động hóa không có trong gói miễn phí;
  • Node.js LTS kèm npx – chrome-devtools-mcp sẽ được tải từ npm trong lần chạy đầu tiên;
  • MCP client hỗ trợ các máy chủ MCP cục bộ thông qua stdio;
  • ID của profile Dolphin Anty.

Nên đóng profile sẽ kết nối với MCP trước khi bắt đầu thiết lập, vì sau đó script sẽ tự khởi chạy profile ở chế độ tự động hóa.

Bước 1. Cài đặt Node.js

chrome-devtools-mcp chạy thông qua Node.js, vì vậy trước tiên hãy cài đặt phiên bản LTS mới nhất của Node.js.

Sau khi cài đặt, mở terminal và kiểm tra xem Node.js và npx đã hoạt động chưa:

  1. node -v
  2. npx -v

Cả hai lệnh đều phải trả về số phiên bản đã cài đặt.

Bước 2. Lấy ID profile Dolphin Anty

Để kết nối, bạn sẽ cần ID dạng số của profile. ID này có thể được tìm thấy ngay trong giao diện Dolphin Anty.

Profile ID Dolphin Anty

Script sẽ sử dụng ID này để xác định chính xác profile cần khởi chạy.

Bước 3. Tạo script để kết nối

Để chrome-devtools-mcp có thể điều khiển trình duyệt bên trong profile Dolphin Anty, nó cần kết nối với trình duyệt đang chạy thông qua giao diện gỡ lỗi từ xa của Chrome. Kết nối được thực hiện thông qua cổng cục bộ.

Vấn đề là Dolphin Anty không sử dụng một cổng cố định. Mỗi khi khởi chạy profile thông qua Local API với tham số automation=1, profile có thể được cấp một cổng mới.

Vì vậy, không thể thiết lập trước một cổng cố định trong cấu hình chrome-devtools-mcp. Cần có một 📹 script để khi khởi chạy sẽ tìm cổng hiện tại của profile và truyền cổng đó cho chrome-devtools-mcp.

Tạo file dolphin-devtools-mcp.mjs và thêm đoạn code sau:

// chrome-devtools-mcp cho profile Dolphin Anty.

// Chạy: node dolphin-devtools-mcp.mjs \<ID profile>

import { spawn } from 'node:child_process';

import { readFileSync } from 'node:fs';

import { homedir } from 'node:os';

import { join } from 'node:path';

const id = process.argv[2];

if (!id) {

  console.error(

    'Nhập ID profile: node dolphin-devtools-mcp.mjs \<ID>'

  );

  process.exit(1);

}

const api =

  '[http://127.0.0.1:3001/v1.0/browser_profiles](http://127.0.0.1:3001/v1.0/browser_profiles)';

const appData =

  process.env.APPDATA ||

  (process.platform === 'darwin'

    ? join(homedir(), 'Library', 'Application Support')

    : join(homedir(), '.config'));

const portFile = join(

  appData,

  'dolphin_anty',

  'browser_profiles',

  id,

  'data_dir',

  'DevToolsActivePort'

);

// Profile đã được mở ở chế độ tự động hóa: lấy cổng từ DevToolsActivePort.

async function portFromFile() {

  try {

    const port = readFileSync(portFile, 'utf8')

      .split('\n')[0]

      .trim();

    const res = await fetch(

      \`http\://127.0.0.1:${port}/json/version\`,

      {

        signal: AbortSignal.timeout(2000),

      }

    );

    return res.ok ? port : null;

  } catch {

    return null;

  }

}

// Nếu chưa, khởi chạy profile thông qua Local API với automation=1.

async function startProfile() {

  let res;

  let body;

  try {

    res = await fetch(

      \`api/{id}/start?automation=1\`,

      {

        signal: AbortSignal.timeout(120000),

      }

    );

    body = await res.text();

  } catch {

    console.error(

      'Dolphin: Local API không phản hồi tại 127.0.0.1:3001. ' +

      'Hãy khởi chạy Dolphin Anty và đăng nhập vào tài khoản.'

    );

    process.exit(1);

  }

  let port = null;

  try {

    port = JSON.parse(body).automation?.port;

  } catch {}

  if (port) {

    return String(port);

  }

  if (body.includes('E_BROWSER_RUN_DUPLICATE')) {

    console.error(

      \`Dolphin: profile ${id} đã được mở mà không bật chế độ tự động hóa.\n\` +

      'Hãy đóng profile và khởi động lại máy chủ MCP.'

    );

  } else {

    console.error(

      \`Dolphin: không thể khởi chạy profile ${id}: \` +

      \`HTTP ${res.status}\n${body}\`

    );

  }

  process.exit(1);

}

const port = (await portFromFile()) ?? (await startProfile());

const win = process.platform === 'win32';

const child = spawn(

  win ? 'npx.cmd' : 'npx',

  [

    '-y',

    'chrome-devtools-mcp@latest',

    \`--browser-url=http\://127.0.0.1:${port}\`,

    '--no-usage-statistics',

    '--no-performance-crux',

  ],

  {

    stdio: 'inherit',

    shell: win,

  }

);

for (const signal of ['SIGINT', 'SIGTERM']) {

  process.on(signal, () => child.kill(signal));

}

child.on('exit', (code) => {

  process.exit(code ?? 0);

});

Lưu file vào 📁 một thư mục riêng:

  • macOS: ~/mcp/dolphin-devtools-mcp.mjs
  • Windows: C:\mcp\dolphin-devtools-mcp.mjs
  • Linux: ~/mcp/dolphin-devtools-mcp.mjs

Script này dùng để tự động kết nối Dolphin Anty với chrome-devtools-mcp. Trước tiên, script kiểm tra file DevToolsActivePort trong thư mục của profile. Vị trí thư mục này phụ thuộc vào hệ điều hành:

  • macOS: ~/Library/Application Support/dolphin_anty/browser_profiles/<ID>/data_dir/
  • Windows: %APPDATA%\dolphin_anty\browser_profiles\<ID>\data_dir\
  • Linux: ~/.config/dolphin_anty/browser_profiles/<ID>/data_dir/

Nếu profile đã được khởi chạy ở chế độ tự động hóa, có thể lấy cổng hiện tại của profile từ file này.

Nếu profile chưa được khởi chạy, script sẽ gửi yêu cầu đến Local API của Dolphin Anty:
http://127.0.0.1:3001/v1.0/browser_profiles/<ID>/start?automation=1

Dolphin sẽ khởi chạy profile và trả về cổng tự động hóa.

Sau đó, script khởi chạy chrome-devtools-mcp và truyền cổng đã tìm được cho máy chủ này.

Bước 4. Thêm script vào MCP client

Bây giờ, bạn cần cấu hình MCP client sử dụng script đã tạo thay vì trực tiếp sử dụng chrome-devtools-mcp.

Ví dụ, với Claude Code, hãy chạy trong terminal:
claude mcp add dolphin-123456789 -- node /Users/you/mcp/dolphin-devtools-mcp.mjs 123456789

Trong đó:

  • dolphin-123456789 – tên của máy chủ MCP;
  • /Users/you/mcp/dolphin-devtools-mcp.mjs – đường dẫn đến script đã tạo;
  • 123456789 – ID profile Dolphin Anty

Bước 5. Kiểm tra kết nối

Trước khi kiểm tra, hãy đóng profile Dolphin Anty cần dùng nếu profile đang được mở theo cách thông thường. Sau đó khởi động lại MCP client hoặc tạo một session mới.

Trong lần chạy đầu tiên, npx có thể cần thêm một chút thời gian: nó sẽ tải gói chrome-devtools-mcp nếu gói này chưa có trên máy tính.

Trong Claude Code, bạn có thể kiểm tra trạng thái kết nối bằng lệnh:
claude mcp list

Trong danh sách, máy chủ dolphin-123456789 phải hiển thị ở trạng thái đã kết nối.

Sau đó, bạn có thể kiểm tra hoạt động trực tiếp thông qua tác nhân AI. Ví dụ, hãy yêu cầu: «Hiển thị danh sách các tab đang mở».

Để thực hiện yêu cầu này, tác nhân sử dụng công cụ list_pages do chrome-devtools-mcp cung cấp. Kết quả trả về sẽ chứa thông tin về các tab đang mở trong trình duyệt của profile Dolphin Anty đã kết nối.

Nếu danh sách tab hiển thị, kết nối đã được thiết lập chính xác.

Hạn chế và bảo mật

  1. Profile được khởi chạy cùng MCP client. Script sẽ khởi chạy profile khi MCP client thiết lập kết nối với máy chủ. Vì vậy, profile có thể mở ngay cả trước khi bạn giao nhiệm vụ đầu tiên cho tác nhân. Nếu chỉ thỉnh thoảng cần máy chủ này, sau khi sử dụng có thể xóa máy chủ khỏi Claude Code bằng lệnh: claude mcp remove dolphin-123456789
  2. Sau khi hoàn tất công việc, profile có thể vẫn mở. Cổng gỡ lỗi vẫn tiếp tục hoạt động cùng với profile. Cổng này chỉ có thể truy cập thông qua 127.0.0.1 nên không thể kết nối từ máy tính khác. Tuy nhiên, các chương trình khác trên máy tính của bạn vẫn có thể truy cập cổng này. Sau khi sử dụng, bạn có thể đóng profile trong Dolphin Anty hoặc dừng profile thông qua Local API: GET http://127.0.0.1:3001/v1.0/browser_profiles/123456789/stop
  3. Sử dụng profile riêng cho tự động hóa. Vì tác nhân có quyền truy cập vào trình duyệt của profile, không nên kết nối profile đang chứa các session hoạt động không cần thiết và dữ liệu nhạy cảm. Tốt hơn nên sử dụng một profile riêng cho những tác vụ này.
  4. –autoConnect không phù hợp với cách thiết lập này. Chế độ này được thiết kế để kết nối với Chrome thông thường nên sẽ tìm thư mục dữ liệu của Chrome. Profile Dolphin Anty được lưu ở vị trí khác, vì vậy cần kết nối thông qua –browser-url với cổng do script xác định.

Các lỗi thường gặp

Thông báo ❌ lỗi script được hiển thị trong log của máy chủ MCP được kết nối với client của bạn.

LỗiNguyên nhânCách xử lý
«Profile đã được mở mà không bật chế độ tự động hóa»Profile đang được mở từ giao diện Dolphin AntyĐóng profile và khởi động lại máy chủ MCP
«Local API không phản hồi tại 127.0.0.1:3001»Dolphin Anty chưa được khởi chạy hoặc chưa đăng nhậpKhởi chạy Dolphin Anty và đăng nhập vào tài khoản
HTTP 402, «On free plan you can’t use automation»Đang sử dụng gói FreeChuyển sang gói trả phí
Máy chủ không khởi động, không tìm thấy node hoặc npxNode.js chưa được cài đặt hoặc MCP client không thể truy cậpCài đặt Node.js LTS. Trong cấu hình MCP client, chỉ định đường dẫn đầy đủ đến node
Lần chạy đầu tiên không phản hồi trong thời gian dàinpx đang tải chrome-devtools-mcpChờ quá trình tải hoàn tất. Trong các lần chạy sau, gói sẽ được lấy từ cache
Tác nhân không thấy profile cần thiếtCấu hình đang sử dụng ID của profile khácKiểm tra ID profile trong các tham số của máy chủ MCP

Kết luận

Sự kết hợp 🔥 Dolphin Anty, chrome-devtools-mcp và tác nhân AI cho phép điều khiển profile trình duyệt bằng các lệnh văn bản thông thường. Script bổ sung sẽ tự động khởi chạy profile cần thiết và truyền cổng hiện tại của profile cho máy chủ MCP, vì vậy bạn không cần thiết lập kết nối thủ công mỗi lần khởi chạy.

Tận dụng tối đa các tính năng chống phát hiện trong trình duyệt của bạn.

Đăng ký và nhận 5 hồ sơ miễn phí

Nhận hồ sơ miễn phí

Мы используем файлы cookie для сбора информации об аутентификации, вашем устройстве, действиях при просмотре и шаблонах.
Чтобы узнать больше, ознакомьтесь с нашей Политикой конфиденциальности и Условия использования .
Нажимая «Я принимаю» или используя наш веб-сайт, вы соглашаетесь на использование нами файлов cookie.

Chấp nhận