Ajanlar için Chrome Geliştirici Araçları'nı yapılandırarak tarayıcıyla etkileşimini, hangi araçların etkinleştirildiğini ve verileri nasıl işlediğini özelleştirebilirsiniz.
Model Context Protocol (MCP) istemci yapılandırma dosyanızın args dizisinde komut satırı işaretleri ileterek sunucuyu yapılandırın. Bu genellikle config.json dosyasıdır.
Örneğin, Chrome'u gözetimsiz modda çalıştırmak ve Canary kanalını kullanmak için aşağıdaki yapılandırmayı kullanın:
{
"mcpServers": {
"chrome-devtools": {
"command": "npx",
"args": [
"-y",
"chrome-devtools-mcp@latest",
"--headless",
"--channel=canary"
]
}
}
}
Sık karşılaşılan yapılandırma senaryoları
Aşağıdaki senaryolarda, temsilciler için Chrome Geliştirici Araçları'nı yapılandırmanın yaygın yolları açıklanmaktadır.
Başsız modda çalıştır
Arka plan görevlerini görünür bir tarayıcı penceresi olmadan gerçekleştirmek için Chrome'u başsız (kullanıcı arayüzü yok) modda çalıştırın. Sunucu bağımsız değişkenlerinize --headless işaretini ekleyin.
Mevcut bir tarayıcı oturumuna bağlanma
Varsayılan olarak, temsilciler için Geliştirici Araçları yeni bir Chrome örneği başlatır. Ancak temsilcinizi mevcut bir tarayıcı oturumuna bağlayabilirsiniz. Bu, temsilcinizin daha önce başlattığınız bir oturumdaki sorunu araştırması gerektiğinde (örneğin, zaten oturum açtıysanız) yararlıdır.
Mevcut bir oturuma iki şekilde bağlanabilirsiniz:
Otomatik bağlantı (Chrome 144+)
--autoConnect işaretini kullanırsanız MCP sunucusu etkin bir Chrome örneğine otomatik olarak bağlanır.
- Çalışan Chrome tarayıcınızda
chrome://inspect/#remote-debuggingsimgesine gidin ve Uzaktan Hata Ayıklama'yı etkinleştirin. - MCP yapılandırmanıza
--autoConnectekleyin:json "args": ["chrome-devtools-mcp@latest", "--autoConnect"] - Aracı bağlanmaya çalıştığında Chrome, izin isteyen bir iletişim kutusu gösterir. İzin ver'i tıklayın.
Manuel bağlantı
--autoConnect aracını kullanamıyorsanız (ör. korumalı alan ortamında) Chrome'u hata ayıklama bağlantı noktasıyla manuel olarak başlatabilir ve --browser-url kullanarak bağlanabilirsiniz.
- Chrome'u, uzaktan hata ayıklama etkinleştirilmiş ve özel bir kullanıcı verileri diziniyle terminalden başlatın.
- macOS:
shell /Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome --remote-debugging-port=9222 --user-data-dir=/tmp/chrome-profile-stable - Windows:
shell start chrome --remote-debugging-port=9222 --user-data-dir=%TEMP%\chrome-profile-stable - Linux:
shell google-chrome --remote-debugging-port=9222 --user-data-dir=/tmp/chrome-profile-stable
- macOS:
- Aracınızı bu bağlantı noktasına bağlanacak şekilde yapılandırın:
json "args": ["chrome-devtools-mcp@latest", "--browser-url=http://127.0.0.1:9222"]
Geçici dizinin dışındaki dosyalara erişime izin ver
Dosya okuyan veya yazan araçlar (ör. ekran görüntülerini, izleri kaydetme veya uzantıları yükleme) yalnızca yapılandırılmış çalışma alanı köklerindeki yollara erişebilir. Sunucu, MCP istemcinizin MCP kökleri özelliği aracılığıyla sağladığı kökleri ve --filesystemRoot (takma ad --workspace) ile ilettiğiniz dizinleri kullanır. İstemciniz kök sağlamıyorsa ve --filesystemRoot değerini ayarlamazsanız dosya erişimi, işletim sisteminin geçici diziniyle sınırlı olur.
Diğer yollar için yapılan istekler Access denied: ... is not within any of
the configured workspace roots hatasıyla başarısız olur.
Bir proje dizinine erişime izin vermek için sunucu bağımsız değişkenlerinize --filesystemRoot ekleyin. Birden fazla dizine izin vermek için işareti tekrarlayabilirsiniz:
"args": ["chrome-devtools-mcp@latest", "--filesystemRoot=/path/to/project"]
Yapılandırma seçenekleri referansı
Aşağıdaki bölümlerde, kullanılabilen yapılandırma işaretleri listelenmiştir. En son seçenekler ve güncellemeler için Chrome Geliştirici Araçları MCP GitHub deposuna bakın.
Bağlantı seçenekleri
Sunucunun Chrome'a nasıl bağlanacağını yapılandırmak için bu seçenekleri kullanın.
| İşaret | Tür | Varsayılan | Açıklama |
|---|---|---|---|
--autoConnect veya --auto-connect |
boole | false |
Yerel olarak çalışan bir Chrome (144+) örneğine otomatik olarak bağlanır. chrome://inspect/#remote-debugging kullanılarak uzaktan hata ayıklamanın etkinleştirilmesi gerekir. |
--browserUrl veya --browser-url-u |
dize | false |
Çalışan, hata ayıklanabilir bir Chrome örneğine (ör. http://127.0.0.1:9222) bağlanın. |
--wsEndpoint veya --ws-endpoint-w |
dize | false |
Çalışan bir Chrome örneğine bağlanmak için WebSocket uç noktası (ör. ws://127.0.0.1:9222/devtools/browser/<id>). --browserUrl için alternatif. |
--wsHeaders veya --ws-headers |
dize | false |
JSON biçiminde WebSocket bağlantısı için özel başlıklar (örneğin, '{"Authorization":"Bearer token"}'). Yalnızca --wsEndpoint ile çalışır. |
Tarayıcı başlatma seçenekleri
Bu seçenekler, MCP sunucusu Chrome'u başlattığında geçerlidir.
| İşaret | Tür | Varsayılan | Açıklama |
|---|---|---|---|
--headless |
boole | false |
Chrome'u gözetimsiz (kullanıcı arayüzü olmadan) modda çalıştırır. |
--channel |
dize | stable |
Kullanılacak Chrome kanalını belirtir. Seçenekler: canary, dev, beta ve stable. |
--executablePath veya --executable-path-e |
dize | false |
Özel Chrome yürütülebilir dosyasının yolu. |
--userDataDir veya --user-data-dir |
dize | Açıklamayı göster | Kullanıcı verileri dizininin yolu. $HOME/.cache/chrome-devtools-mcp/chrome-profile$CHANNEL_SUFFIX_IF_NON_STABLE varsayılandır. |
--isolated |
boole | false |
Tarayıcı kapatıldığında otomatik olarak temizlenen geçici bir kullanıcı verileri dizini oluşturur. |
--viewport |
dize | false |
İlk görüntü alanı boyutu (ör. 1280x720). Gözetimsiz modda maksimum boyut 3840x2160'dir. |
--proxyServer veya --proxy-server |
dize | false |
Chrome'a iletilen proxy sunucusu yapılandırması. |
--chromeArg veya --chrome-arg |
dizi | false |
Chrome'a aktarılacak ek bağımsız değişkenler. |
--ignoreDefaultChromeArg veya --ignore-default-chrome-arg |
dizi | false |
Chrome için varsayılan bağımsız değişkenleri açıkça devre dışı bırakın. |
Güvenlik ve gizlilik seçenekleri
Güvenlik ayarlarını ve veri gizliliğini yönetmek için bu seçenekleri kullanın.
| İşaret | Tür | Varsayılan | Açıklama |
|---|---|---|---|
--acceptInsecureCerts veya --accept-insecure-certs |
boole | false |
Kendinden imzalı ve süresi dolmuş sertifikalarla ilgili hataları yoksayar. Dikkatli kullanın. |
--blockedUrlPattern veya --blocked-url-pattern |
dizi | false |
Belirtilen URL kalıplarını engelleyerek ağ erişimini kısıtlar (URLPattern kullanılır). Gezinmeleri ve alt kaynakları engeller. |
--allowedUrlPattern veya --allowed-url-pattern |
dizi | false |
Yalnızca belirtilen URL kalıplarına izin vererek ağ erişimini kısıtlar. Chrome 149 veya sonraki bir sürüm gerekir. |
--redactNetworkHeaders veya --redact-network-headers |
boole | false |
Hassas ağ başlıklarını istemciye döndürmeden önce çıkartma işlemi uygular. |
--usageStatistics veya --usage-statistics |
boole | true |
Aracı iyileştirmek için kullanım istatistiklerinin toplanmasını sağlar. CHROME_DEVTOOLS_MCP_NO_USAGE_STATISTICS veya CI ortam değişkenleri kullanılarak da devre dışı bırakılabilir. |
--performanceCrux veya --performance-crux |
boole | true |
Gerçek kullanıcı deneyimi verilerini almak için performans izlerindeki URL'leri Google CrUX API'ye gönderir. |
--javascriptEvaluation veya --javascript-evaluation |
boole | true |
JavaScript yürütmeyi devre dışı bırakmak için false olarak ayarlayın. Devre dışı bırakıldığında komut dosyası değerlendirme araçları devre dışı bırakılır, navigate_page politikasının initScript parametresi kapatılır ve javascript:, data: veya vbscript: URL'lerine gitmeye izin verilmez. |
--filesystemRoot veya --filesystem-root--workspace |
dizi | İşletim sistemi geçici dizini | Dosyaya erişim araçlarının, MCP istemcisi tarafından sağlanan köklerin yanı sıra kullanmasına izin verilen bir dizin. Birden fazla kez belirtilebilir. Geçici dizin dışından dosya erişimine izin verme başlıklı makaleyi inceleyin. |
--allowUnrestrictedPaths veya --allow-unrestricted-paths |
boole | false |
Desteği sonlandırıldı: Bunun yerine --workspace=/ kullanın. MCP istemcisi kök sağlamadığında geçerli olan yol kısıtlamasını devre dışı bırakır. |
Özellik kategorileri
Bu işaretleri kullanarak araç gruplarını etkinleştirebilir veya devre dışı bırakabilirsiniz.
| İşaret | Tür | Varsayılan | Açıklama |
|---|---|---|---|
--categoryInput veya --category-input |
boole | true |
Girişle ilgili araçları etkinleştirir. |
--categoryNavigation veya --category-navigation |
boole | true |
Gezinmeyle ilgili araçları etkinleştirir. |
--categoryEmulation veya --category-emulation |
boole | true |
Emülasyonla ilgili araçları etkinleştirir. |
--categoryNetwork veya --category-network |
boole | true |
Ağla ilgili araçları etkinleştirir. |
--categoryPerformance veya --category-performance |
boole | true |
Performansla ilgili araçları etkinleştirir. |
--categoryDebugging veya --category-debugging |
boole | true |
Hata ayıklamayla ilgili araçları etkinleştirir. |
--categoryMemory veya --category-memory |
boole | true |
Bellekle ilgili araçları etkinleştirir. |
--categoryExtensions veya --category-extensions |
boole | false |
Uzantılarla ilgili araçları etkinleştirir. Yalnızca boru bağlantısıyla desteklenir. |
--categoryPwa veya --category-pwa |
boole | false |
Progresif web uygulamalarını (yükleme, başlatma, kaldırma ve işletim sistemi durumu) otomatikleştirmeye yönelik araçları etkinleştirir. Yalnızca boru bağlantısıyla desteklenir. |
--categoryExperimentalThirdParty veya --category-experimental-third-party |
boole | false |
İncelenen sayfa tarafından sunulan üçüncü taraf geliştirici araçlarını etkinleştirir. |
--categoryExperimentalWebmcp veya --category-experimental-webmcp |
boole | false |
WebMCP araçlarında hata ayıklamayı etkinleştirir. WebMCP özellikleri etkinleştirilmiş Chrome 149 veya sonraki bir sürüm gerekir. |
--memoryDebugging veya --memory-debugging |
boole | false |
Bellek hata ayıklama araçlarını etkinleştirir. |
Ekran görüntüsü seçenekleri
Aracının ekran görüntülerini nasıl alacağını özelleştirmek için bu seçenekleri kullanın.
| İşaret | Tür | Varsayılan | Açıklama |
|---|---|---|---|
--screenshotFormat veya --screenshot-format |
dize | false |
Varsayılan çıkış biçimini (png) geçersiz kılar. Seçenekler: jpeg, png ve webp. jpeg ve webp biçimleri daha küçüktür. Bu da yapay zeka sohbetlerinde bağlam boyutunu azaltmaya yardımcı olur. |
--screenshotQuality veya --screenshot-quality |
sayı | false |
jpeg ve webp için sıkıştırma kalitesini (0-100) geçersiz kılar. |
--screenshotMaxWidth veya --screenshot-max-width |
sayı | false |
Piksel cinsinden maksimum genişlik. Daha büyük ekran görüntüleri küçültülür. |
--screenshotMaxHeight veya --screenshot-max-height |
sayı | false |
Piksel cinsinden maksimum yükseklik. Daha büyük ekran görüntüleri küçültülür. |
Deneysel seçenekler
Geliştirme aşamasındaki deneysel özellikleri etkinleştirmek için bu seçenekleri kullanın.
| İşaret | Tür | Varsayılan | Açıklama |
|---|---|---|---|
--experimentalDevtools veya --experimental-devtools |
boole | false |
Geliştirici Araçları hedefleri üzerinde otomasyonu etkinleştirir. |
--experimentalVision veya --experimental-vision |
boole | false |
Koordinat tabanlı araçları (ör. click_at) etkinleştirir. Genellikle ekran görüntülerine bakarak doğru koordinatlar üretebilen bir bilgisayar kullanım modeli gerektirir. |
--experimentalStructuredContent veya --experimental-structured-content |
boole | false |
Yapılandırılmış biçimlendirilmiş içerik oluşturur. |
--experimentalIncludeAllPages veya --experimental-include-all-pages |
boole | false |
Her türden sayfayı (ör. web görünümleri ve arka plan sayfaları) içerir. |
--experimentalScreencast veya --experimental-screencast |
boole | false |
Ekran video kaydı araçlarını gösterir (PATH'te ffmpeg gerekir). |
--experimentalFfmpegPath veya --experimental-ffmpeg-path |
dize | false |
ffmpeg yürütülebilir dosyasının yolu. |
--experimentalScreencastFps veya --experimental-screencast-fps |
sayı | false |
Ekran kaydı için saniyedeki kare sayısı. Daha düşük değerler, kareleri ffmpeg kodlayabileceğinden daha hızlı üreten sayfalarda bellek kullanımını azaltabilir. |
Diğer seçenekler
Günlüğü, sayfa yönlendirmeyi ve kaynak haritaları yapılandırmak ya da basitleştirilmiş bir araç setini etkinleştirmek için bu seçenekleri kullanın.
| İşaret | Tür | Varsayılan | Açıklama |
|---|---|---|---|
--slim |
boole | false |
Üç araçtan (gezinme, komut dosyası yürütme ve ekran görüntüleri) oluşan küçük bir grup sunar. Temel tarayıcı görevleri için kullanışlıdır. |
--pageIdRouting veya --page-id-routing |
boole | true |
Sayfa kapsamlı araçlarda pageId gerektirir ve istekleri sayfa kimliğine göre yönlendirir. Bu, eşzamanlı temsilci oturumları için kullanışlıdır. Devre dışı bırakmak için --no-page-id-routing kısayolunu kullanın. |
--sourceMaps veya --source-maps |
boole | true |
Geliştirici Araçları'nda kaynak haritalarını etkinleştirir. --no-source-maps kısayolunu kullanarak devre dışı bırakın. |
--logFile veya --log-file |
dize | false |
Hata ayıklama günlüklerinin yazılacağı dosyanın yolu. Ayrıntılı günlükleri etkinleştirmek için NODE_DEBUG ortam değişkenini * olarak ayarlayın. |
--config |
dize | false |
JSON yapılandırma dosyasının yolu. |
Ortam değişkenleri
Sunucuyu yapılandırmak için aşağıdaki ortam değişkenlerini de kullanabilirsiniz:
CHROME_DEVTOOLS_MCP_NO_USAGE_STATISTICS: Ayarlanırsa kullanım istatistiklerinin toplanmasını devre dışı bırakır (--no-usage-statisticsile eşdeğerdir).CHROME_DEVTOOLS_MCP_NO_UPDATE_CHECKS: Ayarlanırsa güncellemeler için düzenli kontroller devre dışı bırakılır.CI: Ayarlanırsa kullanım istatistiklerinin toplanması devre dışı bırakılır.NODE_DEBUG: Ayrıntılı hata ayıklama günlük kaydını etkinleştirmek için*olarak ayarlayın (--logFileile birlikte çalışır).