deniz.in

Piyasalar

Hava durumu

Hava durumu yükleniyor

· kaynak dev.to (home feed)

MCP'nin Sampling özelliği sunucuların modelinizi prompt etmesine izin veriyor ve onay kapısı istemciye göre değişiyor

MCP'nin Sampling primitive'i, bir sunucunun istemciden sunucunun yazdığı bir prompt ile LLM tamamlaması istemesine olanak tanıyor. Belirtimdeki onay kapıları yalnızca istemcilerin bunları fiilen uyguladığı yerde var.

MCP'nin Sampling özelliği sunucuların modelinizi prompt etmesine izin veriyor ve onay kapısı istemciye göre değişiyor

Tek yönlü tablo, düzeltiliyor

Model Context Protocol üzerine yazılanların çoğu tek bir yönü anlatır: modeliniz bir araç seçer, sunucu onu çalıştırır, bir sonuç geri döner. kenimo49'un dev.to'daki yazısı, bunu tersine çeviren daha az konuşulan bir primitive'e işaret ediyor. Sampling, bir MCP sunucusunun istemciye, sunucu adına, sunucunun yazdığı bir prompt ile bir LLM tammlaması çalıştırması isteği göndermesine izin veriyor. Sunucu, çağırdığınız bir şey olmaktan çıkıp kısa bir süreliğine modelinizi prompt eden bir şeye dönüşüyor.

Sampling gerçekte ne yapıyor

Sıradan bir MCP etkileşiminde akıl yürüten modeldir; sunucu ise araçları çalıştırıp metin döndüren bir altyapıdır. Sampling, kendi modeli olmayan bir sunucunun istemcinin modelini ödünç almasını sağlıyor. Yazının örneği, sınıflandıramadığı bir işlemle karşılaşan bir gider işleme sunucusu. Başarısız olmak, tahmin etmek ya da sorunu geri döndürmek yerine, görevin ortasında duruyor, istemcinin LLM'ine işlemin hangi hesaba ait olduğunu soruyor ve devam ediyor. MCP konsept dokümantasyonuna göre, agentic sunucu iş akışlarını mümkün kılan şey budur: bir sunucu, kendi modelini ve API anahtarını teslim etmeden, körlemesine çalışmak yerine bir adımda durup akıl yürütebiliyor.

İstekte ne yolculuk ediyor

Metot sampling/createMessage. Yazıya göre, MCP belirtim taslağına dayanarak, birkaç alan göründüğünden fazlasını yapıyor:

  • messages ve systemPrompt, uzak bir tarafın yazdığı bir prompt oluşturuyor. Bunu kullanıcı yazmadı.
  • modelPreferences, sunucunun hints ve costPriority, intelligencePriority ve speedPriority değerleri aracılığıyla bir model sınıfını desteklemesine izin veriyor. Nihai seçimi yine istemci yapıyor, ama sunucu pahalı bir modele doğru itebilir.
  • includeContext "none" (varsayılan), "thisServer" veya "allServers" değerlerini alıyor ve istemciye isteğe ne kadar çevresel konuşmanın katılacağını söylüyor. Belirtim taslağı reportedly daha geniş iki değeri yumuşak bir şekilde kullanımdan kaldırıyor; uyumlu bir istemci bunları yalnızca bir sampling-context yeteneği beyan etmişse dikkate alıyor.

Belirtimin içine koyduğu kapı

Protokol yazarları riski öngörmüş ve insan incelemesini bir noktada değil iki noktada zorunlu kılacak şekilde belirtmiş. Çağrıdan önce istemci, kullanıcıya sunucunun çalıştırmak istediği prompt'u göstermeli; kullanıcı bunu düzenleyebilir, onaylayabilir veya reddedebilir. Sonuç dönmenden önce istemci tammlamayı göstermeli; kullanıcı onu onaylayabilir veya engelleyebilir. Sunucu önerir, model düşünür ve bir insan hem gelen prompt'a hem de giden cevaba nöbetçilik eder.

Yazının vurguladığı gibi işleyici kelime "meli". Belirtim kapıyı tanımlıyor; belirli bir istemcinin onu iyi uygulayıp uygulamadığı ya da Sampling'i hiç uygulayıp uygulamadığı ayrı bir soru.

2026'da destek cılız

Yazarın istemci anketi, varsayımları sıfırlayan kısım. Claude Code'un MCP istemcisi hâlâ Sampling'i desteklemiyor; özellik talebi (issue #1785) Haziran 2025'ten beri açık ve Ağustos 2026'da, 58 yorumla, hâlâ açıktı. Başka yerlerde ise işler ilerledi: opencode sampling talebini (issue #11948) Nisan 2026'da tamamlanmış olarak kapattı ve VS Code'un MCP istemcisi modelPreferences üzerinde etkili oluyor. İki sonuç doğuyor. Sampling'e yaslanan sunucular, kullanıcıların fiilen çalıştırdığı istemcilerde başarısız olacak ya da işlevselliği bozulacak. Ve primitive eşit şekilde uygulanmadığı için, insan-döngüde garantisi ancak önünüzdeki belirli istemci kadar güçlü.

Unit 42'nin haritaladığı saldırı yüzeyi

Nisan 2026'da Palo Alto'nun Unit 42 ekibi, Sampling'e özgü saldırı vektörlerinin bir analizini yayımladı. Bu saldırılar, bozuk bir araç yerine meşru bir protokol özelliğine bindikleri için araç bütünlüğü kontrollerini ve sandboxing'i atlatıyor. Unit 42 kötüye kullanımı üç sınıfa ayırıyor: gizli dosya ve sistem işlemleri yapan gizli araç çağrısı, tur boyunca kalıcı olan talimatlar enjekte eden konuşma ele geçirme ve saldırganın iş yükleri için işlem kotasını tüketen kaynak hırsızlığı.

Ele geçirme mekanizması ince. Kötü niyetli bir sunucunun Sampling prompt'u, modele bir sonraki görünür yanıtına bir yönerge eklemesini söylüyor; bu metin konuşma geçmişine girdiği için, model Sampling çağrısı bittikten çok sonra bile sonraki turlarda ona uymaya devam ediyor. Aynı hile, modele çıkarılan bilgiyi bir sonraki cevabına sızdırmasını söyleyerek veri sızdırıyor. Ve includeContext, sunucular arası sorun: kapsamayı konusunda katı olmayan bir istemci, güvenilmeyen bir sunucunun "allServers" istemesine ve aynı modeli paylaşan güvenilir sunuculara ait bağlamı okumasına izin verebilir. Yumuşak kullanımdan kaldırma, belirtimin bunu sessizce geri alması gibi görünüyor ama yalnızca buna saygı duyan istemciler için.

Neden önemli

Sampling, MCP güven sınırını tersine çeviriyor. Araç sonuçları sunucudan kullanıcıya akar ve güvenilmeyen çıktı olarak ele alınır; bir Sampling isteği sunucudan sizin modelinize akar ve modelin akıl yürütmesinin üst kısmına bir üçüncü taraf yerleştirir. Bu, istemci tarafındaki onay kapısını tüm savunma yapıyor ve o kapı yalnızca belirli bir istemcinin onu inşa etmeyi seçtiği yerde var. Tek bir modele karşı birden çok MCP sunucusu çalıştıran herkes için, yazının ima ettiği pratik kontrol listesi kısa: istemcinizin Sampling'i hiç destekleyip desteklemediğini doğrulayın ve destekliyorsa, iki onay adımını nasıl gösterdiğini ve includeContext'i nasıl kapsadığını inceleyin.

  • #mcp
  • #llm
  • #security
  • #prompt-injection
  • #ai-agents

İlgili yazılar