Playwright MCP 服务器

一个基于Playwright的本地MCP服务器,提供强大的浏览器自动化功能,无需互联网连接。

  • by fgulen
  • JavaScript
  • 本地部署
  • 更新于
在 GitHub 查看 fgulen/homemade-playwright-mcp-server

使用说明

Playwright MCP Server

Güvenli bir şekilde local'de çalışan Playwright tabanlı MCP (Model Context Protocol) server.

Özellikler

  • 🔒 Tamamen Local: Tüm işlemler local'de çalışır, internet bağlantısı gerektirmez
  • 🎭 Playwright Tabanlı: Güçlü browser otomasyonu
  • 🛡️ Güvenli: Sadece local sistemde çalışır, dış bağlantı yapmaz
  • 🚀 Kullanımı Kolay: MCP protokolü ile entegre

Kurulum

  1. Bağımlılıkları yükleyin:
npm install
  1. Playwright tarayıcılarını yükleyin:
npx playwright install chromium

Kullanım

Server'ı başlatmak için:

npm start

Veya geliştirme modunda (otomatik yeniden başlatma ile):

npm run dev

Mevcut Araçlar (Tools)

Toplam 25 farklı browser otomasyon aracı mevcuttur:

Navigasyon ve Sayfa İşlemleri

1. browser_navigate

Tarayıcıyı belirtilen URL'ye yönlendirir.

  • Parametreler: url (string, zorunlu)

2. browser_go_back

Tarayıcı geçmişinde geri gider.

3. browser_go_forward

Tarayıcı geçmişinde ileri gider.

4. browser_reload

Sayfayı yeniden yükler.

5. browser_get_url

Mevcut sayfanın URL'sini getirir.

6. browser_get_title

Mevcut sayfanın başlığını getirir.

Görüntü ve İçerik İşlemleri

7. browser_screenshot

Sayfanın ekran görüntüsünü alır.

  • Parametreler:
    • path (string, zorunlu)
    • fullPage (boolean, opsiyonel)

8. browser_get_content

Sayfanın HTML içeriğini getirir.

  • Parametreler: selector (string, opsiyonel)

9. browser_get_text

Bir elementin text içeriğini getirir.

  • Parametreler: selector (string, zorunlu)

10. browser_get_all_text

Sayfadaki tüm görünür metni getirir.

11. browser_get_attribute

Bir elementin attribute değerini getirir.

  • Parametreler:
    • selector (string, zorunlu)
    • attribute (string, zorunlu)

Mouse İşlemleri

12. browser_click

Sayfadaki bir elemana tıklar.

  • Parametreler: selector (string, zorunlu)

13. browser_double_click

Bir elemente çift tıklar.

  • Parametreler: selector (string, zorunlu)

14. browser_right_click

Bir elemente sağ tıklar (context menu).

  • Parametreler: selector (string, zorunlu)

15. browser_hover

Bir elementin üzerine mouse ile gelir.

  • Parametreler: selector (string, zorunlu)

Form İşlemleri

16. browser_fill

Bir input alanını doldurur.

  • Parametreler:
    • selector (string, zorunlu)
    • text (string, zorunlu)

17. browser_select

Dropdown menüden seçim yapar.

  • Parametreler:
    • selector (string, zorunlu)
    • value (string, zorunlu)

18. browser_check

Checkbox veya radio button'ı işaretler.

  • Parametreler: selector (string, zorunlu)

19. browser_uncheck

Checkbox işaretini kaldırır.

  • Parametreler: selector (string, zorunlu)

20. browser_press_key

Klavye tuşuna basar.

  • Parametreler: key (string, zorunlu - örn: Enter, Escape, ArrowDown)

Scroll ve Görünürlük

21. browser_scroll

Sayfayı scroll eder.

  • Parametreler:
    • selector (string, opsiyonel)
    • x (number, opsiyonel)
    • y (number, opsiyonel)

22. browser_is_visible

Bir elementin görünür olup olmadığını kontrol eder.

  • Parametreler: selector (string, zorunlu)

JavaScript ve Beklemeler

23. browser_evaluate

Sayfada JavaScript kodu çalıştırır.

  • Parametreler: script (string, zorunlu)

24. browser_wait

Belirtilen süre kadar veya bir element görünene kadar bekler.

  • Parametreler:
    • selector (string, opsiyonel)
    • timeout (number, opsiyonel, varsayılan: 30000ms)

Tarayıcı Yönetimi

25. browser_close

Tarayıcıyı kapatır.

MCP Client Konfigürasyonu

Claude Desktop veya başka bir MCP client kullanıyorsanız, config dosyanıza ekleyin:

{
  "mcpServers": {
    "playwright": {
      "command": "node",
      "args": ["c:\\Users\\fg\\Desktop\\mcp\\index.js"]
    }
  }
}

Güvenlik

  • Server sadece local'de çalışır (stdio transport kullanır)
  • Dış ağ bağlantısı gerektirmez
  • Tüm browser işlemleri local makinede gerçekleşir
  • Headless mode yerine normal mode kullanır (daha güvenli ve görsel)

Lisans

MIT