Cấu hình

Bạn có thể định cấu hình Chrome DevTools cho tác nhân để tuỳ chỉnh cách công cụ này tương tác với trình duyệt, những công cụ được bật và cách công cụ này xử lý dữ liệu.

Định cấu hình máy chủ bằng cách truyền cờ dòng lệnh trong mảng args của tệp cấu hình ứng dụng khách Giao thức ngữ cảnh mô hình (MCP). Đây thường là tệp config.json.

Ví dụ: để chạy Chrome ở chế độ không có giao diện người dùng và sử dụng kênh Canary, hãy sử dụng cấu hình sau:

{
  "mcpServers": {
    "chrome-devtools": {
      "command": "npx",
      "args": [
        "-y",
        "chrome-devtools-mcp@latest",
        "--headless",
        "--channel=canary"
      ]
    }
  }
}

Các trường hợp cấu hình phổ biến

Các trường hợp sau đây mô tả những cách phổ biến để định cấu hình Chrome DevTools cho tác nhân.

Chạy ở chế độ không có giao diện người dùng

Để thực hiện các tác vụ ở chế độ nền mà không có cửa sổ trình duyệt hiển thị, hãy chạy Chrome ở chế độ không có giao diện người dùng. Thêm cờ --headless vào đối số máy chủ.

Kết nối với một phiên trình duyệt hiện có

Theo mặc định, DevTools cho tác nhân sẽ khởi động một thực thể Chrome mới. Tuy nhiên, bạn có thể kết nối tác nhân với một phiên trình duyệt hiện có. Điều này rất hữu ích nếu tác nhân cần điều tra một vấn đề trong phiên mà bạn đã bắt đầu (ví dụ: nếu bạn đã đăng nhập).

Bạn có thể kết nối với một phiên hiện có theo 2 cách:

Kết nối tự động (Chrome 144 trở lên)

Nếu bạn sử dụng cờ --autoConnect, máy chủ MCP sẽ tự động kết nối với một thực thể Chrome đang hoạt động.

  1. Trong trình duyệt Chrome đang chạy, hãy chuyển đến chrome://inspect/#remote-debugging rồi bật Gỡ lỗi từ xa.
  2. Thêm --autoConnect vào cấu hình MCP: json "args": ["chrome-devtools-mcp@latest", "--autoConnect"]
  3. Khi tác nhân cố gắng kết nối, Chrome sẽ hiển thị một hộp thoại yêu cầu quyền. Nhấp vào Cho phép.

Kết nối thủ công

Nếu không thể sử dụng --autoConnect (ví dụ: trong môi trường hộp cát), bạn có thể khởi động Chrome theo cách thủ công bằng một cổng gỡ lỗi và kết nối bằng --browser-url.

  1. Khởi động Chrome từ thiết bị đầu cuối khi bật tính năng gỡ lỗi từ xa và có thư mục dữ liệu người dùng tuỳ chỉnh.
    • macOS: shell /Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome --remote-debugging-port=9222 --user-data-dir=/tmp/chrome-profile-stable
    • Windows: shell start chrome --remote-debugging-port=9222 --user-data-dir=%TEMP%\chrome-profile-stable
    • Linux: shell google-chrome --remote-debugging-port=9222 --user-data-dir=/tmp/chrome-profile-stable
  2. Định cấu hình tác nhân để kết nối với cổng này: json "args": ["chrome-devtools-mcp@latest", "--browser-url=http://127.0.0.1:9222"]

Tài liệu tham khảo về các tuỳ chọn cấu hình

Các phần sau đây liệt kê các cờ cấu hình hiện có. Để biết các tuỳ chọn và nội dung cập nhật mới nhất, hãy xem kho lưu trữ Chrome DevTools MCP GitHub.

Các tuỳ chọn kết nối

Sử dụng các tuỳ chọn này để định cấu hình cách máy chủ kết nối với Chrome.

Cờ Loại Mặc định Mô tả
--autoConnect hoặc --auto-connect boolean false Tự động kết nối với một thực thể Chrome (144 trở lên) đang chạy cục bộ. Yêu cầu bật tính năng gỡ lỗi từ xa bằng chrome://inspect/#remote-debugging.
--browserUrl hoặc --browser-url
-u
chuỗi false Kết nối với một thực thể Chrome có thể gỡ lỗi đang chạy (ví dụ: http://127.0.0.1:9222).
--wsEndpoint hoặc --ws-endpoint
-w
chuỗi false Điểm cuối WebSocket để kết nối với một thực thể Chrome đang chạy (ví dụ: ws://127.0.0.1:9222/devtools/browser/<id>). Thay thế cho --browserUrl.
--wsHeaders hoặc --ws-headers chuỗi false Tiêu đề tuỳ chỉnh cho kết nối WebSocket ở định dạng JSON (ví dụ: '{"Authorization":"Bearer token"}'). Chỉ hoạt động với --wsEndpoint.

Các tuỳ chọn khởi chạy trình duyệt

Các tuỳ chọn này áp dụng khi máy chủ MCP khởi động Chrome.

Cờ Loại Mặc định Mô tả
--headless boolean false Chạy Chrome ở chế độ không có giao diện người dùng.
--channel chuỗi stable Chỉ định kênh Chrome cần sử dụng. Các lựa chọn: canary, dev, betastable.
--executablePath hoặc --executable-path
-e
chuỗi false Đường dẫn đến một tệp thực thi Chrome tuỳ chỉnh.
--userDataDir hoặc --user-data-dir chuỗi Xem nội dung mô tả Đường dẫn đến thư mục dữ liệu người dùng. Giá trị mặc định là $HOME/.cache/chrome-devtools-mcp/chrome-profile$CHANNEL_SUFFIX_IF_NON_STABLE.
--isolated boolean false Tạo một thư mục dữ liệu người dùng tạm thời sẽ tự động được dọn dẹp khi trình duyệt đóng.
--viewport chuỗi false Kích thước khung nhìn ban đầu (ví dụ: 1280x720). Ở chế độ không có giao diện người dùng, kích thước tối đa là 3840x2160.
--proxyServer hoặc --proxy-server chuỗi false Cấu hình máy chủ proxy được truyền đến Chrome.
--chromeArg hoặc --chrome-arg mảng false Các đối số bổ sung cần truyền đến Chrome.
--ignoreDefaultChromeArg hoặc --ignore-default-chrome-arg mảng false Tắt rõ ràng các đối số mặc định cho Chrome.

Các tuỳ chọn bảo mật và quyền riêng tư

Sử dụng các tuỳ chọn này để quản lý chế độ cài đặt bảo mật và quyền riêng tư đối với dữ liệu.

Cờ Loại Mặc định Mô tả
--acceptInsecureCerts hoặc --accept-insecure-certs boolean false Bỏ qua các lỗi liên quan đến chứng chỉ tự ký và đã hết hạn. Hãy thận trọng khi sử dụng.
--blockedUrlPattern hoặc --blocked-url-pattern mảng false Hạn chế quyền truy cập mạng bằng cách chặn các mẫu URL được chỉ định (sử dụng URLPattern). Chặn các lượt chuyển hướng và tài nguyên phụ.
--allowedUrlPattern hoặc --allowed-url-pattern mảng false Hạn chế quyền truy cập mạng bằng cách chỉ cho phép các mẫu URL được chỉ định. Yêu cầu Chrome 149 trở lên.
--redactNetworkHeaders hoặc --redact-network-headers boolean false Chỉnh sửa các tiêu đề mạng nhạy cảm trước khi trả về cho ứng dụng khách.
--usageStatistics hoặc --usage-statistics boolean true Cho phép thu thập số liệu thống kê về mức sử dụng để cải thiện công cụ. Bạn cũng có thể tắt tính năng này bằng các biến môi trường CHROME_DEVTOOLS_MCP_NO_USAGE_STATISTICS hoặc CI.
--performanceCrux hoặc --performance-crux boolean true Gửi URL từ dấu vết hiệu suất đến API CrUX của Google để tìm nạp dữ liệu về trải nghiệm của người dùng thực.

Danh mục tính năng

Bạn có thể bật hoặc tắt các nhóm công cụ bằng các cờ này.

Cờ Loại Mặc định Mô tả
--categoryEmulation hoặc --category-emulation boolean true Bật các công cụ liên quan đến tính năng mô phỏng.
--categoryNetwork hoặc --category-network boolean true Bật các công cụ liên quan đến mạng.
--categoryPerformance hoặc --category-performance boolean true Bật các công cụ liên quan đến hiệu suất.
--categoryExtensions hoặc --category-extensions boolean false Bật các công cụ liên quan đến tiện ích. Chỉ được hỗ trợ khi kết nối bằng đường ống.
--categoryExperimentalThirdParty hoặc --category-experimental-third-party boolean false Bật các công cụ dành cho nhà phát triển bên thứ ba do trang được kiểm tra hiển thị.
--categoryExperimentalWebmcp hoặc --category-experimental-webmcp boolean false Bật tính năng gỡ lỗi các công cụ WebMCP. Yêu cầu Chrome 149 trở lên có bật các tính năng WebMCP.
--memoryDebugging hoặc --memory-debugging boolean false Bật các công cụ gỡ lỗi bộ nhớ.

Các tuỳ chọn ảnh chụp màn hình

Sử dụng các tuỳ chọn này để tuỳ chỉnh cách tác nhân chụp ảnh màn hình.

Cờ Loại Mặc định Mô tả
--screenshotFormat hoặc --screenshot-format chuỗi false Ghi đè định dạng đầu ra mặc định (png). Các lựa chọn: jpeg, pngwebp. Các định dạng jpegwebp có kích thước nhỏ hơn, giúp giảm kích thước ngữ cảnh trong các cuộc trò chuyện bằng AI.
--screenshotQuality hoặc --screenshot-quality số false Ghi đè chất lượng nén (0-100) cho jpegwebp.
--screenshotMaxWidth hoặc --screenshot-max-width số false Chiều rộng tối đa tính bằng pixel. Ảnh chụp màn hình lớn hơn sẽ được thu nhỏ.
--screenshotMaxHeight hoặc --screenshot-max-height số false Chiều cao tối đa tính bằng pixel. Ảnh chụp màn hình lớn hơn sẽ được thu nhỏ.

Các tuỳ chọn thử nghiệm

Sử dụng các tuỳ chọn này để bật các tính năng thử nghiệm đang trong quá trình phát triển.

Cờ Loại Mặc định Mô tả
--experimentalPageIdRouting hoặc --experimental-page-id-routing boolean false Hiển thị pageId trên các công cụ ở phạm vi trang để định tuyến các yêu cầu trong các phiên tác nhân đồng thời.
--experimentalDevtools hoặc --experimental-devtools boolean false Cho phép tự động hoá trên các mục tiêu của DevTools.
--experimentalVision hoặc --experimental-vision boolean false Bật các công cụ dựa trên toạ độ (ví dụ: click_at). Thường yêu cầu một mô hình sử dụng máy tính có thể tạo toạ độ chính xác bằng cách xem ảnh chụp màn hình.
--experimentalStructuredContent hoặc --experimental-structured-content boolean false Xuất nội dung được định dạng có cấu trúc.
--experimentalIncludeAllPages hoặc --experimental-include-all-pages boolean false Bao gồm tất cả các loại trang (ví dụ: khung hiển thị web và trang nền).
--experimentalScreencast hoặc --experimental-screencast boolean false Hiển thị các công cụ truyền màn hình (yêu cầu ffmpeg trong PATH).
--experimentalFfmpegPath hoặc --experimental-ffmpeg-path chuỗi false Đường dẫn đến tệp thực thi ffmpeg.

Tuỳ chọn khác

Sử dụng các tuỳ chọn này để định cấu hình tính năng ghi nhật ký hoặc bật một bộ công cụ đơn giản.

Cờ Loại Mặc định Mô tả
--slim boolean false Hiển thị một bộ 3 công cụ đơn giản (điều hướng, thực thi tập lệnh và ảnh chụp màn hình). Hữu ích cho các tác vụ cơ bản trên trình duyệt.
--logFile hoặc --log-file chuỗi false Đường dẫn đến một tệp để ghi nhật ký gỡ lỗi vào.

Biến môi trường

Bạn cũng có thể sử dụng các biến môi trường sau để định cấu hình máy chủ:

  • CHROME_DEVTOOLS_MCP_NO_USAGE_STATISTICS: Nếu được thiết lập, sẽ tắt tính năng thu thập số liệu thống kê về mức sử dụng (tương đương với --no-usage-statistics).
  • CHROME_DEVTOOLS_MCP_NO_UPDATE_CHECKS: Nếu được thiết lập, sẽ tắt tính năng kiểm tra định kỳ các bản cập nhật.
  • CI: Nếu được thiết lập, sẽ tắt tính năng thu thập số liệu thống kê về mức sử dụng.
  • DEBUG: Đặt thành * để bật tính năng ghi nhật ký gỡ lỗi chi tiết (hoạt động cùng với --logFile).