Microsoft Playwright MCP هو خادم يعتمد على بروتوكول سياق النموذج (Model Context Protocol, MCP)، ويستخدم Playwright لتوفير قدرات أتمتة متصفح قوية للنماذج اللغوية الكبيرة (LLM). يكمن الابتكار الأساسي لهذا المشروع في التفاعل مع صفحات الويب من خلال لقطات إمكانية الوصول المنظمة، متجاوزًا تمامًا الحاجة إلى لقطات الشاشة التقليدية أو نماذج الضبط الدقيق البصري.
يمثل هذا المشروع نموذجًا جديدًا تمامًا لتفاعل وكلاء الذكاء الاصطناعي مع الويب، مما يمكّن النماذج اللغوية الكبيرة من تشغيل المتصفحات وتنفيذ مهام أتمتة الويب المعقدة بطريقة أكثر كفاءة ودقة.
التنقل في صفحات الويب وملء النماذج
استخراج بيانات المحتوى المنظمة
الاختبار الآلي المدفوع بالنماذج اللغوية الكبيرة
تفاعل المتصفح العام للوكلاء
{
"mcpServers": {
"playwright": {
"command": "npx",
"args": [
"@playwright/mcp@latest"
]
}
}
}
# VS Code
code --add-mcp '{"name":"playwright","command":"npx","args":["@playwright/mcp@latest"]}'
# VS Code Insiders
code-insiders --add-mcp '{"name":"playwright","command":"npx","args":["@playwright/mcp@latest"]}'
وضع المتصفح القياسي مع واجهة، مناسب للتطوير والتصحيح:
{
"mcpServers": {
"playwright": {
"command": "npx",
"args": ["@playwright/mcp@latest"]
}
}
}
مناسب لعمليات الخلفية أو معالجة الدفعات:
{
"mcpServers": {
"playwright": {
"command": "npx",
"args": [
"@playwright/mcp@latest",
"--headless"
]
}
}
}
يستخدم للأنظمة التي لا تحتوي على شاشة عرض أو عمليات عمل IDE:
npx @playwright/mcp@latest --port 8931
ملف التكوين:
{
"mcpServers": {
"playwright": {
"url": "http://localhost:8931/sse"
}
}
}
تمكين الوضع البصري:
{
"mcpServers": {
"playwright": {
"command": "npx",
"args": [
"@playwright/mcp@latest",
"--vision"
]
}
}
}
browser_click
- تنفيذ عملية النقرbrowser_hover
- تحويم العنصرbrowser_drag
- عملية السحب والإفلاتbrowser_type
- إدخال النصbrowser_select_option
- تحديد خيار القائمة المنسدلةbrowser_navigate
- التنقل إلى عنوان URLbrowser_navigate_back
- رجوعbrowser_navigate_forward
- تقدمbrowser_tab_list
- سرد جميع علامات التبويبbrowser_tab_new
- إنشاء علامة تبويب جديدةbrowser_tab_select
- تحديد علامة التبويبbrowser_tab_close
- إغلاق علامة التبويبbrowser_snapshot
- لقطة إمكانية الوصول (موصى بها)browser_take_screenshot
- لقطة شاشة للصفحةbrowser_screen_capture
- التقاط الشاشةbrowser_file_upload
- تحميل الملفbrowser_pdf_save
- حفظ بتنسيق PDFbrowser_press_key
- عملية الضغط على المفاتيحbrowser_handle_dialog
- معالجة مربعات حوار المتصفحbrowser_resize
- تغيير حجم النافذةbrowser_wait
- الانتظار لفترة محددةbrowser_screen_move_mouse
- تحريك الماوسbrowser_screen_click
- النقر على الإحداثياتbrowser_screen_drag
- سحب الشاشةbrowser_screen_type
- إدخال الشاشةbrowser_console_messages
- الحصول على رسائل وحدة التحكمbrowser_install
- تثبيت المتصفحيقوم Playwright MCP بإنشاء ملف تعريف المتصفح في المواقع التالية:
%USERPROFILE%\AppData\Local\ms-playwright\mcp-chrome-profile
~/Library/Caches/ms-playwright/mcp-chrome-profile
~/.cache/ms-playwright/mcp-chrome-profile
سيتم تخزين جميع معلومات تسجيل الدخول في ملف التعريف هذا، ويمكنك حذفه بين الجلسات لمسح حالة عدم الاتصال.
بالنسبة للسيناريوهات التي تتطلب تكاملاً برمجيًا، يمكنك استخدام الطرق التالية:
import { createServer } from '@playwright/mcp';
const server = createServer({
launchOptions: { headless: true }
});
transport = new SSEServerTransport("/messages", res);
server.connect(transport);
يمثل مشروع Microsoft Playwright MCP ابتكارًا مهمًا في مجال أتمتة متصفح وكلاء الذكاء الاصطناعي، فهو يعيد تعريف طريقة تفاعل النماذج اللغوية الكبيرة مع الويب من خلال المزايا الرئيسية التالية:
نموذج التفاعل المنظم: التخلي عن طريقة لقطات الشاشة + التعرف البصري التقليدية، واعتماد هيكل شجرة إمكانية الوصول، لتوفير تجربة تفاعل أكثر دقة وكفاءة.
تصميم أصلي للنماذج اللغوية الكبيرة: مُحسَّن خصيصًا للنماذج اللغوية الكبيرة، ولا يتطلب قدرات معالجة بصرية إضافية، مما يقلل من تعقيد النظام واستهلاك الموارد.
دعم Microsoft الرسمي: كمشروع رسمي من Microsoft، يوفر موثوقية على مستوى المؤسسات وضمانات صيانة مستمرة.
يمثل هذا المشروع الاتجاه المستقبلي لتفاعل الذكاء الاصطناعي مع الويب، ومع التحسين المستمر لنظام MCP البيئي، من المتوقع أن يلعب دورًا مهمًا في المجالات التالية:
Microsoft Playwright MCP ليس مجرد أداة تقنية، بل هو معلم هام في توسيع حدود قدرات وكلاء الذكاء الاصطناعي، ويوفر أساسًا تقنيًا قويًا لبناء تطبيقات ذكاء اصطناعي أكثر ذكاءً وعملية.