İçeriğe atla
Şimdi yükleniyor
  • Anasayfa
  • Azure & Bulut
    • Microsoft Azure
    • Bulut Altyapı
    • Microsoft 365
  • Yazılım
    • DevOps
    • Geliştirici Araçları
    • Konteyner & K8s
  • AI & Veri
    • Yapay Zeka
    • Veri & Analitik
  • Güvenlik
    • Güvenlik & Kimlik
    • Kurumsal Teknoloji
  • Hakkımda
    • İletişim
×
  • Azure
  • Bulut Altyapı
  • DevOps
  • Geliştirici Araçları
  • Güvenlik & Kimlik
  • Konteyner & Kubernetes
  • Kurumsal Teknoloji
  • Microsoft 365
  • Microsoft Azure
  • Veri & Analitik
  • Yapay Zeka
  • Başlangıç
  • DevOps
  • Azure Functions ile Uzun Süreli MCP Araçları Geliştirmek
DevOps Geliştirici Araçları Microsoft Azure Azure Functions, Durable Functions, MCP Tasks, Model Context Protocol (MCP), Uzun Süreli İş Akışları A.KILIÇ 18/07/2026 4 Yorumlar

Azure Functions ile Uzun Süreli MCP Araçları Geliştirmek

Azure Functions ile Uzun Süreli MCP Araçları Geliştirmek
Ana Sayfa › DevOps › Azure Functions ile Uzun Süreli MCP Araçları Geliştirmek
📑 İçindekiler
  1. MCP Araçlarında Bugünkü Sınır
  2. MCP Tasks Uzantısı Neyi Değiştiriyor?
  3. Durable Functions ile Bugünden Uzun Süreli Görevler
  4. Sunucunun Sunduğu Araçlar
  5. Modelin Zayıf Noktası: Ajan Belleği
  6. Tasks Uzantısı Yaygınlaştığında Ne Değişecek?
  7. Ne Zaman Bu Deseni Tercih Etmeli?
  8. İlgili İçerikler
  9. Kaynaklar ve İleri Okuma
⏱️ 4 dk okuma📅 18 Temmuz 2026👁️ görüntülenme

Model Context Protocol (MCP) sunucularıyla çalışan geliştiricilerin sık karşılaştığı bir problem var: Bir aracın (tool) çalışması istemcinin bekleyebileceği süreyi aştığında ne yapmalı? Basit istek/yanıt akışının dışına çıkıp çok adımlı iş akışlarına ya da dakikalarca sürebilen işlemlere geçtiğinizde, mevcut MCP çağrı modeli sınırlarına dayanıyor. Bu yazıda, Azure Functions üzerinde Durable Functions kullanarak uzun süreli MCP araçlarının bugün nasıl gerçekleştirilebileceğini ve MCP’nin bu ihtiyacı standartlaştırmak için tanıttığı Tasks uzantısının ne getirdiğini ele alacağız.

MCP Araçlarında Bugünkü Sınır

MCP araçları bugün özünde istek/yanıt tabanlıdır: İstemci bir tools/call gönderir, sunucu sonucu döner. Bu model hızlı işlemler için uygundur; ancak şu koşullarda çatırdamaya başlar:

  • İş akışı dakikalarca sürüyorsa,
  • Yürütme birden fazla adıma bağlıysa,
  • Gecikme öngörülemezse.

Pratikte istemciler kendi araç çağrısı zaman aşımlarını uygular. Bunlar MCP spesifikasyonuyla standartlaştırılmamış olsa da genellikle 30–60 saniye civarındadır. Bu pencere aşıldığında istemci zaman aşımına düşer, ajan çağrıyı başarısız olarak görür ve arka plandaki iş çalışmaya devam edebilir. Kısacası: senkron araç çağrıları, uzun süreli işleri doğal biçimde modellemez.

MCP Tasks Uzantısı Neyi Değiştiriyor?

MCP’nin 2026-07-28 aday sürümüyle gelen Tasks uzantısı, tam olarak bu boşluğu doldurmayı hedefliyor. Uzantı etkinleştirildiğinde sunucu, bir tools/call‘a nihai sonuç yerine asenkron bir task handle (görev tanıtıcısı) ile yanıt verebiliyor. Yaşam döngüsünün geri kalanını istemci sürüyor:

  • tasks/get: Görevin durumunu sorgular.
  • tasks/update: Görev input_required durumuna geçerse sunucuya girdi gönderir.
  • tasks/cancel: Devam eden bir görevi iptal eder.

Bir görevin durumu working, input_required, completed, failed veya cancelled olabilir; tamamlandığında nihai sonucu da taşır. Görev oluşturma sunucu güdümlüdür: İstemci desteği istek başına yeteneklerinde bildirir, sunucu ise her istekte task döndürüp döndürmeyeceğine karar verir. Desteğini beyan etmeyen bir istemciye sunucu task döndürmez.

Ancak Tasks’ın işlevsel olabilmesi ekosistem desteğine bağlı: İstemcilerin uzantıyı beyan etmesi ve MCP SDK’larının görev yaşam döngüsünü uygulaması gerekiyor. Uzantı tanımlanmış olsa da geniş istemci ve SDK desteği hâlâ olgunlaşma sürecinde.

Durable Functions ile Bugünden Uzun Süreli Görevler

Tasks uzantısı istemciler arasında yaygın destek bulana kadar, mevcut istek/yanıt istemcileriyle çalışan ve uzun süreli yürütmeyi destekleyen bir desene ihtiyaç var. Microsoft tarafından paylaşılan örnekler bunu Durable Functions ile çözüyor. Durable Functions; kontrol noktası oluşturma, ölçekleme ve kurtarmayı otomatik yöneterek durum bilgisi tutan, uzun süreli iş akışlarını sıradan kod olarak yazmanıza olanak tanıyan bir çerçevedir.

Örneklerdeki uzun süreli iş, kısa bir blok zinciri madenciliğini simüle ediyor: Her blok, belirli bir örüntüye (örneğin belirli sayıda sıfırla başlayan bir çıktıya) ulaşana kadar farklı girdilerin denenmesini gerektiren bir hesaplama bulmacasını çözmeyi içeriyor. Bol deneme-yanılma barındırdığı için doğal olarak zaman alan, uzun süreli iş akışına iyi bir örnek oluşturuyor.

Sunucunun Sunduğu Araçlar

Örnek sunucu iki araç sunuyor:

  • start_mining

    • Blokları madenlemek için bir Durable Functions orkestrasyonu başlatır.
    • Yapılandırılabilir bir bütçe dahilinde kısa süre bekler.
    • Bütçe içinde tamamlanırsa sonucu satır içi döner; hâlâ çalışıyorsa bir workflow_id döner.
  • get_mining_result

    • workflow_id‘yi parametre olarak alır.
    • Mevcut durumu döner: completed, running, failed veya not_found.

Ajanın araçları doğru sırada çağırması için workflow_id, get_mining_result‘ta zorunlu bir parametre olarak tanımlanmış; böylece ajan önce bir madencilik başlatmadan sorgulama yapamıyor. Ayrıca running yanıtı, bir poll_after_seconds değeri ve bir next talimatı taşıyor. Bu, ajanı iş bitmediğinde vazgeçmek ya da tamamlandı varsaymak yerine tekrar yoklama yapmaya yönlendiriyor.

Modelin Zayıf Noktası: Ajan Belleği

Buna rağmen sorgulama yolu, ajanın kendisine verilen workflow_id‘yi doğru hatırlamasına ve halüsinasyona kapılmamasına bağlı. Ajan kimliği bozar veya uydurursa, sorgu yanlış örneğe düşer ya da hiçbir örneğe düşmez. Bu yüzden get_mining_result, tahmin yürütmek yerine not_found dönduruyor.

Tasks Uzantısı Yaygınlaştığında Ne Değişecek?

Tasks uzantısı istemciler ve SDK’lar genelinde tam olarak uygulandığında model daha basit ve daha güvenilir hâle geliyor: Sunucu bir Task handle dönduruyor, istemci sorgulamayı ve yaşam döngüsü çağrılarını yönetiyor, SDK yürütme durumunu takip ediyor. Bu, bugünkü çözümün ajanın workflow_id gibi tanımlayıcıları hatırlayıp doğru şekilde iletmesine bağlı olması gibi kritik kısıtı ortadan kaldırıyor.

Ne Zaman Bu Deseni Tercih Etmeli?

Yazının özetlediği koşullar bu deseni değerli kılıyor:

  • Aracın çalışma süresi öngörülemez veya istemcinin zaman aşımını aşabilecek kadar uzunsa,
  • İş akışı birden fazla adım içeriyor ve durum bilgisi tutulması gerekiyorsa,
  • Kontrol noktası, ölçekleme ve hata kurtarma gibi özelliklere ihtiyaç varsa.

Durable Functions bu ihtiyaçları serverless bir modelde karşılarken, Azure Functions üzerindeki MCP eklentisiyle de doğal biçimde birleşiyor. Tasks uzantısı olgunlaştığında ise mevcut kodun büyük bölümünü koruyup istemci tarafındaki polling yükünü standart bir yaşam döngüsüne devretmek mümkün olacak.

İlgili İçerikler

  • Azure MCP Araçları Visual Studio 2022’de Yerleşik Geldi
  • Azure DevOps MCP Server Nisan Güncellemesi: Küçük Dokunuşlar, Büyük Etki
  • Microsoft Foundry’de Azure DevOps Remote MCP Server: İlk İzlenimler ve Gerçekler

Kaynaklar ve İleri Okuma

  • devblogs.microsoft.com
  • How to build long-running MCP tools on Azure Functions – Azure SDK Blog (Lily Ma)
  • MCP 2026-07-28 Release Candidate ve Tasks uzantısı duyurusu
  • Durable Functions’a genel bakış (Microsoft Learn)
  • Örnek: mcp-functions-long-running-tools-python
  • Örnek: mcp-functions-long-running-tools (.NET)
  • Azure Functions MCP Extension Build 2026: Yenilikler ve Saha Notları
  • Azure Functions’ta MCP Apps: TypeScript ile Hızlı Başlangıç
  • Azure Functions’ta Retry Fırtınasını Durdurmak: Backoff ve Circuit Breaker
Aşkın KILIÇ
Aşkın KILIÇYazar

20+ yıl deneyimli Azure Solutions Architect. Microsoft sertifikalı bulut mimari ve DevOps danışmanı. Azure, yapay zekâ ve bulut teknolojileri üzerine Türkçe teknik içerikler üretiyor.

AZ-305AZ-104AZ-500AZ-400DP-203AI-102

İlgili Yazılar

Copilot CLI ile GitHub Pages'e Custom Domain: DNS Derdi Bitti
Copilot CLI ile GitHub Pages'e Custom Domain: DNS Derdi Bitti8 Tem 2026
Visual Studio’dan Çıkmadan Pull Request İncelemek: Artık Daha Rahat
Visual Studio’dan Çıkmadan Pull Request İncelemek: Artık Daha Rahat12 Haz 2026
GitHub'da Güvenlik Sekmesi Değişti: Kalite de Eklendi
GitHub'da Güvenlik Sekmesi Değişti: Kalite de Eklendi5 Nis 2026
Azure DevOps Güvenlik Taraması: Tek Tıkla Başlıyor
Azure DevOps Güvenlik Taraması: Tek Tıkla Başlıyor18 Nis 2026

Bu içerik işinize yaradı mı?

Benzer içerikleri kaçırmamak için YouTube ve GitHub hesaplarımı takip edin.

YouTube GitHub

Haftalık Bülten

Her pazar özenle seçilmiş teknoloji yazıları doğrudan e-postanıza gelsin.

Etiket Azure Functions Durable Functions MCP Tasks Model Context Protocol (MCP) Uzun Süreli İş Akışları
A.KILIÇ

Microsoft Azure Çözüm Uzmanı | Bulut Bilişim, Yapay Zekâ, DevOps ve Kurumsal Güvenlik alanlarında 15+ yıl deneyim. Azure, Kubernetes, AI/ML ve modern altyapı mimarileri üzerine yazılar yazıyorum.

view all posts
Önceki yazı

GitHub Copilot ile C++ İteratif Build’lerinizi Hızlandırın

Sonraki yazı

GitHub Copilot app now available in the usage metrics API

İlginizi Çekebilir

Copilot Code Review: Özelleştirme ve Yapılandırma
A.KILIÇ 0

Copilot Code Review: Özelleştirme ve Yapılandırma

19/07/2026
.NET ve .NET Framework Temmuz 2026 Servis Güncellemeleri
A.KILIÇ 0

.NET ve .NET Framework Temmuz 2026 Servis Güncellemeleri

19/07/2026
Azure Databricks'in İş Değeri: Forrester TEI Bulguları
A.KILIÇ 3

Azure Databricks’in İş Değeri: Forrester TEI Bulguları

19/07/2026

4 comments

comments user
Berk N. 18/07/2026 11:47

Durable Functions ile MCP araçlarını entegre etmek gerçekten akıllıca bir yaklaşım, zaman aşımı sorununu bu şekilde çözmek hiç aklıma gelmemişti. Biz de projemizde benzer timeout sorunlarıyla boğuşuyoruz, deneyeceğim kesinlikle. Bu arada .NET tarafında başlamak isteyenler için şu yazınız da güzeldi: https://www.askinkilic.com.tr/net-modernization-for-beginners-kursu-duyuruldu/

Yanıtla
comments user
Kaan T. 18/07/2026 13:11

Durable Functions’ı başka senaryolarda kullandım ama MCP araçlarıyla birleştirme hiç aklıma gelmemişti, mantıklı bir yaklaşım. Timeout sorununu orkestrasyon ile aşmak gerçekten temiz bir çözüm. Bu arada şu yazınız da güzeldi: Copilot Kullanım Metrikleri Artık Repo Bazında — https://www.askinkilic.com.tr/copilot-kullanim-metrikleri-artik-repo-bazinda/

Yanıtla
comments user
Derya E. 18/07/2026 22:28

Durable Functions’ın orkestrasyon mantığını MCP ile birleştirmek gerçekten akıllıca bir yaklaşım. Biz de benzer bir senaryoda fan-out/fan-in pattern’ını kullanmaya çalışmıştık ama zaman aşımı sorununu çözemedik, Tasks uzantısından haberdar değildim açıkçası. Activity function’ların retry policy’si bu durumda nasıl davranıyor, yazıda değindiniz mi?

Yanıtla
comments user
Zeynep A. 19/07/2026 01:34

Durable Functions kısmı çok işe yarar bilgi, zaman aşımı sorunuyla geçen ay epey boğuştum ve farklı bir yol izlemek zorunda kalmıştım. MCP’nin Tasks uzantısını daha önce duymamıştım, biraz daha araştırmam lazım. Bu arada şu yazınız da güzeldi: Visual Studio Private Marketplace Önizlemesi Başlıyor — https://www.askinkilic.com.tr/visual-studio-private-marketplace-onizlemesi-basliyor/

Yanıtla

Yorum gönder Yanıtı iptal et

Yazı Ara

Takip Edin

  • Takipçi
  • Takipçi
  • Takipçi
  • Abone
  • Takipçi
  • Copilot Code Review: Özelleştirme ve Yapılandırma
    19/07/2026 Copilot Code Review: Özelleştirme ve Yapılandırma
  • .NET ve .NET Framework Temmuz 2026 Servis Güncellemeleri
    19/07/2026 .NET ve .NET Framework Temmuz 2026 Servis Güncellemeleri
  • Azure Databricks'in İş Değeri: Forrester TEI Bulguları
    19/07/2026 Azure Databricks’in İş Değeri: Forrester TEI Bulguları
  • Visual Studio Model Picker: Modelleri Seç, Yönet, Verim Al
    19/07/2026 Visual Studio Model Picker: Modelleri Seç, Yönet, Verim Al
  • Visual Studio Private Marketplace Önizlemesi Başlıyor
    18/07/2026 Visual Studio Private Marketplace Önizlemesi Başlıyor
  • Veri Merkezi Güvenilirliği
    09/03/2026 Azure’da Kesintisiz Çalışma: Güvenilirlik ve Kurtarma
  • 2026-03-10_15-35-23
    10/03/2026 Microsoft 365 E7: Yapay Zeka ve Güvenlik Bir Arada
  • ChatGPT ile Araştırma: Search ve Deep Research Rehberi
    13/04/2026 ChatGPT ile Araştırma: Search ve Deep Research Rehberi
  • Kubernetes v1.36 Memory QoS: Katmanlı Bellek Koruması Geldi
    30/04/2026 Kubernetes v1.36 Memory QoS: Katmanlı Bellek Koruması Geldi
  • GitHub Copilot Pro Denemeleri Neden Durdu?
    11/04/2026 GitHub Copilot Pro Denemeleri Neden Durduruldu?
  • GitHub Copilot Pro Denemeleri Neden Durdu?
    11/04/2026 GitHub Copilot Pro Denemeleri Neden Durduruldu?
  • vcpkg'de Paralel Kurulum ve Güvenlik Yaması: Neler Değişti?
    06/04/2026 vcpkg’de Paralel Kurulum ve Güvenlik Yaması: Neler Değişti?
  • MCP Apps’i Kolaylaştıran Fluent API: Sahada Ne Değişiyor?
    08/04/2026 MCP Apps’i Kolaylaştıran Fluent API: Sahada Ne Değişiyor?
  • Yapay Zekâ Çağında Sanayi Politikası: Asıl Mesela Ne?
    06/04/2026 Yapay Zekâ Çağında Sanayi Politikası: Asıl Mesela Ne?
  • Microsoft Foundry Mart 2026: Sahadan İlk İzlenimler
    10/04/2026 Microsoft Foundry Mart 2026: Sahadan İlk İzlenimler

SİZİN İÇİN DERLEDİK

Copilot Code Review: Özelleştirme ve Yapılandırma
DevOps Geliştirici Araçları Güvenlik & Kimlik

Copilot Code Review: Özelleştirme ve Yapılandırma

19/07/2026 A.KILIÇ
.NET ve .NET Framework Temmuz 2026 Servis Güncellemeleri
Geliştirici Araçları Güvenlik & Kimlik Kurumsal Teknoloji

.NET ve .NET Framework Temmuz 2026 Servis Güncellemeleri

19/07/2026 A.KILIÇ
Azure Databricks'in İş Değeri: Forrester TEI Bulguları
Bulut Altyapı Microsoft Azure Veri & Analitik Yapay Zeka

Azure Databricks’in İş Değeri: Forrester TEI Bulguları

19/07/2026 A.KILIÇ
Visual Studio Model Picker: Modelleri Seç, Yönet, Verim Al
Geliştirici Araçları Yapay Zeka

Visual Studio Model Picker: Modelleri Seç, Yönet, Verim Al

19/07/2026 A.KILIÇ
Visual Studio Private Marketplace Önizlemesi Başlıyor
Geliştirici Araçları Güvenlik & Kimlik Kurumsal Teknoloji

Visual Studio Private Marketplace Önizlemesi Başlıyor

18/07/2026 A.KILIÇ
GitHub Copilot app now available in the usage metrics API
Bulut Altyapı DevOps Güvenlik & Kimlik

GitHub Copilot app now available in the usage metrics API

18/07/2026 A.KILIÇ
Azure Functions ile Uzun Süreli MCP Araçları Geliştirmek
DevOps Geliştirici Araçları Microsoft Azure

Azure Functions ile Uzun Süreli MCP Araçları Geliştirmek

18/07/2026 A.KILIÇ
GitHub Copilot ile C++ İteratif Build'lerinizi Hızlandırın
Geliştirici Araçları Microsoft Azure Yapay Zeka

GitHub Copilot ile C++ İteratif Build’lerinizi Hızlandırın

18/07/2026 A.KILIÇ
Copilot Kullanım Metrikleri Artık Repo Bazında
Bulut Altyapı Geliştirici Araçları Yapay Zeka

Copilot Kullanım Metrikleri Artık Repo Bazında

17/07/2026 A.KILIÇ
Evet" Demenin Maliyeti Değişti: Yeni Denge
DevOps Yapay Zeka

Evet” Demenin Maliyeti Değişti: Yeni Denge

17/07/2026 A.KILIÇ
.NET Modernization for Beginners Kursu Duyuruldu
Bulut Altyapı Geliştirici Araçları Microsoft Azure

.NET Modernization for Beginners Kursu Duyuruldu

17/07/2026 A.KILIÇ
Pure Virtual C++ 2026: C++/Rust Interop Oturumu
DevOps Geliştirici Araçları Yapay Zeka

Pure Virtual C++ 2026: C++/Rust Interop Oturumu

17/07/2026 A.KILIÇ

Hakkımda

Aşkın KILIÇ

Microsoft Azure Çözüm Uzmanı. Bulut bilişim, yapay zekâ, DevOps ve kurumsal güvenlik üzerine yazılar yazıyorum.

Devamını Oku →

Kategoriler

  • Azure
  • Bulut Altyapı
  • DevOps
  • Geliştirici Araçları
  • Güvenlik & Kimlik
  • Konteyner & Kubernetes
  • Kurumsal Teknoloji
  • Microsoft 365
  • Microsoft Azure
  • Veri & Analitik
  • Yapay Zeka

Popüler Etiketler

AI ajanları Azure Azure Cosmos DB Azure Developer CLI Azure DevOps Azure Functions Azure OpenAI azure sdk Azure SQL açık kaynak bulut bilişim C++ CI/CD copilot Copilot CLI DevOps DevSecOps geliştirici verimliliği GitHub GitHub Actions GitHub Copilot güvenlik Kimlik Doğrulama Kubernetes Kurumsal geliştirme kurumsal güvenlik kurumsal yapay zeka maliyet optimizasyonu Microsoft Agent Framework Microsoft Azure Microsoft Foundry OpenAI otomasyon performans Pull Request Python RAG SEO uyumlu verimlilik veri yönetimi Visual Studio VS Code yapay zeka yapay zeka ajanları Yazılım geliştirme
  • Gizlilik Politikası
  • Çerez Politikası
  • Kullanım Koşulları
  • Hakkımda
  • İletişim

© 2026 Aşkın KILIÇ | Tüm hakları saklıdır. | Powered By SpiceThemes

Çerez tercihleri Zorunlu çerezler sitenin çalışması için kullanılır. Analitik çerezler yalnız açık izninizden sonra Google Analytics ve Microsoft Clarity için etkinleştirilir. KVKK ve Çerez Politikası
✉

Haftalık Bülten

Azure, DevOps ve Yapay Zeka dünyasındaki en güncel içerikleri her hafta doğrudan e-postanıza alın.

Spam yok. İstediğiniz zaman iptal edebilirsiniz.
📱
Uygulamayı Yükle Ana ekrana ekle, çevrimdışı oku
Ana Sayfa
Kategoriler
💻 Geliştirici Araçları 301 yazı 🏗️ Bulut Altyapı 256 yazı 🤖 Yapay Zeka 218 yazı 🔧 DevOps 175 yazı ☁️ Microsoft Azure 169 yazı 🔒 Güvenlik & Kimlik 154 yazı 🏢 Kurumsal Teknoloji 64 yazı 📊 Veri & Analitik 55 yazı 🐳 Konteyner & Kubernetes 44 yazı 📧 Microsoft 365 19 yazı 📁 Azure 1 yazı
Ara
Popüler
Yapay Zeka Azure Kubernetes DevOps Copilot Docker
Paylaş
WhatsApp
İçindekiler
    ← GitHub Copilot ile C++ İterati...
    GitHub Copilot app now availab... →
    📩

    Gitmeden önce!

    Her pazar özenle seçilmiş teknoloji yazıları ve AI haberleri doğrudan e-postanıza gelsin. Ücretsiz, spam yok.

    🔒 Bilgileriniz güvende. İstediğiniz zaman ayrılabilirsiniz.

    📬 Haftalık bülten: Teknoloji + AI haberleri
    Beni Takip Et Yeni Azure / AI / DevOps yazılarını GitHub ve RSS üzerinden takip edin.
    GitHub RSS