Dün sabah kahvemi alıp Anthropic'in duyurusunu açtım; akşamında ekipten iki kişiyle referans sunucuları kurcalıyorduk. Model Context Protocol — kısaca MCP — dün açık kaynak olarak yayınlandı ve ilk izlenimimizi baştan söyleyeyim: bu, yapay zeka entegrasyonları için sektörün USB-C anı olabilir. "Olabilir" diyorum, çünkü standart adaylarının mezarlığı geniştir; ama eldeki sinyaller ciddiye alınacak kadar güçlü.
Önce meselenin neden önemli olduğunu anlatayım, çünkü duyuru metinleri bu kısmı hep protokol jargonuyla geçiştirir.
Beş asistan, on sistem, elli entegrasyon
Bugüne kadar yapay zekayı şirket sistemlerine bağlamak, her ikili için özel entegrasyon yazmak demekti. Beş yapay zeka uygulamanız ve on veri kaynağınız varsa teorik fatura elli ayrı entegrasyon — meşhur N çarpı M problemi. Her satıcının kendi eklenti formatı, kendi kimlik doğrulama akışı, kendi kısıtları vardı. Geçen yıl bir müşterimiz için yazdığımız Slack entegrasyonu yalnızca tek bir asistanla çalışıyordu; müşteri başka bir araca geçmek istediğinde o emeğin tamamı çöpe gitti. Bu hikâyeyi yaşayan herkes, dünkü duyuruyu neden dikkatle okuduğumuzu anlar.
Üstelik bu entegrasyonların asıl maliyeti yazıldıkları gün değil, sonraki her gün ödenir: bağlanılan API değişir, kimlik doğrulama akışı güncellenir, satıcı eklenti formatını yeniler — ve elli entegrasyonluk o teorik matris, elli ayrı bakım yükümlülüğüne dönüşür. Entegrasyon kodu yazmak masrafın peşinatıdır; taksitler bakımla gelir.
MCP'nin önerisi tam da bu çarpımı toplamaya çevirmek: veri kaynağınızı bir kez MCP sunucusu olarak tanımlarsınız; protokolü konuşan her istemci ona bağlanabilir. Bugün o istemci Claude Desktop; yarın kim olur, ekosistem gösterecek.
Protokolün üç yapı taşı
Teknik çekirdek şaşırtıcı derecede sade. Bir MCP sunucusu istemciye üç şey sunar. Araçlar (tools), modelin çağırabileceği fonksiyonlardır — "veritabanında sorgu çalıştır", "şu kanala mesaj at" gibi. Kaynaklar (resources), modelin okuyabileceği verilerdir — dosyalar, kayıtlar, dokümanlar. İstemler (prompts) ise sunucunun beraberinde getirdiği hazır görev şablonları. İletişim JSON-RPC üzerinden akıyor; sunucu yerel makinede stdio ile çalışabildiği gibi uzak da olabiliyor.
Duyurudan bir günde bir mimari değerlendirme yazmanın haddimizi aştığının farkındayım; yine de şu kadarını söyleyebilirim: spesifikasyonu bir oturuşta okuyup anlamak mümkün. Standart adayları için bu, göründüğünden önemli bir özellik — anlaşılmayan standart, benimsenmeyen standarttır.
Tasarımın hoşuma giden bir yanı da sunucuların küçük ve tek işli olmaya teşvik edilmesi: dosya sistemi sunucusu dosya işleri yapar, Postgres sunucusu veritabanı işleri. İstemci tarafında bu küçük parçalar yan yana takılıp birleşiyor — modele aynı sohbette hem veritabanını sorgulatıp hem sonucu dosyaya yazdırabiliyorsunuz, iki ayrı sunucu üzerinden. Bu kompozisyon fikri, tek dev eklentiler yerine Unix'in küçük araçlar felsefesini andırıyor ve bize doğru gelen de bu.
İlk akşam elimizle kurduk: notlar
Masa başı yorumla yetinmedik; dosya sistemi ve SQLite referans sunucularını dün akşam çalıştırdık. Kurulum sürtünmesizdi: Claude Desktop'ın konfigürasyonuna birkaç satır, sunucu ayakta. Modelin, bizim tanımladığımız SQLite veritabanına sorgu atıp sonuçları yorumlaması — kendi entegrasyon kodumuzu tek satır yazmadan — itiraf edeyim, keyifli bir andı.
SDK'lar TypeScript ve Python olarak gelmiş, ikisi de temiz görünüyor. Asıl dikkat çekici olan, duyuru gününde hazır bekleyen sunucu listesi: Slack, GitHub, Google Drive, Postgres ve birkaç tane daha. Bu, "protokolü yayınladık, ekosistem umarız gelir" duruşu değil; ekosistemin ilk halkasını beraberinde getiren bir lansman. Sektörde bu farkı yaratan lansman azdır.
Denemelerde dikkatimizi çeken bir davranış da şu: hangi aracın ne zaman çağrılacağına model kendisi karar veriyor. SQLite sunucusunu bağladık, soruyu sorduk; model şemayı inceledi, sorguyu kurdu, sonucu yorumladı — akışı biz yazmadık. Etkileyici, ama aynı ölçüde de düşündürücü: kararları model veriyorsa, o kararların kaydını tutmak ve sınırlarını çizmek bizim işimiz. İlk deneyde bile bütün araç çağrılarını loglamaya başladık; bu refleksin ileride standart pratik olacağına bahse girerim.
Sınırlarını da not edelim ki tablo gerçekçi kalsın: bugün itibarıyla protokolü konuşan istemci sayısı bir elin parmağını geçmiyor ve spesifikasyon çok genç — önümüzdeki aylarda kırıcı değişiklikler görmek kimseyi şaşırtmamalı. Yani bugün yazılan MCP sunucusu bir yatırımdan çok bir eskiz; biz de öyle muamele ediyoruz.
"Bunun araç çağırmadan (function calling) farkı ne?" sorusu da haklı olarak geliyor. Fark, katman: araç çağırma, modelin bir fonksiyonu tetikleyebilmesi — yetenek orada ve her satıcıda kendi usulünce var. MCP ise o araçların nasıl tanımlanıp keşfedileceğini ve konuşulacağını standartlaştırıyor; yani yeteneğin etrafındaki priz. Bugüne kadar herkes kendi fişini üretiyordu; teklif, fişin ortaklaşması.
USB-C benzetmesi ne kadar yerinde?
Benzetmeyi bilinçli kullanıyorum ama dürüst olmak gerekirse iki çekince var. Birincisi, standartlar savaşı riski: başka büyük oyuncular kendi protokollerinde ısrar ederse, "tek standart" hayali bir standart daha eklemekle sonuçlanabilir. Herkesin yaşadığı o hikâye — on dördüncü standardı birleştirmek için on beşincisini çıkarmak — burada da yazılabilir. İkincisi, güvenlik modeli: modele araç çağırma yetkisi vermek, yetki sınırlaması ve denetim sorularını beraberinde getiriyor. "Asistan veritabanıma bağlansın" cümlesi heyecan verici; "hangi tablolara, hangi yetkiyle, kim izleyecek?" soruları ise henüz ekosistemin olgunlaştırması gereken taraf.
Buna rağmen iyimserliğimin sebebi açık kaynak olması. Protokol tek şirketin tasarrufunda kapalı dursaydı bu yazıyı yazmazdım; spesifikasyonun ve SDK'ların açık olması, en azından oyunun kurallarının ortada olduğu anlamına geliyor.
Bugün panik yok, radar açık
Peki işletmeler bugün ne yapmalı? Bizim önerimiz: acele hiçbir şey, ama radarı da kapatmayın. Önümüzdeki aylar MCP'nin tutunup tutunmayacağını gösterecek; ilk gün gelen ekosistem desteği ve açık kaynak duruşu güçlü sinyaller. Tutunursa, "sistemimize yapay zeka bağlansın" isteğinin standart cevabı bu protokol olacak ve bugün özel entegrasyona yatırılan her lira, o gün sorgulanır hâle gelecek.
Beklemeden denemesi mantıklı olan iki grup var bence. Kendi iç araçlarını kullanan ekipler: risk düşük, öğrenme değeri yüksek; en kötü ihtimalle bir hafta sonu projesi olarak kalır. Ve ürününü başkalarına satan SaaS üreticileri: "ürünümüzün resmi MCP sunucusu var" cümlesi, protokol tutarsa erken davrananın rafta öne geçtiği türden bir cümle. Müşteriler entegrasyonu değil, prizi satın almak isteyecek.
Biz kendi payımıza beklemiyoruz: iç araçlarımızdan biri için deneysel bir MCP sunucusu yazmaya bugün başladık. Amaç üretime almak değil, protokolü kas hafızasına işlemek — müşterilerimiz sorduğunda "okuduk" değil "yazdık" diyebilmek. Deneyimi bu blogda paylaşacağız; bu konuyu kendi sistemleriniz için konuşmak isterseniz bize her zaman yazabilirsiniz.