MCP C# SDK 2.0: HTTP artık varsayılan olarak stateless
Microsoft, MCP C# SDK 2.0 sürümünü yayımladı; bu sürüm 2026-07-28 MCP revizyonunu uygular. Streamable HTTP sunucuları artık varsayılan olarak stateless çalışıyor ve Multi Round-Trip Requests (MRTR) ile etkileşimli araçlar destekleniyor. Sürüm 2.1 ile 2.3 arasındaki güncellemeler de yeni işleyiciler ve OAuth düzeltmeleri getiriyor.
Kilit noktalar
- HttpServerTransportOptions.Stateless varsayılanı true oldu; oturum kullanan sunucular false ayarlamalı
- initialize el sıkışması ve Mcp-Session-Id kaldırıldı; sürüm ve yetenekler her istekte taşınıyor
- tools/call istekleri Mcp-Method ve Mcp-Name başlıklarını taşıyor; [McpHeader] ile Mcp-Param-* başlıkları üretilebiliyor
- Kullanıcı girdisi için InputRequiredException ve MRTR kullanılıyor; roots, sampling ve logging API'leri MCP9005 ile kullanımdan kaldırıldı
- Tasks, ModelContextProtocol.Extensions.Tasks paketine taşındı; 1.3 ve 1.4 deneysel sürümleriyle uyumsuz
- 2.3 ile McpClient.ServerInfo nullable oldu; kaynak uyumsuz bir değişiklik
Microsoft, MCP C# SDK'nın 2.0 sürümünü stabil olarak yayımladı. Sürüm, Model Context Protocol'ün 2026-07-28 revizyonunu uygular ve protokolün HTTP üzerindeki çalışma biçimini baştan ele alır. Initialize el sıkışması ve Mcp-Session-Id başlığı kaldırıldı; protokol sürümü ve yetenekler artık her istekle birlikte gidiyor. Böylece herhangi bir sunucu örneği herhangi bir isteği karşılayabilir, yapışkan yönlendirme veya ortak oturum deposu gerekmez. HttpServerTransportOptions.Stateless varsayılanı artık true; oturum gerektiren sunucular bunu false yapmalı.
Araç çağrıları için Mcp-Method ve Mcp-Name başlıkları eklendi, [McpHeader] özniteliğiyle seçilen parametreler Mcp-Param-* başlığına taşınabiliyor. Yük dengeleyiciler gövdeyi okumadan yönlendirme yapabilir. Ara çağrıda kullanıcıdan girdi istemek için araç InputRequiredException fırlatıyor, istemci yanıtları toplayıp çağrıyı yeniden gönderiyor. Stable 1.x API'leri çalışmaya devam ediyor; Tasks ise ayrı bir ModelContextProtocol.Extensions.Tasks paketine taşındı.
Gerçek dünyada kullanımı
- Birden fazla arka uç örneğinin arkasında çalışan, yapışkan oturum gerektirmeyen bir MCP sunucusu
- Kullanıcıdan onay veya ek bilgi isteyen, ASP.NET Core üzerinde çalışan etkileşimli bir araç
- Yük dengeleyici veya API ağ geçidinde başlığa göre yönlendirme yapan MCP trafiği
Neden önemli
Mevcut MCP sunucularını HTTP katmanında yeniden düşünmek gerekiyor: oturum durumuna dayanan kodlar, Stateless varsayılanı nedeniyle davranış değiştirebilir. Yeni sürüme geçmeden önce oturum kullanımını, OAuth ayarlarını ve ServerInfo'ya bağımlılığı kontrol etmek gerekir.
Benzer haberler
- Sahte 'evet': .NET 10 MCP sunucusundaki insan onayına yapılan 6 saldırıDEV Community: #dotnet2 gün önce
- React, .NET 10 ve Microsoft Foundry ile güvenli bir kurumsal chatDEV Community: #dotnet1 gün önce
- Claude Code ile ASP.NET Core endpoint incelemesi için yeniden kullanılabilir skillNick Cosentino (Dev Leader)3 gün önce