Yapılandırma

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.

  1. Çalışan Chrome tarayıcınızda chrome://inspect/#remote-debugging simgesine gidin ve Uzaktan Hata Ayıklama'yı etkinleştirin.
  2. MCP yapılandırmanıza --autoConnect ekleyin: json "args": ["chrome-devtools-mcp@latest", "--autoConnect"]
  3. 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.

  1. 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
  2. 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-statistics ile 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 (--logFile ile birlikte çalışır).