Yazılım ekipleri büyüdükçe ve Model Context Protocol (MCP) sunucuları çoğaldıkça, karşılaşılan en büyük sorunlardan biri, her geliştiricinin kendi bağlantı ayarlarını elle yönetmek zorunda kalmasıdır. Bu durum, zaman kaybına, güvenlik risklerine ve ölçeklenemeyen bir altyapıya yol açar. Neyse ki, MCP kayıt defterleri bu karmaşanın önüne geçmek için tasarlanmış bir çözüm sunuyor.
MCP kayıt defteri, bir organizasyondaki tüm MCP sunucularına dair merkezi bir kayıt sistemidir. Bu kayıt defteri, her bir sunucunun ne yaptığını, nasıl bağlanılacağını, hangi araçları sunduğunu, kimlik doğrulama yöntemlerini ve kimlerin erişebileceğini tek bir yerde toplar. Tıpkı DNS’in IP adreslerini yönetmesi ya da servis kayıtlarının mikro servisleri organize etmesi gibi, MCP kayıt defteri de bağlantı detaylarını merkezi bir yapıda tutar. Bu sayede, geliştiriciler ve yapay zeka ajanları, sunuculara doğrudan bağlantı kurmak yerine kayıt defterinden gerekli bilgileri alırlar.
MCP Kayıt Defteri Nasıl Çalışır?
MCP kayıt defteri, aşağıdaki temel bileşenleri barındırır:
- Sunucu tanımlama bilgileri: Ad, açıklama, sahip olan ekip ve onay durumu gibi detaylar.
- Bağlantı detayları: Sunucunun uç nokta adresi, veri aktarım türü (stdio, Streamable HTTP, SSE vb.).
- Kimlik doğrulama metadata’sı: Kullanılan kimlik doğrulama yöntemi ve gerekli kimlik bilgilerinin nasıl elde edileceği.
- Araç şeması: Sunucunun sunduğu araçlar, her bir aracın kabul ettiği parametreler ve yetenekleri.
- Erişim politikası: Hangi kullanıcıların, ekiplerin ya da ajanların sunucuya bağlanabileceğine dair kurallar.
Bu yapı, özellikle kimlik bilgilerinin yenilenmesi gerektiğinde büyük bir avantaj sağlar. Örneğin, GitHub OAuth token’ı yenilendiğinde, kayıt defterindeki ilgili kayıt güncellenir. Tüm ajanlar ve geliştiriciler, yeni kimlik bilgilerini otomatik olarak alır — manuel olarak her bir konfigürasyon dosyasını güncellemeye gerek kalmaz.
N×M Entegrasyon Sorunu ve MCP Kayıt Defterinin Rolü
MCP sunucuları ve yapay zeka ajanları arasındaki doğrudan bağlantıların oluşturduğu soruna, dağıtık sistemlerde N×M entegrasyon problemi adı verilir. Eğer N sayıda ajan ve M sayıda MCP sunucusu varsa, doğrudan bağlantılar N×M adede kadar çıkabilir. Her bağlantı, kendi bağlantı ayarlarına, kimlik bilgilerine ve hata yönetimine sahip olur. Bu da ölçeklendikçe bakımı neredeyse imkansız hale getirir.
Örneğin, 3 ajan ve 3 sunucudan oluşan bir sistemde 9 bağlantı noktası bulunur. 8 ajan ve 6 sunucuda ise bu sayı 48’e çıkar. 240 geliştirici ve 8 sunucu gibi daha büyük ölçeklerdeyse, manuel olarak yaklaşık 1.900 konfigürasyon girişi yönetmek gerekebilir. MCP kayıt defteri ise bu karmaşayı ortadan kaldırır. Her sunucu kayıt defterde bir kez tanımlanır ve her ajan, ihtiyacı olan sunucuya kayıt defteri üzerinden bağlanır. Bu da toplam entegrasyon noktalarını N+M seviyesine indirir.
Ek olarak, bir sunucunun uç noktası değiştiğinde (örneğin yeni bir URL’ye taşındığında), kayıt defterindeki ilgili kayıt güncellenir. Bu sayede, tüm sistemdeki bağlantılar kesintiye uğramadan devam eder.
MCP Kayıt Defteri Nedir Değildir?
"MCP kayıt defteri" terimi, farklı bağlamlarda farklı anlamlara gelebilir. Bu terimin neyi ifade etmediğini netleştirmek önemlidir:
- Genel MCP kayıt defteri:
registry.npmmcp.comgibi platformlarda bulunan, kamuoyuna açık MCP sunucularını listeleyen bir katalogdur. Buradan geliştiriciler, yeni araçları keşfedebilir, ancak bağlantıları yönetmez ya da kimlik doğrulamasını sağlamaz. Üretim altyapısı için uygun değildir. - Kurumsal MCP kayıt defteri: Bu makalenin odaklandığı yapıdır. Özel olarak işletilen, belirli bir organizasyona ait MCP sunucularının bağlantı, kimlik doğrulama ve erişim kontrollerini yöneten bir sistemdir. Aynı kavram (merkezi metadata) farklı bir operasyonel bağlamda kullanılır.
- *MCP kayıt defteri bir vekil (proxy) değildir*: Vekil, veri aktarımını yönetirken; kayıt defteri, metadata ve politikaları düzenler. Pratikte, ikisi birlikte çalışabilir — kayıt defteri sunucular hakkında bilgi sahibi olurken, vekil veri akışını yönetir — ancak ikisi ayrı bileşenlerdir.
Ham MCP’nin Yönetişim Eksikliği
Ham MCP protokolünde, yerleşik bir erişim kontrolü bulunmaz. Bir sunucuya bağlantı URL’sine sahip olan herhangi bir ajan, o sunucunun tüm araçlarını çağırabilir. Bu da güvenlik risklerine yol açar: bir stajyerin ajanının sahip olduğu erişim yetkisiyle kıdemli bir mühendisin ajanının yetkisi aynı olur. Ya da bir hizmet hesabından doğan alt ajan, sistemde geniş bir etki alanına sahip olabilir.
MCP kayıt defterinin sunduğu yönetişim katmanı, aşağıdaki güvenlik önlemlerini sağlar:
- Araç düzeyinde rol tabanlı erişim kontrolü (RBAC): Sadece "ekip A Jira sunucusuna erişebilir" değil, "ekip A yalnızca
search_issuesvecreate_issuearaçlarını kullanabilir, ancakdelete_issuearacını kullanamaz" gibi detaylı kurallar tanımlanabilir. Erişim politikaları kayıt defterde belirlenir ve araç çağrısından önce uygulanır. - Araç görünürlüğünün filtrelenmesi: Ajanlar, yalnızca yetkileri dahilindeki araçları görüntüleyebilir. Örneğin,
tools/listkomutuyla sunucunun sunduğu tüm araçları listelemek yerine, yalnızca ilgili ajan için yetkili olan araçlar gösterilir. Bu, bir ajanın yok edici bir aracı bile görmemesini ve yanlışlıkla çağırmamasını sağlar. - Merkezi kimlik yönetimi: Kullanıcılar, kayıt defterine tek bir kez kimlik doğrulaması yapar. Tüm bağlantılarda aynı kimlik bilgileri kullanılır, böylece farklı sistemlerdeki kimlik yenilemeleri tek bir yerden yönetilir.
MCP kayıt defterleri, özellikle yapay zeka ajanlarının ve mikro hizmetlerin giderek daha fazla entegre olduğu modern yazılım geliştirme ortamlarında kritik bir rol oynuyor. Bu kayıt defterleri, bağlantı karmaşasını ortadan kaldırırken, güvenliği ve ölçeklenebilirliği de beraberinde getiriyor. Gelecekte, bu tür altyapıların daha da yaygınlaşması ve standartlaşması bekleniyor. Kurumlar, MCP kayıt defterlerini benimseyerek, hem geliştirme süreçlerini hızlandırabilir hem de güvenlik açıklarını minimize edebilir.
Yapay zeka özeti
MCP kayıt defteri, MCP sunucularını merkezi olarak yöneterek N×M entegrasyon problemine son verir. Güvenlik, kimlik ve erişim kontrollerini basitleştirin.