Programlama ve Yazılım Geliştirme

Microsoft, C# için Resmî MCP Paketinin 2.0 Sürümünü Yayınladı

Yeni sürüm, 2026-07-28 tarihli MCP spesifikasyonuyla uyumludur; varsayılan olarak durum bilgisiz çalışma modelini benimser, HTTP üst bilgilerini standartlaştırır ve etkileşimli araçlarla çalışmak için çok turlu istekleri destekler. Sürüm, deneysel Tasks uzantısı dışında önceki kodlar, istemciler ve sunucularla geniş uyumluluğunu korur.

2026-07-28
4 dk okuma
9 görüntülenme
فريق تحرير certi.news
Microsoft, C# için Resmî MCP Paketinin 2.0 Sürümünü Yayınladı

Microsoft, 2026-07-28 spesifikasyonunun uygulanmasıyla eş zamanlı olarak C# için resmî MCP yazılım geliştirme kitinin 2.0 sürümünü duyurdu. Sürüm, MCP sunucularının HTTP üzerinden çalışma biçimini değiştirerek onları varsayılan olarak durum bilgisiz hâle getiriyor; standart HTTP üst bilgileri ekliyor ve araçların sürekli bir oturuma ihtiyaç duymadan kullanıcıdan veya dil modelinden girdi istemesine olanak tanıyan çok turlu istekleri destekliyor.

Sürüm, .NET üzerinde MCP sunucuları ve istemcileri geliştiren yazılımcıları hedefliyor; 1.x sürümündeki kararlı API'lerin çalışmaya devam etmesini sağlıyor ve .NET Framework ile kullanım için net8.0, net9.0 ve net10.0 hedef çerçevelerinin yanı sıra netstandard2.0 desteği sunuyor.

Varsayılan olarak durum bilgisiz sunucular

Önceki sürümlerde Streamable HTTP kullanımı, başlatma el sıkışmasının tamamlanmasını ve bir oturum oluşturulmasını, ardından sonraki her istekte Mcp-Session-Id üst bilgisinin gönderilmesini gerektiriyordu. Bu durum, istekleri tanımlayıcıyı oluşturan sunucu örneğine bağlıyor; birden fazla örnek çalıştırıldığında sabit yönlendirme veya oturumların taşınması gerekiyordu.

2026-07-28 spesifikasyonu initialize ve initialized el sıkışmalarını ve Mcp-Session-Id üst bilgisini kaldırıyor; protokol sürümünü ve yetenekleri her isteğin içine taşıyor. Bunun sonucunda herhangi bir sunucu örneği herhangi bir isteği işleyebiliyor; protokol düzeyinde sabit oturumlara veya paylaşılan oturum depolarına ihtiyaç kalmıyor. Bu da MCP sunucularının serverless, çok örnekli veya uç ortamlarda dağıtılmasını, yük dengeleyicinin arkasında normal bir ASP.NET Core uygulaması çalıştırmaya yaklaştırıyor.

HttpServerTransportOptions.Stateless seçeneği 2.0 sürümünde varsayılan olarak true değerine ayarlanıyor. Sunucudan istemciye istenmemiş iletilere veya oturuma bağlı taşıma durumuna ihtiyaç duyulduğunda durum bilgili mod etkinleştirilebiliyor. Oturumlar kullanılabilir bir seçenek olmaya devam ediyor, ancak artık temel ayar değil.

Yönlendirme ve izleme için HTTP üst bilgileri

Durum bilgisiz model, MCP isteğini kendi kendine yeterli bir HTTP POST isteğine dönüştürüyor; böylece olağan altyapı, bu isteği diğer HTTP trafiği gibi işleyebiliyor. Spesifikasyon, Mcp-Method ve Mcp-Name gibi üst bilgilerin yanı sıra bazı araç parametrelerinin Mcp-Param-* biçimindeki üst bilgilere yükseltilebilmesini sağlıyor.

Yük dengeleyici, vekil sunucu, ağ geçidi veya web uygulaması güvenlik duvarı, JSON-RPC istek gövdesini ayrıştırmadan yönlendirme ve izleme için bu üst bilgileri kullanabiliyor. İstek gövdesi güvenilir kaynak olmaya devam ediyor; üst bilgi değeri gövdedeki değerden farklıysa sunucu isteği HeaderMismatch hatasıyla reddediyor. Tasarım ayrıca ASCII olmayan değerler gibi üst bilgilerde desteklenmeyen değerlerin Base64 göstergesi kullanılarak kodlanmasını da destekliyor.

Etkileşimli araçlar için çok turlu istekler

Multi Round-Trip Requests veya MRTR özelliği, işini tek bir çağrı sırasında tamamlayamayan araçlarla çalışmak için bir yöntem ekliyor. Sunucu, isteğin yürütülmesi sırasında canlı bir oturum üzerinden istemciye bağlanmak yerine, giriş isteklerini ve requestState adlı opak bir durumu içeren InputRequiredResult türünde bir sonuç döndürüyor.

İstemci, kullanıcıdan onay istemek, bir dil modeli çağırmak veya çalışma alanı köklerini görüntülemek gibi gerekli işlemi gerçekleştiriyor; ardından aynı araç çağrısını inputResponses ve requestState ile birlikte yeniden gönderiyor. İşlem birden fazla tur boyunca tekrarlanabiliyor; süreklilik bilgileri yük içinde taşındığından süreç bir oturum gerektirmiyor.

Üst düzey McpClient, uygun işleyiciler kaydedildikten sonra MRTR'yi otomatik olarak işliyor. Sürüm, durum bilgili bir oturum bulunduğunda eski istemcilerle bir uyumluluk köprüsü de kullanabiliyor. Oturum olmadan çalışan eski istemci çok turlu etkileşimi gerçekleştiremiyor; bu nedenle aracın istenen değeri doğrudan çağrı parametresinden geçirmek gibi alternatif bir yol sağlaması gerekiyor.

Uyumluluk ve kullanılabilir paketler

Kararlı ve kullanımdan kaldırılmamış 1.x arayüzleri 2.0 içinde derlenmeye ve çalışmaya devam ediyor; kullanımdan kaldırılan değişiklikler silme işlemleri yerine uyarılar olarak gösteriliyor. 2.0 istemcisi daha eski bir sunucuya bağlanırken eski başlatma el sıkışmasını kullanabiliyor; 2.0 sunucusu da eski bir istemciden gelen bu el sıkışmasını kabul ediyor.

Protokol uyumluluğundaki tek istisna Tasks uzantısıdır; çünkü 2.0'da yeniden tasarlanan yapısı, 2025-11-25 spesifikasyonunda bulunan deneysel Tasks özelliğinin yerini alıyor ve arayüz veya protokol düzeyinde onunla uyumlu değil. Tasks artık ayrı ModelContextProtocol.Extensions.Tasks paketi içinde, deneysel MCP Apps ise ModelContextProtocol.Extensions.Apps içinde sunuluyor.

Temel paketler arasında istemci ve düşük düzey bileşenler için ModelContextProtocol.Core, çoğu sunucu için ModelContextProtocol ve Streamable HTTP sunucuları için ModelContextProtocol.AspNetCore bulunuyor. Yazı, 2.x serisindeki bir sonraki odağın OAuth ve OpenID Connect ile daha sıkı uyumluluğa dayanarak kapsamlı kimlik doğrulama ve yetkilendirme olacağını belirtiyor.

Haber kaynağı
ف
Yazar

فريق تحرير certi.news

Aynı kategoride

Bunlar da ilginizi çekebilir

Tüm haberleri gör