Microsoft'un resmi Playwright MCP sunucusu, LLM'lerin yapılandırılmış erişilebilirlik anlık görüntüleri aracılığıyla web sayfalarıyla etkileşim kurmasını sağlıyor.
Claude Desktop config.json'a ekle
{
"mcpServers": {
"microsoft-playwright-mcp": {
"command": "node",
"args": [
"~/.mcp/playwright-mcp/index.js"
]
}
}
} Kaynak kodu al ve yerel olarak çalıştır
git clone https://github.com/microsoft/playwright-mcp.git ~/.mcp/playwright-mcp
cd ~/.mcp/playwright-mcp Model Context Protocol (MCP) sunucusu; Playwright kullanarak tarayıcı otomasyonu yetenekleri sağlar. Bu sunucu, LLM'lerin ekran görüntülerine veya görsel olarak ayarlanmış modellere ihtiyaç duymadan yapılandırılmış erişilebilirlik anlık görüntüleri aracılığıyla web sayfalarıyla etkileşim kurmasını sağlar.
Bu paket Playwright için MCP arayüzü sağlar. Kodlama ajanı kullanıyorsanız, bunun yerine CLI+SKILLS kullanmanın faydalı olabileceğini unutmayın.
CLI: Modern kodlama ajanları giderek artan bir şekilde MCP yerine CLI tabanlı iş akışlarını SKILL olarak ortaya koymayı tercih etmektedir. Çünkü CLI çağrıları daha token verimlidir: büyük araç şemaları ve ayrıntılı erişilebilirlik ağaçlarını model bağlamına yüklemeyi önleyerek, ajanların özel amaçlı komutlar aracılığıyla hareket etmesini sağlar. Bu, CLI + SKILL'leri sınırlı bağlam pencereleri içinde tarayıcı otomasyonunu büyük kod tabanları, testler ve muhakeme ile dengelemesi gereken yüksek verimli kodlama ajanları için daha uygun hale getirir.
Playwright CLI with SKILLS hakkında daha fazla bilgi alın.
MCP: MCP, kalıcı durum, zengin iç görü ve sayfa yapısı üzerinde yinelemeli muhakeme gerektiren özelleştirilmiş ajansal döngüler için uygun kalır. Örneğin keşifsel otomasyon, kendi kendini iyileştiren testler veya token maliyet endişelerinin sürekli tarayıcı bağlamını korumasının ağır bastığı uzun süreli otonom iş akışları.
İlk olarak, Playwright MCP sunucusunu istemciniz ile kurun.
Standart yapılandırma çoğu araçta çalışır:
{
"mcpServers": {
"playwright": {
"command": "npx",
"args": [
"@playwright/mcp@latest"
]
}
}
}
Amp VS Code uzantısı ayarları ekranından veya settings.json dosyanızı güncelleyerek ekleyin:
"amp.mcpServers": {
"playwright": {
"command": "npx",
"args": [
"@playwright/mcp@latest"
]
}
}
Amp CLI Kurulumu:
Aşağıdaki amp mcp add komutu ile ekleyin
amp mcp add playwright -- npx @playwright/mcp@latest
Antigravity ayarları veya yapılandırma dosyanızı güncelleyerek ekleyin:
{
"mcpServers": {
"playwright": {
"command": "npx",
"args": [
"@playwright/mcp@latest"
]
}
}
}
Playwright MCP sunucusunu eklemek için Claude Code CLI'yi kullanın:
claude mcp add playwright npx @playwright/mcp@latest
MCP yükleme kılavuzunu takip edin, yukarıdaki standart yapılandırmayı kullanın.
MCP Sunucularını Yapılandırma bölümündeki talimatları izleyin
Örnek: Yerel Kurulum
cline_mcp_settings.json dosyanıza aşağıdakileri ekleyin:
{
"mcpServers": {
"playwright": {
"type": "stdio",
"command": "npx",
"timeout": 30,
"args": [
"-y",
"@playwright/mcp@latest"
],
"disabled": false
}
}
}
Playwright MCP sunucusunu eklemek için Codex CLI'yi kullanın:
codex mcp add playwright npx "@playwright/mcp@latest"
Alternatif olarak, yapılandırma dosyası ~/.codex/config.toml oluşturun veya düzenleyin ve şunu ekleyin:
[mcp_servers.playwright]
command = "npx"
args = ["@playwright/mcp@latest"]
Daha fazla bilgi için Codex MCP belgelerine bakın.
Playwright MCP sunucusunu etkileşimli olarak eklemek için Copilot CLI'yi kullanın:
/mcp add
Alternatif olarak, yapılandırma dosyası ~/.copilot/mcp-config.json oluşturun veya düzenleyin ve şunu ekleyin:
{
"mcpServers": {
"playwright": {
"type": "local",
"command": "npx",
"tools": [
"*"
],
"args": [
"@playwright/mcp@latest"
]
}
}
}
Daha fazla bilgi için Copilot CLI belgelerine bakın.
Cursor Settings -> MCP -> Add new MCP Server adresine gidin. İstediğiniz gibi adlandırın, command türünü npx @playwright/mcp@latest komutu ile kullanın. Yapılandırmayı doğrulayabilir veya Edit düğmesine tıklayarak komuta argümanlar ekleyebilirsiniz.
Playwright MCP sunucusunu eklemek için Factory CLI'yi kullanın:
droid mcp add playwright "npx @playwright/mcp@latest"
Alternatif olarak, Factory droid içinde /mcp yazarak MCP sunucularını yönetmek için etkileşimli bir UI açın.
Daha fazla bilgi için Factory MCP belgelerine bakın.
MCP yükleme kılavuzunu takip edin, yukarıdaki standart yapılandırmayı kullanın.
Advanced settings -> Extensions -> Add custom extension adresine gidin. İstediğiniz gibi adlandırın, STDIO türünü kullanın ve command öğesini npx @playwright/mcp olarak ayarlayın. "Add Extension"e tıklayın.
Junie CLI'de Playwright MCP sunucusunu eklemek için:
/mcp yazınCtrl+A tuşuna basınAlternatif olarak, .junie/mcp/mcp.json dosyasına ekleyin:
{
"mcpServers": {
"Playwright": {
"command": "npx",
"args": [
"-y",
"@playwright/mcp@latest"
]
}
}
}
Daha fazla bilgi için Junie MCP yapılandırması belgelerine bakın.
MCP Sunucuları belgelerine bakın. Örneğin .kiro/settings/mcp.json dosyasında:
{
"mcpServers": {
"playwright": {
"command": "npx",
"args": [
"@playwright/mcp@latest"
]
}
}
}
Sağ kenar çubuğunda Program -> Install -> Edit mcp.json adresine gidin. Yukarıdaki standart yapılandırmayı kullanın.
MCP Sunucuları belgelerine bakın. Örneğin ~/.config/opencode/opencode.json dosyasında:
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"playwright": {
"type": "local",
"command": [
"npx",
"@playwright/mcp@latest"
],
"enabled": true
}
}
}
VSCode veya IntelliJ'de Qodo Gen sohbet panelini açın → Daha fazla araç bağla → + Yeni MCP ekle → Yukarıdaki standart yapılandırmayı yapıştırın.
Save düğmesine tıklayın.
MCP yükleme kılavuzunu takip edin, yukarıdaki standart yapılandırmayı kullanın. VS Code CLI'yi kullanarak da Playwright MCP sunucusunu yükleyebilirsiniz:
# VS Code için
code --add-mcp '{"name":"playwright","command":"npx","args":["@playwright/mcp@latest"]}'
Kurulumdan sonra, Playwright MCP sunucusu VS Code'da GitHub Copilot ajanınız ile kullanım için hazır olacaktır.
Settings -> AI -> Manage MCP Servers -> + Add adresine gidin ve bir MCP Sunucusu ekleyin. Yukarıdaki standart yapılandırmayı kullanın.
Alternatif olarak, Warp isteminde /add-mcp slash komutunu kullanın ve yukarıdaki standart yapılandırmayı yapıştırın:
{
"mcpServers": {
"playwright": {
"command": "npx",
"args": [
"@playwright/mcp@latest"
]
}
}
}
Windsurf MCP belgelerine bakın. Yukarıdaki standart yapılandırmayı kullanın.
Playwright MCP sunucusu aşağıdaki argümanları destekler. Bunlar yukarıdaki JSON yapılandırmasında "args" listesinin bir parçası olarak sağlanabilir:
| Seçenek | Açıklama |
|---|---|
| --allowed-hosts <hosts...> | bu sunucunun hizmet sunabileceği ana bilgisayarların virgülle ayrılmış listesi. Sunucunun bağlı olduğu ana bilgisayara varsayılan olarak ayarlanır. Ana bilgisayar kontrolünü devre dışı bırakmak için '*' iletilir. env PLAYWRIGHT_MCP_ALLOWED_HOSTS |
| --allowed-origins |
tarayıcıya istekte bulunmasına izin verilebilecek GÜVENILIR kökenlerin noktalı virgülle ayrılmış listesi. Varsayılan tüm kökenler için izin vermektir. Önemli: değildir güvenlik sınırı olarak davranır ve değildir yönlendirmeleri etkiler. env PLAYWRIGHT_MCP_ALLOWED_ORIGINS |
| --allow-unrestricted-file-access | çalışma alanı kökleri dışındaki dosyalara erişime izin ver. Ayrıca file:// URL'lerine kısıtlanmamış erişime izin verir. Varsayılan olarak dosya sistemi erişimi yalnızca çalışma alanı kök dizinleriyle (veya konfigüre edilen kökler yoksa cwd) sınırlandırılır ve file:// URL'lerine gezinti engellenir. env PLAYWRIGHT_MCP_ALLOW_UNRESTRICTED_FILE_ACCESS |
| --blocked-origins |
tarayıcının istekte bulunmasını engelleyecek kökenlerin noktalı virgülle ayrılmış listesi. Engel listesi izin listesinden önce değerlendirilir. İzin listesi olmadan kullanılırsa, engel listesine uymayan istekler yine de izin verilir. Önemli: değildir güvenlik sınırı olarak davranır ve değildir yönlendirmeleri etkiler. env PLAYWRIGHT_MCP_BLOCKED_ORIGINS |
| --block-service-workers | service worker'ları engelle env PLAYWRIGHT_MCP_BLOCK_SERVICE_WORKERS |
| --browser |
kullanılacak tarayıcı veya chrome kanalı, olası değerler: chrome, firefox, webkit, msedge. env PLAYWRIGHT_MCP_BROWSER |
| --caps |
etkinleştirilecek ek yeteneklerin virgülle ayrılmış listesi, olası değerler: vision, pdf, devtools. env PLAYWRIGHT_MCP_CAPS |
| --cdp-endpoint |
bağlanılacak CDP endpoint'i. env PLAYWRIGHT_MCP_CDP_ENDPOINT |
| --cdp-header <headers...> | bağlantı isteği ile gönderilecek CDP başlıkları, birden fazla belirtilebilir. env PLAYWRIGHT_MCP_CDP_HEADER |
| --cdp-timeout |
CDP endpoint'ine bağlanma zaman aşımı milisaniye cinsinden, varsayılan olarak 30000ms env PLAYWRIGHT_MCP_CDP_TIMEOUT |
| --codegen |
kod üretimi için kullanılacak dili belirt, olası değerler: "typescript", "none". Varsayılan "typescript". env PLAYWRIGHT_MCP_CODEGEN |
| --config |
yapılandırma dosyasının yolu. env PLAYWRIGHT_MCP_CONFIG |
| --console-level |
döndürülecek konsol iletilerinin seviyesi: "error", "warning", "info", "debug". Her seviye daha ciddi seviyelerin mesajlarını içerir. env PLAYWRIGHT_MCP_CONSOLE_LEVEL |
| --device |
taklit edilecek cihaz, örneğin: "iPhone 15" env PLAYWRIGHT_MCP_DEVICE |
| --executable-path |
tarayıcı yürütülebilir dosyasının yolu. env PLAYWRIGHT_MCP_EXECUTABLE_PATH |
| --extension | Çalışan bir tarayıcı örneğine bağlan (sadece Edge/Chrome). "Playwright Extension"in yüklenmesini gerektirir. env PLAYWRIGHT_MCP_EXTENSION |
| --endpoint |
bağlanılacak sınırlı tarayıcı endpoint'i. env PLAYWRIGHT_MCP_ENDPOINT |
| --grant-permissions <permissions...> | tarayıcı bağlamına verilecek izinlerin listesi, örneğin "geolocation", "clipboard-read", "clipboard-write". env PLAYWRIGHT_MCP_GRANT_PERMISSIONS |
| --headless | tarayıcıyı başlıksız modda çalıştır, varsayılan olarak başlıklı env PLAYWRIGHT_MCP_HEADLESS |
| --host |
sunucunun bağlanacağı ana bilgisayar. Varsayılan localhost'tur. Tüm arayüzlere bağlanmak için 0.0.0.0 kullanın. env PLAYWRIGHT_MCP_HOST |
| --ignore-https-errors | https hatalarını yoksay env PLAYWRIGHT_MCP_IGNORE_HTTPS_ERRORS |
| --init-page <path...> | Playwright sayfa nesnesi üzerinde değerlendirilecek TypeScript dosyasının yolu env PLAYWRIGHT_MCP_INIT_PAGE |
| --init-script <path...> | başlatma script'i olarak eklenecek JavaScript dosyasının yolu. Script, sayfanın kendi script'lerinden önce her sayfada değerlendirilecektir. Birden fazla kez belirtilebilir. env PLAYWRIGHT_MCP_INIT_SCRIPT |
| --isolated | tarayıcı profilini bellekte tut, diske kaydetme env PLAYWRIGHT_MCP_ISOLATED |
| --image-responses |
istemciye görüntü yanıtları gönderilip gönderilmeyeceği. "allow" veya "omit" olabilir, varsayılan "allow". env PLAYWRIGHT_MCP_IMAGE_RESPONSES |
| --no-sandbox | normally korumalı tüm işlem türleri için sandbox'ı devre dışı bırak. env PLAYWRIGHT_MCP_NO_SANDBOX |
| --output-dir |
çıkış dosyaları için dizinin yolu. env PLAYWRIGHT_MCP_OUTPUT_DIR |
| --output-mode |
anlık görüntülerin, konsol mesajlarının, ağ günlüklerinin bir dosyaya mı yoksa standart çıktıya mı kaydedileceği. "file" veya "stdout" olabilir. Varsayılan "stdout". env PLAYWRIGHT_MCP_OUTPUT_MODE |
| --port |
SSE taşıması için dinlenecek port. env PLAYWRIGHT_MCP_PORT |
| --proxy-bypass |
proxy'yi atlayacak virgülle ayrılmış etki alanları, örneğin ".com,chromium.org,.domain.com" env PLAYWRIGHT_MCP_PROXY_BYPASS |
| --proxy-server |
proxy sunucusunu belirt, örneğin "http://myproxy:3128" veya "socks5://myproxy:8080" env PLAYWRIGHT_MCP_PROXY_SERVER |
| --sandbox | normally sandbox'lanmayan tüm işlem türleri için sandbox'ı etkinleştir. env PLAYWRIGHT_MCP_SANDBOX |
| --save-session | Playwright MCP oturumunun çıkış dizinine kaydedilip kaydedilmeyeceği. env PLAYWRIGHT_MCP_SAVE_SESSION |
| --secrets |
dotenv formatında gizli dizileri içeren dosyanın yolu env PLAYWRIGHT_MCP_SECRETS_FILE |
| --shared-browser-context | tüm bağlı HTTP istemcileri arasında aynı tarayıcı bağlamını yeniden kullan. env PLAYWRIGHT_MCP_SHARED_BROWSER_CONTEXT |
| --snapshot-mode |
yanıtlar için anlık görüntüler alırken, kullanılacak modu belirtir. "full" veya "none" olabilir. Varsayılan "full". env PLAYWRIGHT_MCP_SNAPSHOT_MODE |
| --storage-state |
yalıtılmış oturumlar için depolama durumu dosyasının yolu. env PLAYWRIGHT_MCP_STORAGE_STATE |
| --test-id-attribute |
test kimlikleri için kullanılacak özniteliği belirt, varsayılan "data-testid" env PLAYWRIGHT_MCP_TEST_ID_ATTRIBUTE |
| --timeout-action |
eylem zaman aşımını milisaniye cinsinden belirt, varsayılan 5000ms env PLAYWRIGHT_MCP_TIMEOUT_ACTION |
| --timeout-navigation |
gezinti zaman aşımını milisaniye cinsinden belirt, varsayılan 60000ms env PLAYWRIGHT_MCP_TIMEOUT_NAVIGATION |
| --user-agent |
kullanıcı aracısı dizesini belirt env PLAYWRIGHT_MCP_USER_AGENT |
| --user-data-dir |
kullanıcı veri dizininin yolu. Belirtilmemişse, geçici bir dizin oluşturulacaktır. env PLAYWRIGHT_MCP_USER_DATA_DIR |
| --viewport-size |
tarayıcı görünüm alanı boyutunu piksel cinsinden belirt, örneğin "1280x720" env PLAYWRIGHT_MCP_VIEWPORT_SIZE |
Playwright MCP'yi düzenli bir tarayıcı gibi kalıcı bir profille (varsayılan), test oturumları için yalıtılmış bağlamlarında veya tarayıcı uzantısını kullanarak mevcut tarayıcınıza bağlanarak çalıştırabilirsiniz.
Kalıcı profil
Tüm oturum açmış bilgiler kalıcı profilde depolanır, istiyorsanız çevrimdışı durumu temizlemek için oturumlar arasında silebilirsiniz.
Kalıcı profil aşağıdaki konumlarda bulunur ve bunu --user-data-dir argümanı ile geçersiz kılabilirsiniz.
# Windows
%USERPROFILE%\AppData\Local\ms-playwright\mcp-{channel}-{workspace-hash}
# macOS
- ~/Library/Caches/ms-playwright/mcp-{channel}-{workspace-hash}
# Linux
- ~/.cache/ms-playwright/mcp-{channel}-{workspace-hash}
{workspace-hash}, MCP istemcisinin çalışma alanı köküne göre türetilir, bu nedenle farklı projeler otomatik olarak ayrı profiller alır.
[!IMPORTANT] Kalıcı bir profil aynı anda yalnızca bir tarayıcı örneği tarafından kullanılabilir, bu nedenle aynı çalışma alanını paylaşan eş zamanlı MCP istemcileri çakışacaktır. Birden fazla istemciyi paralel olarak çalıştırmak için, her
Puppeteer ile tarayıcı otomasyon yetenekleri, yerel ve uzak tarayıcı bağlantısını destekler.
LLM'ler ve bilgisayarlı görü kullanarak tarayıcı tabanlı iş akışlarını otomatikleştirin — sayfaları gezin, formları doldurun, veri çıkarın, kimlik doğrulaması yönetin ve herhangi bir web sitesini doğal dil ile otomatize edin.
Yerel Chrome tarayıcınızı otomatikleştirin
Tarayıcı otomasyonu ve web scraping için Playwright kullanan bir MCP sunucusu
Bulut ortamında tarayıcı etkileşimlerini otomatikleştirin (web navigasyonu, veri çıkarma, form doldurma ve daha fazlası)
Tarayıcı kullanıcı ajanları ile web uygulamalarını otomatik olarak hata ayıklayan bir MCP Server