MCP (Giao thức Ngữ cảnh Mô hình)
Nó có thể làm gì?
WebdriverIO MCP là một máy chủ Model Context Protocol (MCP) cho phép các trợ lý AI như Claude Desktop và Claude Code tự động hóa và tương tác với trình duyệt web và ứng dụng di động.
Tại sao chọn WebdriverIO MCP?
- Ưu tiên Di động: Không giống như các máy chủ MCP chỉ dành cho trình duyệt, WebdriverIO MCP hỗ trợ tự động hóa ứng dụng native iOS và Android thông qua Appium
- Bộ chọn Đa nền tảng: Phát hiện phần tử thông minh tự động tạo nhiều chiến lược định vị (accessibility ID, XPath, UiAutomator, iOS predicates)
- Hệ sinh thái WebdriverIO: Được xây dựng trên framework WebdriverIO đã được thử nghiệm với hệ sinh thái phong phú gồm các dịch vụ và trình báo cáo
Nó cung cấp một giao diện thống nhất cho:
- 🖥️ Trình duyệt máy tính để bàn (Chrome - chế độ có giao diện hoặc headless)
- 📱 Ứng dụng Di động Native (iOS Simulators / Android Emulators / Thiết bị thực qua Appium)
- 📳 Ứng dụng Di động Hybrid (Chuyển đổi ngữ cảnh Native + WebView qua Appium)
thông qua gói @wdio/mcp.
Điều này cho phép trợ lý AI:
- Khởi chạy và điều khiển trình duyệt với kích thước có thể cấu hình, chế độ headless và điều hướng ban đầu tùy chọn
- Điều hướng trang web và tương tác với các phần tử (nhấp, nhập, cuộn)
- Phân tích nội dung trang thông qua cây trợ năng và phát hiện các phần tử hiển thị với hỗ trợ phân trang
- Chụp ảnh màn hình tự động tối ưu hóa (đổi kích thước, nén tối đa 1MB)
- Quản lý cookie để xử lý phiên
- Điều khiển thiết bị di động bao gồm cử chỉ (chạm, vuốt, kéo và thả)
- Chuyển đổi ngữ cảnh trong ứng dụng hybrid giữa native và webview
- Thực thi script - JavaScript trong trình duyệt, lệnh Appium trên thiết bị di động
- Xử lý tính năng thiết bị như xoay, bàn phím, vị trí địa lý
- và nhiều tính năng khác, xem các tùy chọn Công cụ và Cấu hình
LƯU Ý Đối với Ứng dụng Di động Tự động hóa cho thiết bị di động yêu cầu máy chủ Appium đang chạy với các driver thích hợp được cài đặt. Xem Điều kiện tiên quyết để biết hướng dẫn thiết lập.
Cài đặt
Cách dễ nhất để sử dụng @wdio/mcp là thông qua npx mà không cần cài đặt cục bộ:
npx @wdio/mcp
Hoặc cài đặt toàn cục:
npm install -g @wdio/mcp
Sử dụng với Claude
Để sử dụng WebdriverIO MCP với Claude, sửa đổi tệp cấu hình:
{
"mcpServers": {
"wdio-mcp": {
"command": "npx",
"args": ["-y", "@wdio/mcp"]
}
}
}
Sau khi thêm cấu hình, khởi động lại Claude. Các công cụ WebdriverIO MCP sẽ có sẵn cho các tác vụ tự động hóa trình duyệt và di động.
Sử dụng với Claude Code
Claude Code tự động phát hiện các máy chủ MCP. Bạn có thể cấu hình nó trong .claude/settings.json hoặc .mcp.json của dự án.
Hoặc thêm nó vào .claude.json toàn cục bằng cách thực thi:
claude mcp add --transport stdio wdio-mcp -- npx -y @wdio/mcp
Xác thực bằng cách chạy lệnh /mcp bên trong claude code.
Ví dụ Bắt đầu Nhanh
Tự động hóa Trình duyệt
Yêu cầu Claude tự động hóa các tác vụ trình duyệt:
"Mở Chrome và điều hướng đến https://webdriver.io"
"Nhấp vào nút 'Get Started'"
"Chụp ảnh màn hình của trang"
"Tìm tất cả các liên kết hiển thị trên trang"
Tự động hóa Ứng dụng Di động
Yêu cầu Claude tự động hóa các ứng dụng di động:
"Khởi động ứng dụng iOS của tôi trên máy ảo iPhone 15"
"Nhấn vào nút đăng nhập"
"Vuốt lên để cuộn xuống"
"Chụp ảnh màn hình hiện tại"
Khả năng
Tự động hóa Trình duyệt (Chrome)
| Tính năng | Mô tả |
|---|---|
| Quản lý Phiên | Khởi chạy Chrome ở chế độ có giao diện/headless với kích thước tùy chỉnh và URL điều hướng tùy chọn |
| Điều hướng | Điều hướng đến URL |
| Tương tác Phần tử | Nhấp vào phần tử, nhập văn bản, tìm phần tử bằng nhiều bộ chọn khác nhau |
| Phân tích Trang | Lấy các phần tử hiển thị (với phân trang), cây trợ năng (với bộ lọc) |
| Ảnh chụp màn hình | Chụp ảnh màn hình (tự động tối ưu hóa tối đa 1MB) |
| Cuộn | Cuộn lên/xuống theo số pixel có thể cấu hình |
| Quản lý Cookie | Lấy, đặt và xóa cookie |
| Thực thi Script | Thực thi JavaScript tùy chỉnh trong ngữ cảnh trình duyệt |
Tự động hóa Ứng dụng Di động (iOS/Android)
| Tính năng | Mô tả |
|---|---|
| Quản lý Phiên | Khởi chạy ứng dụng trên máy ảo, giả lập hoặc thiết bị thực |
| Cử chỉ Chạm | Chạm, vuốt, kéo và thả |
| Phát hiện Phần tử | Phát hiện phần tử thông minh với nhiều chiến lược định vị và phân trang |
| Vòng đời Ứng dụng | Lấy trạng thái ứng dụng (qua execute_script để kích hoạt/kết thúc) |
| Chuyển đổi Ngữ cảnh | Chuyển đổi giữa ngữ cảnh native và webview trong ứng dụng hybrid |
| Điều khiển Thiết bị | Xoay thiết bị, điều khiển bàn phím |
| Vị trí Địa lý | Lấy và đặt tọa độ GPS thiết bị |
| Quyền | Tự động xử lý quyền và thông báo |
| Thực thi Script | Thực thi các lệnh di động Appium (pressKey, deepLink, shell, v.v.) |
Điều kiện tiên quyết
Tự động hóa Trình duyệt
- Chrome phải được cài đặt trên hệ thống của bạn
- WebdriverIO tự động xử lý việc quản lý ChromeDriver