Playwright headless browser kullanan MCP sunucusu, Javascript rendering ve akıllı içerik çıkarma desteği ile web sayfası içeriğini alır ve Markdown veya HTML formatında çıktı verir.
Claude Desktop config.json'a ekle
{
"mcpServers": {
"jae-jae-fetcher-mcp": {
"command": "node",
"args": [
"~/.mcp/fetcher-mcp/index.js"
]
}
}
} Kaynak kodu al ve yerel olarak çalıştır
git clone https://github.com/jae-jae/fetcher-mcp.git ~/.mcp/fetcher-mcp
cd ~/.mcp/fetcher-mcp 中文 | Deutsch | Español | français | 日本語 | 한국어 | Português | Русский
Playwright headless browser kullanarak web sayfası içeriğini getirmek için MCP sunucusu.
🌟 Tavsiye: OllaMan - Powerful Ollama AI Model Manager.
JavaScript Desteği: Geleneksel web kazıyıcılarından farklı olarak, Fetcher MCP JavaScript'i çalıştırmak için Playwright kullanarak dinamik web içeriğini ve modern web uygulamalarını işleyebilir.
Akıllı İçerik Çıkarma: Yerleşik Readability algoritması web sayfalarından ana içeriği otomatik olarak çıkartarak reklamları, navigasyonu ve diğer gereksiz öğeleri kaldırır.
Esnek Çıktı Formatı: Hem HTML hem de Markdown çıktı formatlarını destekleyerek çeşitli uygulamalara entegrasyon kolaylaştırır.
Paralel İşleme: fetch_urls aracı birden fazla URL'nin eşzamanlı olarak getirilmesini sağlayarak toplu işlemler için verimliliği önemli ölçüde artırır.
Kaynak Optimizasyonu: Gereksiz kaynakları (görseller, stil sayfaları, yazı tipleri, medya) otomatik olarak engellemerek bant genişliği kullanımını azaltır ve performansı iyileştirir.
Güçlü Hata Yönetimi: Kapsamlı hata işleme ve günlüğe kaydetme, sorunlu web sayfalarla uğraşırken bile güvenilir işlemi sağlar.
Yapılandırılabilir Parametreler: Zaman aşımları, içerik çıkarma ve çıktı biçimlendirmesi üzerinde hassas kontrol sağlayarak farklı kullanım durumlarına uyum sağlar.
npx ile doğrudan çalıştırın:
npx -y fetcher-mcp
İlk kurulum - gerekli tarayıcıyı yüklemek için terminalinizde aşağıdaki komutu çalıştırın:
npx playwright install chromium
Hem Streamable HTTP endpoint hem de SSE endpoint hizmetlerini aynı anda başlatmak için --transport=http parametresini kullanın:
npx -y fetcher-mcp --log --transport=http --host=0.0.0.0 --port=3000
Başladıktan sonra sunucu aşağıdaki endpoint'leri sağlar:
/mcp - Streamable HTTP endpoint (modern MCP protokolü)/sse - SSE endpoint (eski MCP protokolü)İstemciler gereksinimlerine göre bağlanacak yöntemi seçebilir.
Hata ayıklamak için tarayıcı penceresini göstermek üzere --debug seçeneği ile çalıştırın:
npx -y fetcher-mcp --debug
Bu MCP sunucusunu Claude Desktop'ta yapılandırın:
MacOS'ta: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows'ta: %APPDATA%/Claude/claude_desktop_config.json
{
"mcpServers": {
"fetcher": {
"command": "npx",
"args": ["-y", "fetcher-mcp"]
}
}
}
docker run -p 3000:3000 ghcr.io/jae-jae/fetcher-mcp:latest
docker-compose.yml dosyası oluşturun:
version: "3.8"
services:
fetcher-mcp:
image: ghcr.io/jae-jae/fetcher-mcp:latest
container_name: fetcher-mcp
restart: unless-stopped
ports:
- "3000:3000"
environment:
- NODE_ENV=production
# Linux ana bilgisayarlarda host ağ modunu kullanmak tarayıcı erişim verimliliğini artırabilir
# network_mode: "host"
volumes:
# Playwright için belirli sistem yollarını paylaşmak gerekebilir
- /tmp:/tmp
# Sağlık kontrolü
healthcheck:
test: ["CMD", "wget", "--spider", "-q", "http://localhost:3000"]
interval: 30s
timeout: 10s
retries: 3
Ardından çalıştırın:
docker-compose up -d
fetch_url - Belirtilen URL'den web sayfası içeriğini alın
url: Getirilenecek web sayfasının URL'si (gerekli parametre)timeout: Sayfa yükleme zaman aşımı (milisaniye cinsinden), varsayılan 30000 (30 saniye)waitUntil: Navigasyonun ne zaman tamamlandığını belirlemeye yarayan seçenek, seçenekler: 'load', 'domcontentloaded', 'networkidle', 'commit', varsayılan 'load'extractContent: Ana içeriği akıllı bir şekilde çıkarıp çıkarılmayacağı, varsayılan truemaxLength: Döndürülen içeriğin maksimum uzunluğu (karakter cinsinden), varsayılan sınır yokreturnHtml: Markdown yerine HTML içeriğinin döndürülüp döndürülmeyeceği, varsayılan falsewaitForNavigation: İlk sayfa yüklemesinden sonra ek navigasyonun beklenmesi gerekip gerekmediği (anti-bot doğrulaması olan siteler için yararlı), varsayılan falsenavigationTimeout: Ek navigasyon bekleme maksimum süresi (milisaniye cinsinden), varsayılan 10000 (10 saniye)disableMedia: Medya kaynaklarının (görseller, stil sayfaları, yazı tipleri, medya) devre dışı bırakılıp bırakılmayacağı, varsayılan truedebug: Hata ayıklama modunun etkinleştirilip etkinleştirilmeyeceği (tarayıcı penceresini gösterme), belirtilirse --debug komut satırı bayrağını geçersiz kılarfetch_urls - Birden fazla URL'den toplu olarak web sayfası içeriğini paralel olarak alın
urls: Getirilecek URL'lerin dizisi (gerekli parametre)fetch_url ile aynıdırbrowser_install - Playwright Chromium tarayıcı binary'sini otomatik olarak yükleyin
withDeps: Chromium tarayıcısı için gerekli sistem bağımlılıklarını yükleyin, varsayılan falseforce: Chromium zaten yüklü olsa bile kurulumu zorlayın, varsayılan falseKomple Yükleme Bekleme: CAPTCHA, yönlendirmeler veya diğer doğrulama mekanizmaları kullanan web siteleri için istemde şunları ekleyin:
Please wait for the page to fully load
Bu waitForNavigation: true parametresini kullanacaktır.
Zaman Aşımını Artırma: Yavaş yüklenen web siteleri için:
Please set the page loading timeout to 60 seconds
Bu timeout ve navigationTimeout parametrelerini buna göre ayarlar.
Orijinal HTML Yapısını Koruma: İçerik çıkarma başarısız olabileceği durumlarda:
Please preserve the original HTML content
extractContent: false ve returnHtml: true ayarını yapar.
Komple Sayfa İçeriğini Getirme: Çıkartılan içerik çok sınırlı olduğunda:
Please fetch the complete webpage content instead of just the main content
extractContent: false ayarını yapar.
İçeriği HTML Olarak Döndürme: Varsayılan Markdown yerine HTML formatı gerektiğinde:
Please return the content in HTML format
returnHtml: true ayarını yapar.
Please enable debug mode for this fetch operation
Sunucusuz --debug bayrağı ile başlatılmış olsa bile debug: true ayarını yapar.Manuel Oturum Açma: Kendi kimlik bilgilerinizi kullanarak oturum açmak için:
Please run in debug mode so I can manually log in to the website
debug: true ayarını yapar veya --debug bayrağını kullanır, manual oturum açma için tarayıcı penceresini açık tutar.
Hata Ayıklama Tarayıcısı ile Etkileşim: Hata ayıklama modu etkinleştirildiğinde:
Belirli İstekler İçin Hata Ayıklamayı Etkinleştirme: Sunucu zaten çalışıyor olsa bile, belirli bir istek için hata ayıklama modunu etkinleştirebilirsiniz:
Please enable debug mode for this authentication step
Yalnızca bu istek için debug: true ayarını yapar, manual oturum açma için tarayıcı penceresini açar.
npm install
Playwright için gerekli tarayıcıları yükleyin:
npm run install-browser
npm run build
Hata ayıklama için MCP Inspector kullanın:
npm run inspector
Hata ayıklama için görünür tarayıcı modunu da etkinleştirebilirsiniz:
node build/index.js --debug
MIT Lisansı altında lisanslanmıştır.
Exa AI Search API'sini kullanan bir Model Context Protocol (MCP) sunucusu, Claude gibi AI asistanlarının web aramaları gerçekleştirmesini sağlar. Bu kurulum, AI modellerinin gerçek zamanlı web bilgilerine güvenli ve kontrollü bir şekilde erişmesini mümkün kılar.
ArXiv araştırma makalelerinde arama yapın
Web'i keşfedin, veri çıkarın ve etkileşim kurun - tek bir arayüz ile herkese açık internet üzerinde otomatik erişimi güçlendirin.
Ücretsiz çoklu arama motoru kullanarak web araması yapın (API ANAHTARI GEREKMEZ) — Bing, Baidu, DuckDuckGo, Brave, Exa ve CSDN'yi destekler.
DuckDuckGo kullanarak web araması yapın
Brave Search API kullanarak web arama yetenekleri