SEO Yetmiyor: Web Siteniz Yapay Zekâ Ajanları İçin Hazır mı?

Web sitelerini uzun süredir iki kullanıcı için optimize ediyoruz: sayfayı gören insan ve içeriği tarayan arama motoru. Tarayıcı içinde işlem yapan yapay zekâ ajanları üçüncü bir kullanıcı türü ekliyor. Bu ajan yalnızca metni bulmak istemiyor; doğru formu seçmek, alanları doldurmak, filtre uygulamak veya kullanıcının adına bir süreci başlatmak istiyor.
Burada SEO hâlâ gerekli, fakat tek başına yeterli değil. SEO ajanın sayfayı bulmasına yardım eder. Erişilebilir ve kararlı bir arayüz sayfayı anlamasını kolaylaştırır. WebMCP ise uygulamanın yapabildiği belirli işleri, ajanların tahmin etmek yerine yapılandırılmış araçlar olarak keşfetmesini amaçlıyor.
WebMCP henüz tamamlanmış bir web standardı değil. Chrome’da origin trial ve yerel geliştirme bayrağıyla denenebilen, Web Machine Learning Community Group tarafından geliştirilen bir öneri. Bu yüzden bugün yapılacak doğru iş bütün ürünü bu API’ye bağlamak değil; mevcut arayüzü bozmayan bir progressive enhancement olarak küçük ve ölçülebilir bir pilot kurmak.
Kısa cevap
Bir web sitesini yapay zekâ ajanlarına hazırlamak için şu sırayı izleyin:
- Önce semantik HTML ve erişilebilirlik ağacını düzeltin. Etiketi olmayan bir input veya programatik adı olmayan bir buton hem insana hem ajana sorun çıkarır.
- Arayüzü kararlı hale getirin. Ajan bir öğeyi seçtikten sonra reklam, görsel veya geç yüklenen içerik yüzünden yer değiştirmemeli.
- Yalnızca değerli iş akışlarını araçlaştırın. Her butonu tool yapmak yerine blog arama, rezervasyon hazırlama veya destek talebi oluşturma gibi tek amaçlı işler seçin.
- Duruma göre doğru aracı gösterin. Kullanılamayan bir işlemi kayıtsız tutun; aynı işi yapan örtüşen araçlarla model bağlamını doldurmayın.
- Güvenlik ve kullanıcı kontrolünü tarayıcı API’sine bırakmayın. Kimlik doğrulama, yetkilendirme, doğrulama ve kritik işlem onayı uygulamanın kendi güven sınırında kalmalı.
WebMCP bu temelin üzerine gelir. Kötü HTML’i, belirsiz ürün akışını veya zayıf backend yetkilendirmesini sihirli biçimde düzeltmez.
“Agent-ready” web sitesi ne demek?
İnsan, arama motoru ve tarayıcı ajanı aynı sayfaya farklı sorularla bakar:
| Kullanıcı | Temel ihtiyacı | Başarısızlık örneği |
|---|---|---|
| İnsan | İçeriği görmek, kontrolü anlamak ve geri bildirim almak | Belirsiz buton metni, düşük kontrast, kaybolan form durumu |
| Arama motoru | İçeriği keşfetmek, anlamlandırmak ve doğru URL’yi göstermek | Zayıf başlık yapısı, kopya URL, eksik yapılandırılmış veri |
| Tarayıcı ajanı | Mevcut durumu anlamak, doğru eylemi seçmek ve sonucu doğrulamak | Etiketsiz alan, yer değiştiren öğe, belirsiz yan etki, örtüşen araçlar |
Agent-ready olmak, insan arayüzünü kaldırmak anlamına gelmiyor. Tam tersine, iyi bir insan arayüzünün altında zaten bulunması gereken semantik yapıyı ve uygulama mantığını ajan için de açık hale getiriyor. Kullanıcı işlemin ekranda gerçekleştiğini görmeye, durumu paylaşmaya ve gerektiğinde kontrolü geri almaya devam ediyor.
WebMCP nedir, backend MCP’den farkı ne?
Chrome’un WebMCP dokümantasyonu, WebMCP’yi web uygulamalarının yapay zekâ ajanlarına yapılandırılmış araçlar sunmasını sağlayan önerilmiş bir standart olarak tanımlıyor. Sayfa üç şeyi açıkça paylaşabiliyor:
- Discovery: Sayfada hangi araçların şu anda kullanılabildiği.
- Schema: Aracın beklediği parametreler ve veri türleri.
- State: Mevcut sayfa durumunda hangi işlemlerin anlamlı olduğu.
Klasik MCP sunucusu çoğunlukla ayrı bir süreçte veya backend’de çalışır. WebMCP aracı ise sayfanın JavaScript’i içinde, açık tarayıcı bağlamında çalışır. Topluluk grubu taslağı, WebMCP kullanan sayfaları istemci tarafı script ile tool sağlayan MCP sunucularına benzetiyor; fakat bu benzetme iki yapının aynı güven ve transport modeline sahip olduğu anlamına gelmiyor.
Önemli bir sınır daha var: WebMCP’nin çalışması için sayfanın bir tarayıcı sekmesinde veya webview içinde açık olması gerekiyor. API, backend’inizin yerini alan headless otomasyon katmanı değil. Mevcut arayüz ve uygulama durumu üzerinden kullanıcı ile ajanın birlikte çalışmasını hedefliyor.
Ajan neden DOM’a bakıp tıklamakla yetinemez?
Görsel arayüzü kullanmak, bir ajanın buton ve input’ların anlamını her adımda yeniden tahmin etmesini gerektirir. Basit ve semantik bir sayfada bu yöntem işe yarayabilir. Karmaşık form, özel tarih seçici, geç yüklenen sonuçlar veya benzer isimli eylemler geldiğinde hata yüzeyi büyür.
Örneğin bir destek formunda “Gönder” düğmesi şu anlamlardan hangisine geliyor?
- Talebi hemen oluşturmak,
- önizleme ekranına geçmek,
- dosyayı yükleyip formda kalmak,
- veya kullanıcıdan son onay istemek.
İnsan bunu çevredeki metin ve görsel hiyerarşiden çıkarabilir. Ajan ise erişilebilirlik ağacına, DOM’a, ekran görüntüsüne ve önceki adımlara bakarak karar verir. WebMCP, “bu kontrol muhtemelen ne yapıyor?” sorusunu “bu araç şu girdilerle şu işi yapıyor” sözleşmesine çevirmeye çalışıyor.
Declarative ve imperative API ne zaman kullanılır?
WebMCP iki uygulama biçimi öneriyor. Declarative API, standart HTML formunu annotation’larla bir araca dönüştürüyor. Form zaten doğru semantik yapıya sahipse en düşük maliyetli başlangıç bu:
<form
toolname="prepare-contact-request"
tooldescription="İletişim talebini doldurur; göndermeden önce kullanıcıya gösterir."
>
<label for="name">Adınız</label>
<input id="name" name="name" autocomplete="name" required />
<label for="message">Mesajınız</label>
<textarea id="message" name="message" required></textarea>
<button type="submit">Talebi gözden geçir</button>
</form>
WebMCP desteklemeyen tarayıcı bu formu normal HTML olarak kullanmaya devam eder. Asıl progressive enhancement değeri burada.
Imperative API ise arama, filtreleme, sayfa durumuna bağlı araçlar veya özel uygulama mantığı için JavaScript ile kayıt yapıyor. Aşağıdaki örnek, yayımlanmış blog yazılarında arama yapan sadeleştirilmiş bir araç:
if ('modelContext' in document) {
await document.modelContext.registerTool({
name: 'search-published-posts',
description: 'Yayımlanmış blog yazılarını konuya göre arar.',
inputSchema: {
type: 'object',
properties: {
query: { type: 'string', maxLength: 120 }
},
required: ['query'],
additionalProperties: false
},
execute: async ({ query }) => {
const posts = await searchPublishedPosts(query);
renderSearchResults(posts);
return { posts };
}
});
}
Bu kod bir üretim reçetesi değil; API şeklinin küçük bir örneği. Gerçek uygulamada girdiyi JavaScript ve backend tarafında yeniden doğrulamak, sonuç boyutunu sınırlamak, hata durumunu anlamlı biçimde döndürmek ve arayüzün tamamlanan işlemi gerçekten yansıtmasını sağlamak gerekiyor.
İyi bir WebMCP aracı nasıl tasarlanır?
Resmî iyi pratikler, daha fazla araç eklemek yerine daha açık araçlar tasarlamayı öneriyor. Sağlam bir araç sözleşmesi şu özelliklere sahip:
- Tek bir işi yapar.
manage-siteyerinesearch-postsveyaprepare-contact-requestgibi dar bir amaç taşır. - Adı gerçekleşen eylemi söyler. Süreci başlatmak ile işlemi tamamlamak aynı fiille gizlenmez.
- Örtüşmez. Aynı girdide hangisinin seçileceği belirsiz üç arama aracı sunulmaz.
- Doğru zamanda kaydedilir. Araç yalnızca mevcut sayfa durumunda kullanılabiliyorsa gösterilir; durum değiştiğinde kaldırılır.
- Ham kullanıcı girdisini kabul eder. Gereksiz hesaplama ve format dönüşümünü modele yüklemez.
- Kodda katı doğrulama yapar. JSON Schema modele yardımcı olur; uygulama güvenliğinin yerine geçmez.
- Arayüzü günceller. İşlem bitince insan ve ajan aynı sonucu görür.
- Düzeltilebilir hata döndürür. “Başarısız” yerine hangi girdinin neden kabul edilmediğini açıklar.
Tool sayısı sınırsızmış gibi davranmak da iyi fikir değil. Her tanım model bağlamında yer kaplıyor ve benzer araçlar seçim kalitesini düşürüyor. En küçük kullanışlı araç seti genellikle en güvenilir olanı.
Lighthouse “Agentic Browsing” neyi ölçüyor?
Chrome’un Agentic Browsing denetimleri, sitenin makine etkileşimine uygunluğunu deterministik kontrollerle incelemeyi amaçlıyor. Kategori deneysel ve klasik Lighthouse kategorileri gibi 0–100 ağırlıklı puan vermiyor. Bunun yerine geçen kontrol oranını, pass/fail durumlarını ve uyarıları gösteriyor.
| Alan | Kontrol edilen sinyal | Neden önemli? |
|---|---|---|
| Erişilebilirlik | Programatik adlar, etiketler, rol ve ağaç bütünlüğü | Ajanlar sayfayı büyük ölçüde erişilebilirlik ağacı üzerinden anlar. |
| Görsel kararlılık | Cumulative Layout Shift | Öğe seçim ile etkileşim arasında yer değiştirirse yanlış tıklama oluşabilir. |
| WebMCP | Declarative ve imperative araç kaydı, schema geçerliliği | Uygulama mantığının yapılandırılmış ve keşfedilebilir olduğunu doğrular. |
| Keşfedilebilirlik | Kök dizinde llms.txt varlığı |
Makine tarafından okunabilir site özeti için bilgi verir. |
Deterministik denetim, gerçek bir ajanın her görevi başarıyla bitireceğini kanıtlamaz. Lighthouse temel teknik sinyalleri kontrol eder. Ürününüzün gerçek görevlerini ayrıca eval senaryolarıyla denemeniz gerekir.
EnesKaymaz.com için küçük bir pilot nasıl görünür?
Bir içerik ve portfolyo sitesinde onlarca araç yayınlamak gereksiz. Üç aday akış yeterli:
- Blog arama: Salt okunur
search-published-postsaracı konu, kategori veya anahtar kelimeyle yazıları bulur ve sonuçları normal arayüzde gösterir. - İletişim talebi hazırlama: Declarative form, ad ve mesajı doğru alanlara yerleştirir; kullanıcı göndermeden önce metni görür.
- Bülten formu: Ajan e-posta alanını hazırlayabilir; aboneliğin son onayı ve doğrulama akışı kullanıcıda kalır.
Admin panelinde yazı yayımlama, içerik silme veya deployment başlatma gibi işlemler bu ilk pilotun parçası olmamalı. Bunlar daha yüksek etkili, farklı kimlik doğrulama ve açık işlem onayı gerektiren yetenekler.
WebMCP güvenliği: yapılandırılmış olmak güvenli olmak değildir
WebMCP, belirsiz DOM etkileşimini daha açık bir sözleşmeye dönüştürebilir. Fakat aracın açıklaması, aldığı parametreler ve döndürdüğü içerik yine model bağlamına girer. Prompt injection, tool poisoning, yanlış niyet yorumlama ve gereğinden fazla veri paylaşma riskleri ortadan kalkmaz.
Chrome’un WebMCP güvenlik rehberi, dış veya kullanıcı üretimi içerik döndüren araçlar için untrustedContentHint, durum değiştirmeyen araçlar için readOnlyHint kullanılmasını öneriyor. Bunlar ajana sinyal verir; backend yetkilendirmesi veya insan onayı yerine geçen güvenlik politikaları değildir.
Origin izolasyonu ve tools Permissions Policy de önemli. Araçlar varsayılan olarak aynı origin sınırında tutulur. Cross-origin erişimi açacaksanız yalnızca gerçekten güvendiğiniz origin’leri açıkça seçin. Salt okunur bir araç bile özel favorileri, taslakları veya kullanıcıya özgü sonuçları sızdırabilir.
Daha geniş tehdit modeli için MCP güvenliği rehberindeki temel prensipler burada da geçerli: en az yetki, anlamlı onay, katı girdi doğrulama, güvenilmeyen çıktı, audit ve modelin dışında uygulanan politika.
12 maddelik agent-ready site kontrol listesi
- Her interaktif öğenin programatik adı ve ilişkili etiketi olduğundan emin olun.
- Formlarda doğru input türü,
name, autocomplete ve anlaşılır hata mesajı kullanın. - Görsellere boyut verin; geç yüklenen içerikle layout shift oluşturmayın.
- Kritik akışları insan olarak klavye ve ekran okuyucu ağacıyla test edin.
- WebMCP’ye başlamadan önce tek ve ölçülebilir bir kullanıcı görevi seçin.
- Her aracı tek işlevli, açık isimli ve diğer araçlardan ayrışmış tasarlayın.
- Araçları yalnızca kullanılabildikleri sayfa durumunda kaydedin.
- Schema’ya ek olarak girdiyi kodda ve backend’de doğrulayın.
- İşlem tamamlandığında arayüz durumunu güncelleyin ve sonucu kullanıcıya gösterin.
- Durum değiştiren, ücret doğuran veya veri gönderen işlemlerde somut onay isteyin.
- Dış içerikleri güvenilmeyen olarak işaretleyin; sonuç ve açıklama boyutlarını sınırlayın.
- Lighthouse kontrolünü gerçek görev eval’leri, erişilebilirlik testi ve güvenlik incelemesiyle tamamlayın.
Bugün uygulanmalı mı?
Rezervasyon, karmaşık form, ürün filtreleme, destek veya tarayıcı içi üretkenlik akışı sunuyorsanız küçük bir WebMCP pilotu yapmak mantıklı. API’nin değişebileceğini kabul edin, feature detection kullanın ve normal insan akışını her zaman çalışır tutun.
Yalnızca makale yayımlayan basit bir içerik siteniz varsa ilk yatırımınız WebMCP olmak zorunda değil. Semantik HTML, erişilebilirlik, performans, kararlı layout, iyi site araması ve açık içerik yapısı hem insanlara hem arama motorlarına hem de ajanlara daha fazla fayda sağlayabilir.
WebMCP’nin asıl fikri değerli: web sitesi artık sadece okunacak sayfalar koleksiyonu değil, kullanıcının kontrolü altında ajanlarla birlikte çalışabilecek bir arayüz. Ancak yeni API’ye yetişmekten daha önemli olan şey değişmedi. İyi tanımlanmış görevler, anlaşılır arayüz, en az yetki ve doğrulanabilir sonuç; insan için de ajan için de sağlam ürünün temeli.
Birincil kaynaklar
- Chrome for Developers: WebMCP
- Chrome for Developers: WebMCP origin trial
- Chrome for Developers: WebMCP best practices
- Chrome for Developers: WebMCP tool security
- Chrome for Developers: Agent-ready website toolkit
- Chrome for Developers: Lighthouse Agentic Browsing audits
- Web Machine Learning Community Group: WebMCP draft
- WebMCP explainer ve açık geliştirme deposu
WebMCP ve Agentic Browsing deneysel teknolojilerdir. Bu yazı güncellendiğinde API şekli, tarayıcı desteği ve güvenlik önerileri birincil kaynaklardan yeniden kontrol edilmelidir.
Yazar Hakkında

Enes Kaymaz
Enes Kaymaz
Tasarım yapıyor, kod yazıyor, arada bunlardan ürün çıkarıyor.
Hakkımda Daha Fazla Bilgi →İlgili Yazılar
Tümünü Gör →
Muzli: Tasarımcılar İçin Günlük Yaratıcı İlham Kaynağı
Muzli, yeni sekmenizi tasarım ilhamı, haberler ve trendlerle dolu bir kuratörlü akışa dönüştüren bir tarayıcı uzantısıdır. Tasarımcılar, geliştiriciler ve yaratıcılıkla uğraşan profesyoneller için özel olarak hazırlanmıştır ve Dribbble, Behance ve TechCrunch gibi 200'den fazla kaynaktan içerik toplayarak size kişiselleştirilmiş ve ilham verici bir deneyim sunar.
Devamını Oku →
Framer Neden Web Tasarımının Geleceğini Yeniden Tanımlıyor?
Dijital tasarımın sürekli gelişen dünyasında, Framer, tasarımcılar ve geliştiriciler için en güçlü platformlardan biri olarak ortaya çıkmıştır. Tasarım ve geliştirme arasındaki boşluğu kapatan bu platform, tek bir satır kod yazmadan üretime hazır web deneyimleri sunar. Ancak gerektiğinde React ile tamamen özelleştirilebilir olması da esnek bir çözüm sunar. Bu ikilik, Framer'ı sadece bir kod gerektirmeyen araç olmaktan çıkarır; baştan sona bir tasarım ve yayınlama platformu haline getirir.
Devamını Oku →Bültenime abone olun
Tasarım, geliştirme ve teknoloji trendleri hakkında en son güncellemeleri alın.