AWS, yapay zeka sohbetlerinde çalışan etkileşimli MCP uygulamalarını anlattı
AWS, Model Context Protocol'ü HTML widget'larıyla genişleten MCP Apps uygulamalarının Bedrock AgentCore üzerinde nasıl geliştirilip dağıtılacağını örnek bir uygulamayla gösterdi.
AWS, yapay zeka sohbet arayüzlerinde düz metin yerine etkileşimli arayüz gösteren MCP uygulamalarının nasıl geliştirileceğini anlatan bir teknik yazı yayımladı. MCP Apps, Model Context Protocol'ü (MCP) doğrudan sohbet arayüzünün içinde çizilen HTML widget'larıyla genişletiyor. Amazon Bedrock AgentCore ise bu sunucuyu barındırıyor.
AgentCore runtime, MCP desteği yerleşik gelen, oturum yalıtımlı ve sunucusuz bir barındırma ortamı sağlıyor. AgentCore Gateway de sunucuyu, MCP Apps'i destekleyen istemcilerin ulaşabileceği tek bir güvenli uç noktadan dışarı açıyor.
Örnek uygulama: Unicorn Rentals
Yazıdaki örnek uygulamada kullanıcı unicorn kiralıyor. "Bütün unicorn'ları gösterir misin?" dendiğinde istemci, her unicorn için görsel, ad, açıklama, saatlik ücret ve müsaitlik bilgisini taşıyan etkileşimli kartlar çiziyor. "Stardust unicorn'unu kiralamak istiyorum" cümlesiyle kayıt açılıyor ve rezervasyon numarası, tarih, saatlik ücret ekrana geliyor. Aktif kiralamalar süre ve o ana kadar oluşan maliyetle birlikte, bu kez kart yerine metin olarak dönüyor; AWS her isteğin zengin arayüze ihtiyaç duymadığını belirtiyor. İade adımında toplam ücret süreye ve saatlik tarifeye göre hesaplanıyor.
MCP Apps istemciden bağımsız bir standart olduğu için AWS, aynı sunucunun ChatGPT, Claude ve eklentiyi destekleyen diğer istemcilerde aynı deneyimi verdiğini söylüyor.
Nasıl kurulu
Uygulama TypeScript ile yazılmış; resmi @modelcontextprotocol/sdk paketini ve widget dağıtımını standartlaştıran @modelcontextprotocol/ext-apps eklentisini kullanıyor. AgentCore runtime'ın içeride yönettiği bir Express.js HTTP sunucusu olarak çalışıyor. İş mantığı ayrı bir AWS Lambda fonksiyonunda, kalıcı veri Amazon DynamoDB'de duruyor.
Araçlar registerAppTool ile kaydediliyor: list_unicorns, book_unicorn, view_bookings ve return_unicorn. Araç yapılandırmasındaki _meta.ui.resourceUri alanı hangi widget'ın çizileceğini söylüyor, yanıttaki structuredContent ise widget'a enjekte edilen veriyi taşıyor. Widget'lar registerAppResource ile MCP kaynağı olarak kaydediliyor. Dağıtımda kod zip'lenip Amazon S3'e yükleniyor ve NODE_22 ortamı, giriş noktası ve MCP protokol kipiyle bir AgentCore runtime kaynağı oluşturuluyor.
Ayrıntılar ve kod için AWS blog yazısına bakabilirsiniz.