Kết nối tác nhân AI với hồ sơ Dolphin {anty} qua chrome-devtools-mcp
Thông tin chung 📜
Với chrome-devtools-mcp, bạn có thể giao hồ sơ trình duyệt Dolphin{anty} cho tác nhân AI điều khiển: Claude Code, Cursor hoặc bất kỳ ứng dụng khách MCP nào khác. Tác nhân có thể tự mở trang, nhấp chuột, điền biểu mẫu, đọc nội dung và chụp ảnh màn hình.
Có một điểm cần lưu ý: không thể khai báo cổng một lần trong cài đặt MCP rồi dùng mãi. Khi hồ sơ được khởi chạy qua API với tham số automation=1, Dolphin{anty} mỗi lần lại cấp cho nó một cổng ngẫu nhiên mới. Vì vậy ứng dụng khách MCP không chạy trực tiếp chrome-devtools-mcp mà chạy một script wrapper nhỏ: script này tìm cổng hiện tại trước, sau đó mới chuyển tiếp.
Cách script tìm cổng:

- Hồ sơ đã mở ở chế độ tự động hóa → script lấy cổng từ tệp dịch vụ của hồ sơ
- Hồ sơ đang đóng → script tự khởi chạy hồ sơ qua API và lấy cổng từ phản hồi
Sau đó chrome-devtools-mcp kết nối với hồ sơ và tác nhân có thể làm việc với nó.
ℹ️ Nếu bạn chưa từng dùng tự động hóa, nên đọc trước bài Tự động hóa cơ bản Dolphin {anty}: bài này giải thích chi tiết cách khởi chạy hồ sơ qua API và cổng được lấy từ đâu.
Cần chuẩn bị ✅
- Gói trả phí của Dolphin{anty}. Gói Free không hỗ trợ tự động hóa, yêu cầu khởi chạy sẽ trả về lỗi 402
- Dolphin{anty} đang chạy và đã đăng nhập. Có thể đăng nhập theo cách thông thường hoặc bằng API token
- Node.js 18 trở lên (bản LTS nào cũng được). Tải tại nodejs.org
- Ứng dụng khách MCP có thể chạy máy chủ cục bộ (stdio): Claude Code, Cursor, VS Code, Windsurf, Claude Desktop và các ứng dụng khác
- ID của hồ sơ cần kết nối. ID hiển thị ở góc trên bên phải cửa sổ chỉnh sửa hồ sơ trong Dolphin{anty}
⚠️ Hồ sơ phải được đóng trước khi máy chủ MCP khởi động
Nếu mở hồ sơ từ giao diện Dolphin{anty} theo cách thông thường, hồ sơ sẽ không có cổng gỡ lỗi và tác nhân không thể kết nối. Script sẽ tự khởi chạy hồ sơ ở đúng chế độ.
Bước 1. Lưu script wrapper 💾
Một script dùng chung cho mọi hệ điều hành: macOS, Windows và Linux.
- Tạo một thư mục cố định cho script, ví dụ
~/mcp/trên macOS và Linux hoặcC:\mcp\trên Windows - Tạo trong đó tệp
dolphin-devtools-mcp.mjs - Dán đoạn mã bên dưới vào tệp và lưu lại
Script làm gì:
- Tìm tệp
DevToolsActivePorttrong thư mục hồ sơ. Nếu tệp tồn tại và cổng phản hồi, dùng cổng đó - Nếu không, khởi chạy hồ sơ bằng yêu cầu
GET http://127.0.0.1:3001/v1.0/browser_profiles/<ID>/start?automation=1và lấy cổng từ trườngautomation.porttrong phản hồi - Chạy chrome-devtools-mcp với cổng đã tìm được. Các cờ
--no-usage-statisticsvà--no-performance-cruxtắt việc gửi thống kê và địa chỉ trang tới Google
⚠️ Nếu API cục bộ không chạy trên cổng 3001
Thông thường API cục bộ của Dolphin{anty} chạy trên cổng 3001, nhưng nếu cổng này đang bị chương trình khác dùng, ứng dụng sẽ lấy cổng khác. Cổng hiện tại hiển thị trong cửa sổ Health, mở từ thanh dưới cùng của Dolphin{anty}. Khi đó cần thay 3001 trong script bằng cổng hiện tại (xuất hiện ở hai chỗ).
Hồ sơ Dolphin{anty} được lưu ở đây (script tự tìm thư mục, phần này chỉ để tham khảo):
~/Library/Application Support/dolphin_anty/browser_profiles/<ID>/data_dir/
%APPDATA%\dolphin_anty\browser_profiles\<ID>\data_dir\
~/.config/dolphin_anty/browser_profiles/<ID>/data_dir/
Bước 2. Kết nối máy chủ với ứng dụng khách MCP 🔌
Mỗi hồ sơ được kết nối như một máy chủ MCP riêng với tên riêng.
Chạy một lệnh trong terminal từ thư mục dự án:
claude mcp add dolphin-123456789 -- node /Users/USERNAME/mcp/dolphin-devtools-mcp.mjs 123456789
Trong đó USERNAME là tên người dùng trong hệ thống, còn 123456789 là ID hồ sơ. Trên Windows, đường dẫn tới script sẽ có dạng C:\mcp\dolphin-devtools-mcp.mjs.
Mặc định máy chủ chỉ dùng được trong thư mục này. Để dùng trong mọi dự án, cần thêm --scope user ngay sau tên máy chủ:
claude mcp add dolphin-123456789 --scope user -- node /Users/USERNAME/mcp/dolphin-devtools-mcp.mjs 123456789
Thêm mục sau vào cài đặt máy chủ MCP của ứng dụng (Windsurf và Claude Desktop cũng thiết lập tương tự):
{
"mcpServers": {
"dolphin-123456789": {
"command": "node",
"args": ["/Users/USERNAME/mcp/dolphin-devtools-mcp.mjs", "123456789"]
}
}
}
Trong đó USERNAME là tên người dùng trong hệ thống, còn 123456789 là ID hồ sơ.
Trên Windows, đường dẫn trong JSON dùng hai dấu gạch chéo ngược:
"args": ["C:\\mcp\\dolphin-devtools-mcp.mjs", "123456789"]
ℹ️ Nếu ứng dụng không tìm thấy node, cần ghi đường dẫn đầy đủ tới node vào trường command. Có thể xem đường dẫn bằng lệnh which node trên macOS và Linux hoặc where node trên Windows.
Bước 3. Kiểm tra kết nối 🔍
Nếu mọi thứ được thiết lập đúng, hồ sơ sẽ tự mở khi ứng dụng khách MCP khởi động và tác nhân sẽ thấy các tab của hồ sơ.
- Đóng hồ sơ trong Dolphin{anty} nếu đang mở
- Khởi động lại ứng dụng khách MCP hoặc bắt đầu phiên mới: máy chủ kết nối khi khởi động. Lần chạy đầu sẽ lâu hơn bình thường vì chrome-devtools-mcp được tải từ internet
- Kiểm tra trạng thái máy chủ. Trong Claude Code dùng lệnh
claude mcp list, máy chủ phải có trạng thái Connected. Ở các ứng dụng khác, trạng thái nằm trong cài đặt MCP - Yêu cầu tác nhân: "Hiển thị danh sách các tab đang mở". Tác nhân sẽ gọi công cụ
list_pagesvà hiển thị các tab của hồ sơ
✅ Xong! Giờ tác nhân có khoảng 30 công cụ, trong đó có navigate_page, click, fill_form, take_snapshot, take_screenshot và list_pages.
Bảo mật và giới hạn 🛡️
⚠️ Tác nhân có toàn quyền truy cập hồ sơ
Tác nhân thấy mọi tab của hồ sơ và có thể đọc, thay đổi dữ liệu ở bất kỳ tab nào: email, tài khoản quảng cáo, trang thanh toán, ví trong tiện ích mở rộng. Vì vậy chỉ nên kết nối những hồ sơ mà tác nhân được phép làm việc. Tốt nhất là tạo một hồ sơ riêng cho tác nhân, không có phiên đăng nhập thừa.
- Hồ sơ mở khi ứng dụng khách MCP khởi động, không phải lúc gửi yêu cầu cho tác nhân. Nếu điều này gây bất tiện, có thể chỉ bật máy chủ trong lúc làm việc. Trong Claude Code, xóa máy chủ bằng lệnh
claude mcp remove dolphin-123456789 - Sau khi làm việc, hồ sơ vẫn mở cùng cổng gỡ lỗi. Cổng chỉ truy cập được từ máy tính này, nhưng các chương trình cục bộ có thể kết nối tới nó. Cần đóng hồ sơ trong Dolphin{anty} hoặc gửi yêu cầu
GET http://127.0.0.1:3001/v1.0/browser_profiles/123456789/stop - Cờ
--autoConnectkhông dùng được với Dolphin{anty}. Cờ này tìm thư mục của Chrome thông thường, còn hồ sơ Dolphin{anty} được lưu ở nơi khác