Cơ hội trúng 1 TB lưu lượng truy cập dân cư, iPhone 18 Pro Max cùng + 33 giải thưởng khácNạp $50 = 1 vé tham giaTham gia
Doanh nghiệp

Cách dùng Playwright MCP với Claude Code: tự động hóa trình duyệt và thiết lập proxy

Các script scraping và QA thông thường thường hỏng ngay khi website cập nhật bố cục hoặc đổi tên một class CSS. Kết nối package playwright-mcp với Claude Code CLI sẽ giải quyết vấn đề này. Thông qua Model Context Protocol (MCP), trình duyệt gửi thẳng cho AI agent một bản đồ văn bản gọn gàng của trang. Bạn không còn phải tìm bộ chọn CSS bằng tay hay gửi ảnh chụp màn hình nặng cho mô hình thị giác. Kỹ sư QA, lập trình viên scraper và nhà phân tích điều khiển Chromium, Firefox, WebKit và Microsoft Edge trực tiếp từ terminal, đồng thời định tuyến lưu lượng qua proxy.

TL;DR: tóm tắt nhanh quy trình Claude Playwright MCP

  • Cách hoạt động: package playwright-mcp gửi cho Claude Code một playwright mcp accessibility snapshot nhẹ (browser_snapshot) thay cho hình ảnh nặng, giúp giảm tới 80% lượng token tiêu thụ.

  • Cài đặt bằng một lệnh: chạy claude mcp add playwright -- npx @playwright/mcp@latest sẽ đăng ký playwright mcp server chính thức cho một thư mục riêng, repository chung của nhóm hoặc toàn bộ máy tính.

  • Cách ly profile: kết hợp cờ --isolated với tệp cookie --storage-state (hoặc các thư mục --user-data-dir riêng biệt) cho phép chạy song song nhiều cửa sổ trình duyệt mà không gặp lỗi khóa tệp.

  • Định tuyến proxy: truyền --proxy-server và HTTP_PROXY trong .mcp.json sẽ định tuyến lưu lượng trình duyệt qua proxy di động LTE/5G, proxy ISP dân cư tĩnh hoặc proxy dân cư xoay.

  • Kiểm tra IP trước khi chạy: trước khi khởi chạy tác vụ, hãy kiểm tra uy tín IP bằng công cụ Fraud Score tích hợp trong bảng điều khiển CyberYozh App.

👉 Khám phá danh mục proxy của CyberYozh App theo quốc gia và loại nhà cung cấp

Playwright MCP làm gì bên trong trình duyệt

Playwright mcp khác gì so với các công cụ trình duyệt cũ? Các AI agent thị giác trước đây chụp ảnh toàn màn hình và bấm nút theo tọa độ pixel X và Y gần đúng. Mỗi khi xuất hiện banner khuyến mãi hoặc bố cục responsive dịch chuyển, cú bấm sẽ trượt.

Playwright mcp server chính thức của Microsoft (@playwright/mcp) đọc accessibility tree của trình duyệt thay vì chụp pixel. Lệnh browser_snapshot trả về bản đồ văn bản có cấu trúc của mọi phần tử tương tác trên trang. Mỗi nút, liên kết hoặc ô nhập liệu nhận một thẻ tham chiếu chính xác - chẳng hạn textbox "Search catalog" [ref=e5] hoặc button "Apply filter" [ref=e12]. Nhờ playwright mcp accessibility snapshot, Claude Code truyền ref=e5 thẳng vào browser_type hoặc browser_click mà không cần đoán tọa độ. Server còn kiểm tra lưu lượng API nền (browser_network_requests), đọc log console (browser_console_messages), chuyển tab, xuất PDF hoặc ảnh chụp màn hình (browser_pdf_save, browser_take_screenshot).

Quy trình này kết nối ba giai đoạn của việc thu thập dữ liệu tự động. Web scraping thông thường tải về mã HTML thô, screen scraping đọc dữ liệu hiển thị được kết xuất trong trình duyệt sau khi JavaScript chạy xong, còn phân tích dữ liệu (data parsing) trích xuất các trường có cấu trúc ra CSV, Excel hoặc JSON. Với playwright-mcp, agent đọc cây DOM trực tiếp sau khi JavaScript kết xuất xong và trích xuất ngay dữ liệu có cấu trúc.

👉 Khám phá hạ tầng proxy cho AI agent và tự động hóa trình duyệt trên CyberYozh App

Cách dùng Playwright MCP với Claude Code trong terminal

Trước khi thử cách dùng playwright mcp với Claude Code trên các website thật, hãy kiểm tra ba điều kiện trên máy: Node.js 18 trở lên (khuyến nghị Node.js 20+ LTS), Claude Code CLI đã đăng nhập (@anthropic-ai/claude-code) và thông tin proxy còn hiệu lực để tránh bị giới hạn tốc độ.

Cách thêm Playwright MCP vào Claude Code: ba chế độ cài đặt

Bạn có thể thêm Playwright MCP vào Claude Code chỉ với một lệnh, dùng cờ --scope để chọn cấp cấu hình: local (thư mục hiện tại), project (repo chung của nhóm) hoặc user (profile toàn cục). Cấu hình của thư mục local luôn ghi đè cấu hình project và toàn cục.

Chế độ cài đặt (Scope)

Cờ lệnh

Nơi lưu tệp cấu hình

Khi nào nên dùng

Local

Mặc định (không dùng cờ)

~/.claude.json (theo đường dẫn thư mục hiện tại)

Ưu tiên cao nhất; gắn proxy thử nghiệm riêng với một thư mục làm việc cụ thể

Project (Nhóm)

--scope project

.mcp.json (ở thư mục gốc của dự án)

Ưu tiên trung bình; được commit lên Git để nhóm phát triển dùng chung một cấu hình

User (Toàn cục)

--scope user

~/.claude.json (gốc của profile toàn cục)

Ưu tiên cơ bản; giúp playwright-mcp khả dụng trong mọi dự án trên máy tính

Chạy các lệnh dưới đây để kiểm tra phiên bản đã cài, tải trước bản Chromium và đăng ký server:

bash
# 1. Check installed Node.js and Claude Code versions
node --version
claude --version

# 2. Pre-install the package and Chromium browser
npx @playwright/mcp@latest --version
npx playwright install chromium

# 3. Register the server (choose one of the three options)
# Option A: Only for the currently open folder
claude mcp add playwright -- npx @playwright/mcp@latest

# Option B: Globally for all your projects on this computer
claude mcp add playwright --scope user -- npx @playwright/mcp@latest

# Option C: Create a shared .mcp.json file in the project root for your team
claude mcp add playwright --scope project -- npx @playwright/mcp@latest

# 4. Verify the list of connected MCP servers
claude mcp list

Sau khi chạy claude mcp add playwright, bạn cũng có thể cài bản cộng đồng ExecuteAutomation (@executeautomation/playwright-mcp-server) với các preset viewport cho 143 mẫu điện thoại thông minh và máy tính. Nếu muốn scrape website qua Claude AI mà không phải sửa tệp cấu hình thủ công, Yozh Scraper trên GitHub mã nguồn mở của chúng tôi sẽ tự động định tuyến lưu lượng qua proxy CyberYozh App của bạn.

👉 Thuê proxy di động LTE/5G từ $1.70/ngày với lưu lượng không giới hạn

Thiết lập cấu hình proxy Playwright MCP trong .mcp.json

Khi một phiên claude playwright mcp kiểm tra các landing page quảng cáo theo khu vực, so sánh giá giữa các vùng hoặc scrape danh mục sản phẩm, các yêu cầu dồn dập từ một IP nhà hoặc văn phòng sẽ kích hoạt CAPTCHA. Thêm cấu hình playwright mcp proxy vào .mcp.json (hoặc ~/.claude.json) sẽ định tuyến lưu lượng trình duyệt qua khu vực mục tiêu của bạn:

json
{
  "mcpServers": {
    "playwright": {
      "command": "npx",
      "args": [
        "-y",
        "@playwright/mcp@latest",
        "--browser",
        "chromium",
        "--isolated",
        "--proxy-server=http://proxy.cyberyozh.com:8080"
      ],
      "env": {
        "HTTP_PROXY": "http://username:password@proxy.cyberyozh.com:8080",
        "HTTPS_PROXY": "http://username:password@proxy.cyberyozh.com:8080",
        "PLAYWRIGHT_MCP_PING_TIMEOUT_MS": "15000"
      }
    }
  }
}

Lưu ý: Địa chỉ server (proxy.cyberyozh.com), cổng (8080), tên người dùng và mật khẩu ở trên chỉ là giá trị mẫu. Hãy thay bằng host, cổng và thông tin đăng nhập lấy từ thẻ proxy trong bảng điều khiển CyberYozh App.

Cách quản lý profile trình duyệt, cookie và độ ổn định của IP proxy

Để tránh sự cố khóa profile khi chạy song song và tránh bị đặt lại phiên ngoài ý muốn, hãy tách biệt hai cơ chế:

  1. Nơi lưu cookie và phiên của trình duyệt: theo mặc định, playwright-mcp lưu cookie và dữ liệu website trong một thư mục dùng chung trên ổ đĩa. Mở terminal Claude Code thứ hai với cùng thư mục đó sẽ gây lỗi khóa. Để chạy song song nhiều trình duyệt, hãy khởi chạy playwright mcp isolated profile bằng cờ --isolated (tạo profile sạch trong bộ nhớ) và nạp cookie đăng nhập đã lưu qua --storage-state=./auth.json. Nếu cần profile cố định trên ổ đĩa thay cho playwright mcp isolated profile trong bộ nhớ, hãy chỉ định một thư mục riêng cho mỗi dự án bằng --user-data-dir.

  2. Cách giữ IP proxy nhất quán: cookie và IP proxy hoạt động độc lập. IP tĩnh sẽ không làm mới token cookie đã hết hạn, và cookie đã lưu cũng không ngăn bị đăng xuất nếu IP bên ngoài thay đổi giữa chừng khi thanh toán. Cũng cần lưu ý một giới hạn của Chromium: cờ --proxy-server chỉ chấp nhận tên người dùng và mật khẩu qua HTTP/HTTPS. Kết nối SOCKS5 trực tiếp trong Chromium chỉ hoạt động với whitelist IP không cần mật khẩu trong bảng điều khiển, còn SOCKS5 có mật khẩu đòi hỏi một proxifier cục bộ.

👉 Chọn proxy dân cư xoay từ $4.00/GB với sticky session tối đa 24 giờ

Nên chọn proxy CyberYozh App nào cho playwright-mcp

Dòng proxy phù hợp phụ thuộc vào website mục tiêu và thời lượng phiên. Nền tảng CyberYozh App cung cấp bốn lựa chọn cho tự động hóa trình duyệt:

  • Proxy di động LTE/4G/5G (từ $1.70/ngày với lưu lượng không giới hạn): chạy trên modem vật lý và SIM thật của nhà mạng. Vì mạng di động dùng CGNAT, hàng trăm thuê bao smartphone thông thường dùng chung một IP của nhà mạng. Bộ lọc chống gian lận và các công cụ tìm kiếm như Google ít có khả năng hạn chế địa chỉ đó khi scrape tìm kiếm đa luồng hoặc kiểm tra quảng cáo. Gói riêng cho phép xoay IP qua liên kết trong bảng điều khiển hoặc REST API, còn gói dùng chung xoay theo bộ đếm 5 hoặc 30 phút. Hỗ trợ HTTP/HTTPS, SOCKS5, UDP, cấu hình VPN/VLESS và chuyển đổi dấu vân tay TCP/IP của hệ điều hành. Do trạm phát sóng của nhà mạng định kỳ làm mới thời hạn cấp IP ở phía họ, hãy thuê gói theo ngày trước để kiểm tra độ dài phiên cho các lượt chạy kéo dài nhiều giờ.

  • Proxy ISP dân cư tĩnh (từ $5.29/tháng với lưu lượng không giới hạn): cung cấp một IP nhà riêng từ nhà cung cấp dịch vụ internet (ISP) thật trong suốt thời gian thuê, với uptime 99.9% và hỗ trợ HTTP/HTTPS cùng SOCKS5. Phù hợp cho các phiên kéo dài nhiều tuần, nhiều tháng trong dự án của khách hàng và thương hiệu, bảng điều khiển quảng cáo, trang quản trị và cửa hàng trực tuyến. Các agency gắn mỗi proxy ISP tĩnh với một thư mục profile trình duyệt riêng (--user-data-dir) cho từng khách hàng để phiên và cookie không bao giờ bị lẫn.

  • Proxy dân cư xoay (từ $4.00/GB, tối thiểu 3 GB; giảm còn $2.50/GB từ 100 GB): cho bạn truy cập hơn 100 triệu IP dân cư tại hơn 195 quốc gia. Bao gồm miễn phí nhắm theo quốc gia, bang/vùng và thành phố, bộ lọc IP nâng cao trước khi gán, uptime 99.9% và tỷ lệ yêu cầu thành công lên đến 99.99%. Có thể xoay IP theo từng yêu cầu để scrape danh mục hoặc giữ một IP tối đa 24 giờ với sticky session. Số gigabyte chưa dùng được chuyển sang chu kỳ thanh toán tháng sau, còn Mass Credentials Generator và REST API giúp thiết lập hàng loạt dễ dàng hơn.

  • Proxy datacenter (máy chủ) (từ $1.77/tháng): cung cấp các kênh IPv4/IPv6 riêng và dùng chung, lưu lượng không giới hạn ở gói riêng và uptime 99.99% cho việc scrape tốc độ cao các trang công khai, giám sát uptime và kiểm thử API.

👉 Chọn proxy lưu lượng không giới hạn cho web scraping và tự động hóa trình duyệt

Kiểm tra uy tín IP qua Fraud Score và khắc phục các lỗi thường gặp

Trước khi thêm proxy vào cấu hình playwright-mcp, hãy kiểm tra IP của proxy bằng công cụ kiểm tra rủi ro Fraud Score tích hợp ($0.15 cho mỗi lần kiểm tra IP, hoặc $19.00/tháng cho 1,500 lần kiểm tra IP, 1,500 lần kiểm tra số điện thoại và 500 lần kiểm tra thẻ ngân hàng - tiết kiệm tới $600/tháng). Công cụ truy vấn IPQualityScore (IPQS), CyberSource, ThreatMetrix, Stripe Radar, PerimeterX và 118 danh sách đen OSINT, hiển thị nhãn ISP/ASN, điểm rủi ro và trạng thái Abuse Velocity trước khi bạn khởi chạy trình duyệt.

Để kiểm tra kết nối, hãy khởi chạy client bằng MCP_TIMEOUT=10000 claude để npx có đủ thời gian tải package trong lần chạy đầu tiên. Gõ /mcp trong khung chat để xác nhận playwright hiển thị trạng thái connected màu xanh. Trong prompt đầu tiên, hãy nêu rõ tên công cụ để Claude mở trình duyệt thay vì viết mã script:

Use Playwright MCP: open https://app.cyberyozh.com/checkers/, read the page structure, and list the available checkers for verifying IP addresses, phone numbers, and cards.

Nếu các bài kiểm thử tự động của bạn bao gồm biểu mẫu đăng ký qua SMS hoặc quy trình thanh toán, bạn có thể thuê số điện thoại ảo để nhận SMS và phát hành thẻ ảo ngay trong cùng bảng điều khiển CyberYozh App.

👉 Kiểm tra uy tín IP và Fraud Score trước khi khởi chạy trình duyệt

Sự cố hoặc lỗi trong terminal

Nguyên nhân

Cách khắc phục

Lỗi timeout ở lần khởi chạy server đầu tiên

Ở lần chạy đầu, npx mất nhiều thời gian tải package hơn mức timeout khởi động mặc định cho phép

Cài trước qua npx @playwright/mcp@latest --version và khởi chạy bằng MCP_TIMEOUT=10000 claude

Cửa sổ Claude Code thứ hai không mở được trình duyệt

Cả hai cửa sổ cùng lúc cố khóa chung một thư mục profile mặc định trên ổ đĩa

Thêm "--isolated" vào mảng args trong .mcp.json hoặc đặt thư mục --user-data-dir riêng cho từng dự án

Claude viết mã script thay vì mở trình duyệt

Prompt đầu tiên trong chat không chỉ định gọi MCP server

Bắt đầu prompt bằng câu nêu rõ: “Use Playwright MCP to open...”

Cài đặt proxy trong .mcp.json bị bỏ qua

Server playwright trước đó đã được đăng ký ở chế độ local, ghi đè lên .mcp.json

Kiểm tra cài đặt đang áp dụng bằng claude mcp get playwright, xóa bản trùng qua claude mcp remove playwright rồi thêm lại

Trình duyệt bị crash trên Linux VPS hoặc trong Docker

Theo mặc định, server cố mở cửa sổ GUI hiển thị trên máy không có màn hình (headless)

Thêm cờ "--headless", hoặc chạy server trên một cổng (npx @playwright/mcp@latest --headless --port 8931) và kết nối qua claude mcp add --transport http playwright http://localhost:8931/mcp

Bắt đầu tự động hóa trình duyệt trong Claude Code

Kết hợp playwright-mcp với Claude Code cho phép bạn điều khiển trình duyệt thật bằng lệnh văn bản thuần ngay từ terminal: agent mở trang, nhắm vào phần tử thông qua accessibility tree và trích xuất dữ liệu mà không cần các bộ chọn dễ vỡ. Kết hợp cấu hình đó với proxy di động LTE/5G, ISP tĩnh hoặc dân cư xoay từ CyberYozh App giúp việc kiểm thử theo khu vực, kiểm tra cửa hàng và scrape danh mục ổn định ở bất kỳ vị trí nào.

👉 Thuê số điện thoại ảo để xác minh qua SMS khi kiểm thử quy trình đăng ký

Câu hỏi thường gặp về playwright-mcp và Claude Code