🔌 Playwright MCP — AI Agent'lara Tarayıcı Yeteneği
Playwright MCP — AI Agent'lara Tarayıcı: Playwright MCP (Model Context Protocol), bir AI ajanının Playwright'ı uzaktan kumanda etmesini sağlayan yapılandırılmış bir iletişim prot
Playwright MCP (Model Context Protocol), bir AI ajanının Playwright'ı uzaktan kumanda etmesini sağlayan yapılandırılmış bir iletişim protokolüdür — tıpkı Java'daki JDBC'nin veritabanını sorgulayabileceği standart bir interface sunması gibi: AI hangi veritabanı motoruna bağlandığını bilmek zorunda değildir, sadece standart SQL komutlarını gönderir. Peki AI bir web sayfasıyla neden doğrudan screenshot üzerinden etkileşime giremiyor? Screenshot, sayfanın piksel temsilini verir ama "bu buton tıklanabilir mi, bu input disabled mı, bu modal gerçekten açık mı?" gibi soruları cevaplayamaz; AI piksel koordinatlarını tahmin eder ve her piksel kayması hata üretir. MCP ise AI'a sayfanın accessibility tree'sini (erişilebilirlik ağacı) yapılandırılmış veri olarak sunar: "button[name='Satın Al'][disabled=false]" gibi semantik bilgilerle AI doğrudan doğru elemana gider, koordinat tahminine gerek kalmaz. QA gerçeği: test otomasyon ekipleri için Playwright MCP, "mevcut test case'lerden yeni varyantlar oluştur" veya "flaky test'in kaynağını analiz et" gibi tekrarlayan görevleri AI ajanına devretmenin altyapısını sunar; bu, QA mühendisinin saati yerine yüksek katma değerli karar alma, test tasarımı ve mimari üzerine harcamasını sağlar.
MCP (Model Context Protocol), bir AI modelinin dış araçlarla (dosya sistemi, veritabanı, tarayıcı, API'ler) konuşmasını standartlaştıran açık bir protokoldür. Playwright MCP, Microsoft'un resmi olarak yayınladığı bir MCP sunucusudur (npm paketi: @playwright/mcp) ve AI istemcilerine (Claude, Cursor, VS Code Copilot gibi) gerçek bir tarayıcıyı kontrol etme yeteneği "tool" (araç) olarak sağlar — browser_navigate, browser_click, browser_type gibi.
MCP sunucusunu, Selenium Grid'in bir node'unun WebDriver komutlarını HTTP üzerinden dış istemcilere sunmasına benzet — fark, burada istemci bir insan değil bir AI modelidir ve protokol (JSON-RPC tabanlı MCP) özellikle AI araç çağrısı için tasarlanmıştır. "Snapshot mode", sayfanın DOM'unu System.out.println(driver.getPageSource()) yerine, Selenium'un Accessibility API'sine benzer şekilde yapılandırılmış (rol + isim + ref) bir ağaç olarak AI'a verir — AI piksel koordinatı değil, "ref=e3" gibi kararlı bir referans kullanarak tıklar.
Accessibility-tree tabanlı
Snapshot mode vs Vision mode
İzole / kalıcı profil
Mimari — Bir İstek Nasıl İşlenir?
AI İsteğinden Tarayıcı Aksiyonuna
Playwright MCP Server
MCP Tool-Calling Döngüsü — Adım Adım
Kullanıcı doğal dilde bir görev tanımlar. AI, bu görevi tamamlamak için hangi browser_* tool'unu çağıracağına karar verir.
AI, MCP protokolü üzerinden browser_navigate({ url: ... }) çağrısı yapar. Bu çağrı MCP server'a iletilir, server gerçek tarayıcıyı (yoksa) başlatıp URL'e gider.
Accessibility Snapshot Döner
AI sayfayı "görmek" için browser_snapshot çağırır. Server, ekran görüntüsü DEĞİL, yapılandırılmış bir ağaç döner: her elemanın rolü, ismi ve kararlı bir "ref" kimliği.