Protokolden ne çıkarıldı
Yeni revizyon iki şeyi aynı anda siliyor: Streamable HTTP taşımasındaki protokol düzeyi oturumlar ve Mcp-Session-Id başlığı gidiyor, initialize ile notifications/initialized el sıkışması da gidiyor. Yerine gelen düzenleme şu: her istek kendi protokol sürümünü ve istemci yeteneklerini _meta alanında taşıyor, sunucular da desteklediklerini bildiren server/discover çağrısını uygulamak zorunda. Çağrılar arasında durum tutması gereken sunucu, bunu sunucunun kendi ürettiği ve sıradan araç argümanı olarak geçirilen tanıtıcılarla yapıyor.[1]
Bu silmenin karşılığını iki küçük değişiklikte görmek mümkün. tools/list, prompts/list ve resources/list sonuçları artık ttlMs ve cacheScope alanlarını taşımak zorunda; sunucuların araçları belirlenimci bir sırayla döndürmesi de öneriliyor. Liste uçlarının bağlantıya göre değişmemesi, bu iki alanın anlamlı olmasının ön koşulu: bağlantı başına farklılaşan bir listenin ortak bir önbellekte ömrü olmaz. Başka bir okuma da mümkün — önbellek alanları oturumlar korunarak da eklenebilirdi ve sıralama yalnızca bir öneri, yani bir sunucu maddeye uyup listeyi yine de karıştırabilir.[1]
Bağımlılık kalkmıyor, yer değiştiriyor
Aynı revizyonda Roots, Sampling ve Logging özellikleri en az on iki aylık bir pencereyle kullanımdan kaldırılmaya alındı. Önerilen geçişler yazılı: Roots yerine dizin ve dosyaların araç parametreleri, kaynak adresleri ya da sunucu yapılandırması üzerinden geçirilmesi, Sampling yerine doğrudan model sağlayıcı arayüzleriyle bütünleşme, Logging yerine stderr ya da OpenTelemetry.[1]
Üçü arasında asıl ağırlığı olan Sampling. Sampling’i kullanan bir sunucu, istemcinin model erişimini ödünç alıyordu; artık doğrudan sağlayıcı arayüzüne bağlanması isteniyor. Yani sunucu yazarı kendi anahtarını, kendi faturasını ve kendi model seçimini üstleniyor. Bu bir bağımlılığın kaldırılması değil, yerinin değişmesi: denetim sunucu yazarına dönüyor, karşılığında yeni bir satıcı ilişkisi kuruluyor. Bileşenini değiştirebilmek isteyen bir ekip için bu iyi haber; tek bir istemciye yaslanarak model çağıran küçük bir sunucu içinse yeni bir işletme yükü.[1]
Karşılaştırma aynı haftadan geliyor. Google, Gemini API’nin yönetilen ajanlarına ortam kancaları ekledi: ajanın kum havuzunda yaptığı her araç çağrısından önce ve sonra özel betik çalışıyor, pre_tool_execution çağrıyı engelleyip doğrulayabiliyor, post_tool_execution sonradan denetliyor. İki hamle de araç çağrısının etrafına bir müdahale noktası koyuyor, ama farklı türden: MCP’ninki her uygulayıcının karşılamak zorunda olduğu bir şartname maddesi, kancalar ise tek bir satıcının çalışma zamanı özelliği. Aynı işlevi iki farklı taahhüt seviyesinde almak, bir ekibin bileşen değiştirme özgürlüğünü doğrudan belirliyor. Bunun daha zayıf bir okuması da var: iki değişikliğin aynı haftaya düşmesi, ortak bir tasarım eğiliminden çok bağımsız takvimlerin çakışması olabilir.[1], [2]