MCP Sunucusu Nedir? Sade Bir Anlatım
Bir MCP sunucusu, verilerinizi ve eylemlerinizi standart bir arayüz üzerinden Claude ve ChatGPT gibi yapay zekâ asistanlarına açan küçük bir programdır. Böylece asistan bağlamı okuyabilir ve kullanıcı adına sistemlerinizde gerçek eylemler yapabilir.
TL;DR
- MCP (Model Context Protocol), yapay zekâ asistanlarını dış sistemlere bağlamak için Anthropic'in geliştirdiği açık bir standart.
- Bir sunucu üç şeyi açar: araçlar (eylemler), kaynaklar (salt okunur veri) ve istemler (yeniden kullanılabilir talimatlar).
- Sıradan bir API değil. Yapay zekâ istemcisi için tasarlanmış, yani kendini tanımlıyor, modelden bağımsız ve her asistan için ayrı yapıştırma kodu yazmadan Claude, ChatGPT, Cursor ve diğer host'larda çalışıyor.
- Şimdi önem kazandı, çünkü insanlar giderek asistanın içinde çalışıyor ve asistanın sistemlerinize güvenli, düzenli bir yoldan ulaşması gerekiyor.
- İyi bir sunucuda tipli şemalar, kapsamı dar kimlik doğrulama, idempotent eylemler ve net açıklamalar olur. Kötüsü belirsiz, fazla yetkili ve öngörülemezdir.
Model Context Protocol (MCP) nedir?
Model Context Protocol, yapay zekâ uygulamalarının dış araçlara ve verilere nasıl bağlanacağını tanımlayan, Anthropic'in tanıttığı açık bir standart. Ortak bir fiş şekli gibi düşünün. Her asistan ve her veri kaynağı için ayrı bir bağlantı yazmak yerine MCP'yi bir kez yazarsınız, uyumlu her istemci onu kullanabilir.
İki rol var. Host (ya da istemci), kullanıcının gerçekten konuştuğu yapay zekâ uygulaması: Claude Desktop, ChatGPT uygulaması, Cursor gibi bir IDE. Sunucu ise verilerinizin veya sistemlerinizin önünde duran, sizin kurduğunuz program. Host, sunucuya tanımlı bir aktarım üzerinden bağlanır, sunucu neler yapabileceğini ilan eder ve model onu ne zaman çağıracağına karar verir.
Standart açık ve modelden bağımsız olduğu için aynı sunucu farklı asistanlarla çalışır. Tek bir sağlayıcıya bağlanıp kalmazsınız.
Bir MCP sunucusu gerçekte neyi açar?
Üç temel öğe, her birinin ayrı bir işi var:
| Temel öğe | Nedir | Kontrolü kimde | Örnek |
|---|---|---|---|
| Araçlar | Modelin çağırabileceği eylemler | Model (kullanıcı onayıyla) | create_refund, reserve_inventory |
| Kaynaklar | Host'un bağlam olarak yükleyebileceği salt okunur veri | Uygulama/kullanıcı | Bir müşteri kaydı, bir PDF, bir config dosyası |
| İstemler | Yeniden kullanılabilir, parametreli talimat şablonları | Kullanıcı | " numaralı sipariş için kargo gecikmesi özrü taslağı yaz" |
Yani araçlar bir şey yapar, kaynaklar bilgi verir, istemler de uzmanlığı paketler. İyi tasarlanmış bir sunucu üçünü de bilerek kullanır, her şeyi araçlara tıkıştırmaz. Çoğu kişinin kolayına kaçıp yaptığı şey de tam olarak bu tıkıştırma.
Her araç tipli bir girdi şeması (genelde JSON Schema) ve düz bir açıklama bildirir. İşin bütün hilesi de bu meta veride: modelin bir aracı ne zaman ve nasıl çağıracağına, kimse mantığı koda gömmeden karar vermesini sağlayan şey budur.
Bir MCP sunucusu sıradan bir API entegrasyonundan nasıl farklı?
Hedef kitle farklı, gerisi de buradan çözülüyor. Sıradan bir API, sabit kod yazan geliştiriciler için kurulur. Bir MCP sunucusu ise çalışma anında neyi çağıracağına karar veren bir yapay zekâ modeli için kurulur.
Bir REST API, bir insanın önce dokümanları okuduğunu varsayar. MCP sunucusu bu varsayımı yapamaz, o yüzden makinenin okuyabileceği şemalar ve açıklamalar sunar ve modelin yetenekleri kendi başına keşfetmesine bırakır. Ham API'lerle ayrıca her asistan için ayrı entegrasyon kodu yazarsınız. MCP'yle tek bir sunucu yazarsınız, MCP destekleyen her host onu kullanabilir.
Bundan iki şey daha çıkar. Girdiler ve hatalar, belirsiz bir kullanıcı isteğini kesin bir çağrıya çeviren model için anlaşılır olmalı, sadece spesifikasyonu izleyen programcı için değil. Bir de host'lar genelde bir aracı çalıştırmadan önce kullanıcıdan onay istediği için, onay ve netlik sonradan eklenen şeyler değil. Tasarımın parçası.
Kafanızda şöyle canlandırın: bir MCP sunucusu, mevcut API'lerinizin üzerine geçirilen, bir yapay zekâ asistanının güvenle kullanabilmesi için biçimlendirilmiş ince ve fikirli bir katmandır.
Bu neden şimdi önemli?
Çünkü bilgi işinin ağırlık merkezi asistanın içine kayıyor. İnsanlar görevlere tek tek uygulamalara giriş yaparak değil, Claude, ChatGPT ya da kendi IDE'lerinde başlıyor.
Asistan çalışma alanı olunca asıl sınır erişim oluyor. Bir model yalnızca görebildiği ve dokunabildiği şeyde yardım edebilir. Bir MCP sunucusu, yetenekli bir modeli sadece eğitim verisiyle baş başa bırakmak yerine ona sizin siparişlerinize, sizin belgelerinize, sizin iş akışlarınıza erişim vermenin yolu. Sistemlerini temiz açan ekiplerin ürünü bu asistanların içinde yerel hissettirecek. Geri kalan herkes bir sekme olarak kalacak.
Somut bir örnek nasıl görünür?
Sipariş ve envanter yöneten bir ticaret platformu düşünün. Bugün bir destek temsilcisi stoğu kontrol etmek ve iade yapmak için bir panoya giriş yapıyor. Bir MCP sunucusuyla aynı yetenekleri asistana açarsınız:
- Kaynak:
order://{id}, sipariş kaydını (ürünler, durum, müşteri) salt okunur bağlam olarak döndürür. - Araç:
check_inventory(sku, location), bir ürünün güncel stoğunu döndürür. - Araç:
reserve_inventory(sku, quantity, order_id), bir sipariş için stoğu rezerve eder. - Araç:
create_refund(order_id, amount, reason), iade yapar. - İstem:
delay_apology(order_id), marka diliyle bir müşteri mesajı taslağı yazar.
Artık bir ekip arkadaşı şöyle yazabilir: "8842 numaralı siparişteki müşteri gecikmeye kızgın, ne olmuş ve ne yapabiliriz?" Asistan sipariş kaynağını yükler, envanteri kontrol eder ve araç üzerinden bir iade önerir. Harekete geçmeden önce insan onayı için durur. Bu iş akışını kimse tek tek yazmadı. Model onu iyi tanımlanmış temel öğelerden kurdu.
İyi bir MCP sunucusunu kötüsünden ne ayırır?
İyi bir sunucu öngörülebilir, güvenli ve bir modelin akıl yürütmesi kolay olur. İş genelde birkaç disipline bakar:
| Özellik | İyi sunucu | Kötü sunucu |
|---|---|---|
| Şemalar | Güçlü tipli, doğrulanmış girdi ve çıktılar | Tipsiz veri yığınları, serbest metinler |
| Kimlik doğrulama | Kullanıcı başına kapsamı dar, en az yetkili kimlik bilgileri | Tam erişimli tek bir "tanrı" anahtarı |
| Idempotency | Yeniden denemesi güvenli; tekrar çift işlem yapmaz | Yeniden denemeler çift iade veya çift sipariş yaratır |
| Açıklamalar | Net, spesifik, örnekli | do_action gibi belirsiz adlar |
| Hatalar | Modelin toparlanabileceği, eyleme dönük mesajlar | Anlaşılmaz yığın izleri ya da sessiz hatalar |
En sık görülen hata, sunucuya bir iç API dökümü gibi davranmak. Kısa adlı elli ince uç noktayı açarsanız modeli boğarsınız, davranış da kararsızlaşır. Daha iyisi: kullanıcının gerçekten yapmak istediği şeylere karşılık gelen, daha az sayıda ve daha üst düzey eylemleri açık adlarla açmak, hata verdiklerinde de yüksek sesle vermelerini sağlamak. Çoğu ekip bunu ters yapıyor ve dökümü yayınlıyor.
Bir şirket ne zaman MCP sunucusu kurmalı?
Kullanıcılarınız işlerini sizin arayüzünüzden çok bir yapay zekâ asistanının içinde yapmayı tercih edecekse ve açmaya değer veri ya da eylemleriniz varsa kurun. Birkaç net işaret:
- Müşteriler zaten "Claude veya ChatGPT ile çalışıyor musunuz?" diye soruyor.
- Ürününüzde bir asistanın yönetebileceği tekrarlayan aramalar ya da eylemler var.
- Birinin açmayı unuttuğu bir sekme değil, asistanın başvurduğu kayıt sistemi olmak istiyorsunuz.
Verileriniz çok küçükse (tek bir statik belge belki sunucu bile gerektirmez) ya da kapsamı dar, denetlenebilir erişimi henüz uygulayamıyorsanız bekleyin. Güvenlik ve netlik, kapsamdan önce gelir.
Sıkça sorulan sorular
MCP yalnızca Claude için mi?
Hayır. MCP açık bir standart ve onu Anthropic geliştirmiş olsa da modelden bağımsız. ChatGPT, Cursor gibi host'lar destekliyor, yani tek bir sunucu birçok asistana hizmet verebilir.
Mevcut API'lerimi yeniden mi yazmam gerek?
Genelde hayır. Bir MCP sunucusu çoğu zaman mevcut API'lerinizi saran ince bir katman. Onları tipli şemalar ve net açıklamalarla yapay zekânın kullanabileceği hale getirir.
Bir asistanın sistemlerimi çağırmasına izin vermek güvenli mi?
Öyle tasarlarsanız güvenli olabilir. Kapsamı dar, en az yetkili kimlik bilgileri kullanın, eylemleri idempotent yapın ve host'un insanın döngüde olduğu onay mekanizmasına güvenin ki kullanıcılar hassas işleri çalışmadan önce onaylasın.
Bir tane kurmak ne kadar sürer?
İyi seçilmiş birkaç araç ve kaynağı açan odaklı bir sunucu, kimlik doğrulamanız ne kadar karışıksa ona bağlı olarak birkaç gün ile birkaç hafta arası bir iş. Zor kısım genelde protokolün kendisi değil, doğru temel öğeleri seçmek.
MCP, ürününüzü insanların ziyaret ettiği bir şeyden, yapay zekâ asistanlarının gerçekten kullanabileceği bir şeye dönüştürür. İyi yapıldığında, yapay zekâ iş akışının yanında durmakla onun bir parçası olmak arasındaki fark budur.
Bir tane kurup kurmamayı ve nasıl kuracağınızı tartıyorsanız, ürün ve mühendislik liderlerine güvenli, kesin ve gerçekten işe yarar MCP sunucuları tasarlamada yardımcı oluyoruz. Toplantı ayarlayın.