MCP Nedir? Yapay Zekâ Uygulamaları Araçlarla Nasıl Ortak Bir Dil Üzerinden Haberleşiyor?
Farklı uygulamalar için aynı bağlantıları tekrar geliştirmek, bakım maliyetini artırabilir. MCP (Model Context Protocol), araçların ve veri kaynaklarının ortak bir protokol üzerinden yapay zekâ uygulamalarına sunulmasını sağlar.
Anthropic tarafından Kasım 2024’te tanıtılan MCP’nin amacı, bu entegrasyonların farklı uygulamalarda yeniden kullanılmasını kolaylaştırmaktır.
MCP Nedir?
Model Context Protocol, yapay zekâ uygulamalarıyla harici araç ve bilgi kaynakları arasında iletişimi standartlaştıran açık bir protokoldür.
Uygun bağlantılar ve izinler bulunduğunda MCP üzerinden dosya okuma, veritabanı sorgulama, kod deposu inceleme veya iş takip sisteminde kayıt oluşturma gibi işlemler yapılabilir.
Buradaki standartlaşma, her hizmetin aynı işi yapması anlamına gelmez. Farklı hizmetler, sundukları yetenekleri ortak bir yöntemle tanıtır ve çağrılara ortak mesaj yapıları üzerinden yanıt verir.
MCP, modele kendiliğinden erişim yetkisi kazandırmaz. Kullanılabilecek araçlar ve ulaşılabilecek veriler, uygulamanın bağlantılarına ve verilen izinlere bağlıdır.
MCP’nin Temel Bileşenleri
MCP mimarisi üç temel rol üzerine kuruludur.
MCP Host
Kullanıcının çalıştığı yapay zekâ uygulamasıdır. Bir sohbet uygulaması, kod editörü veya ajan platformu host olabilir.
Host; modelle etkileşimi, kullanıcı arayüzünü ve MCP bağlantılarını yönetir.
MCP Client
Host içerisinde çalışan, belirli bir MCP sunucusuyla iletişimi yürüten bileşendir. İstekleri gönderir ve sonuçları uygulamaya aktarır.
Bir host, farklı sunucularla çalışmak için birden fazla istemci kullanabilir.
MCP Server
Araçları ve içerikleri MCP üzerinden sunan programdır. Kullanıcının bilgisayarında veya uzak bir sistemde çalışabilir.
Örneğin bir veritabanı MCP sunucusu, PostgreSQL’e bağlanarak izin verilen işlemleri sunabilir. PostgreSQL’in kendisi ile ona erişim sağlayan MCP sunucusu aynı bileşen değildir.
Tool, Resource ve Prompt Arasındaki Fark
MCP sunucuları yalnızca işlem yapan araçlar sunmaz. Üç temel yetenek türü bulunur:
| Bileşen | Görevi | Örnek |
|---|---|---|
| Tool — Araç | Bir işlem veya sorgu gerçekleştirir. | Satış kayıtlarını sorgulamak |
| Resource — Kaynak | Uygulamaya bağlam olarak kullanılabilecek içerik sağlar. | Veritabanı şeması veya dosya içeriği |
| Prompt — İstem şablonu | Tekrar kullanılabilir görev şablonu sunar. | Standart satış raporu değerlendirme şablonu |
Bir sunucu bunların bir bölümünü veya tamamını destekleyebilir. İçeriğin modele nasıl sunulacağı ve araçların hangi koşullarda kullanılacağı ise host uygulamasının tasarımına bağlıdır.
MCP Nasıl Çalışır?
Kullanıcının “Son satış raporunu aç ve önemli değişiklikleri özetle” dediğini düşünelim.
Örnek süreç şöyle ilerleyebilir:
-
Yetenekler keşfedilir: Uygulama, bağlı sunucunun hangi araçları sunduğunu öğrenir.
-
Uygun işlem belirlenir: Dosya arama ve okuma araçları seçilir.
-
Parametreler hazırlanır: Rapor adı, tarih aralığı veya klasör bilgisi oluşturulur.
-
Yetkiler kontrol edilir: Kullanıcının ilgili dosyalara erişimi doğrulanır.
-
Araç çalıştırılır: MCP sunucusu dosya sistemi veya belge hizmetiyle iletişim kurar.
-
Sonuç değerlendirilir: Uygulama, dönen içeriği modele sunar ve özet hazırlanır.
“Son rapor” ifadesi belirsizse uygulamanın doğru dosyayı belirlemesi gerekir. MCP, hangi belgenin güncel veya güvenilir olduğunu kendi başına kararlaştırmaz.
Dosyayı okumak ile değiştirmek de ayrı yetkilerdir. Bir raporu inceleme görevi, kaynağı silme veya başka kişilerle paylaşma yetkisi vermez.
MCP Neden “Yapay Zekâ İçin USB-C” Olarak Anlatılıyor?
Bu benzetme, ortak bağlantı fikrini açıklamak için kullanılır. Nasıl ortak bir bağlantı biçimi farklı cihazlarla çalışmayı kolaylaştırıyorsa, MCP de farklı araçların destekleyen uygulamalara sunulmasını kolaylaştırır.
Ancak benzetmenin sınırı vardır. Bir sunucunun MCP kullanması, her istemcinin bütün özelliklerini destekleyeceği anlamına gelmez.
Protokol sürümü, araç yetenekleri, kimlik doğrulama yöntemi ve uygulama politikaları uyumluluğu etkileyebilir. Bu nedenle bağlantının kurulabilmesi ile görevin doğru tamamlanması ayrı değerlendirilmelidir.
MCP ile Function Calling Arasındaki Fark
Function Calling, modelin bir fonksiyon seçmesini ve gerekli parametreleri yapılandırılmış biçimde üretmesini sağlayan mekanizmadır. Bu fonksiyon yerel bir işlem yapabileceği gibi uzak bir API’yi de kullanabilir.
MCP, araçların uygulamaya nasıl tanıtılacağını ve sunucuyla nasıl iletişim kurulacağını standartlaştırır.
Birlikte kullanıldıklarında uygulama, MCP üzerinden öğrendiği araçları modele tanıtır. Modelin önerdiği çağrı, gerekli kontrollerin ardından ilgili sunucuya iletilir.
Function Calling yalnızca uygulama içindeki fonksiyonlarla sınırlı değildir. MCP’nin farkı, harici araç ve kaynakların sunulması için ortak bir protokol sağlamasıdır.
MCP API’lerin Yerini Alır mı?
Hayır. MCP sunucuları çoğu zaman mevcut API’leri kullanır.
Örneğin bir müşteri yönetim sisteminin API’si; müşteri arama, kayıt güncelleme ve not ekleme işlevleri sunabilir. MCP sunucusu, bu işlevlerin belirli bir bölümünü yapay zekâ uygulamalarına araç olarak açabilir.
Böylece hizmete özel entegrasyon aynı sunucu üzerinden tekrar kullanılabilir. Ancak API bağlantısı, veri dönüşümü, hata yönetimi ve iş kuralları yine geliştirilmelidir.
MCP, bütün entegrasyon kodunu ortadan kaldırmak yerine ortak iletişim bölümünü standartlaştırır.
Yerel ve Uzak Sunucular Nasıl Haberleşir?
Yerel MCP sunucuları, uygulamayla aynı bilgisayarda çalışabilir. Stdio taşıma yöntemi, programlar arasında standart giriş ve çıkış akışlarını kullanır.
Uzak sunucularla bağlantı için Streamable HTTP kullanılabilir. Protokol mesajları JSON-RPC temeline dayanır.
Bu yapı, aynı araç mantığının farklı ortamlarda sunulmasına imkân verir. Ancak verinin hangi sisteme aktarıldığı ve hangi erişim bilgilerinin kullanıldığı her kurulumda ayrıca değerlendirilmelidir.
Avantajları ve Karşılaşılan Zorluklar
MCP’nin başlıca avantajı, bir araç bağlantısının farklı destekleyen uygulamalar tarafından kullanılabilmesidir. Araç keşfinin ortaklaşması, bağlantıların ayrı geliştirilebilmesi ve yeni hizmetlerin eklenmesi geliştirme işlerini kolaylaştırabilir.
Bunun karşılığında sunucuların kurulması, güncellenmesi ve izlenmesi gerekir. Araç sayısı arttıkça doğru aracın seçilmesi de zorlaşabilir.
Başarılı bir uygulamada şu noktalar önemlidir:
-
Araç adları ve açıklamaları anlaşılır olmalıdır.
-
Girdi şemaları ve hata mesajları açık hazırlanmalıdır.
-
Sunucu erişimleri görevle sınırlanmalıdır.
-
Zaman aşımı ve başarısız çağrılar yönetilmelidir.
-
Yazma işlemlerinin yanlışlıkla tekrarlanması önlenmelidir.
MCP Güvenliği Otomatik Olarak Sağlar mı?
Hayır. Ortak protokol kullanılması, bütün sunucuların veya araç çıktılarının güvenilir olduğu anlamına gelmez.
Özellikle prompt injection, harici içeriklerin uygulamayı istenmeyen işlemlere yönlendirmeye çalışması açısından önemlidir. Bir dosyada veya araç sonucunda görülen talimat, kullanıcının verdiği görevle aynı yetkiye sahip kabul edilmemelidir.
En az yetki, parametre doğrulama, erişim belirteçlerinin korunması ve kritik işlemlerde uygun onay mekanizmaları gerekir. Yerel sunucu olarak çalıştırılan programların güvenilirliği de kontrol edilmelidir.
Resmî MCP güvenlik rehberi, yetki devri sorunları ve erişim belirteçlerinin yanlış kullanımından yerel sunucu risklerine kadar çeşitli konuları ele alır.
Sık Sorulan Sorular
MCP bir model eğitim yöntemi mi?
Hayır. Araç ve veri bağlantısı sağlayan protokoldür; model ağırlıklarını eğitmez.
MCP sunucusu tek başına yapay zekâ ajanı mı?
Hayır. Bir sunucu yalnızca araç veya içerik sunabilir. Görev planlaması host uygulamasında yürütülebilir.
MCP için internet gerekli mi?
Her zaman değil. Yerel kaynaklarla çalışan sunucular internetsiz kullanılabilir.
Aynı MCP sunucusu farklı uygulamalarda kullanılabilir mi?
Evet, gerekli protokol özellikleri ve erişim yöntemleri destekleniyorsa kullanılabilir.
MCP’nin değeri, yapay zekâ uygulamalarının dış sistemlerle kurduğu bağlantıları daha tutarlı ve yeniden kullanılabilir hâle getirmesidir. Bu yapının güvenilir sonuç üretmesi, araçların tasarımına ve erişim sınırlarının doğru uygulanmasına bağlıdır.
Kaynaklar: Anthropic — Introducing the Model Context Protocol; Model Context Protocol resmî dokümantasyonu — Architecture Overview, Understanding MCP Servers ve Security Best Practices.
Editör Notu
Bu içerik, kamuya açık protokol dokümantasyonları ve resmî teknik kaynaklardan yararlanılarak hazırlanmış bir araştırma ve değerlendirme yazısıdır. İçerikte yer alan değerlendirmeler editoryal yorum niteliğindedir. MCP desteği, kullanılabilir özellikler ve güvenlik koşulları; uygulamaya, protokol sürümüne ve sunucu yapılandırmasına göre değişebilir.