İçeriğe geç

MCP

MCP, yapay zeka uygulamasının dış araç, veri kaynağı ve şablonlara JSON-RPC tabanlı standart bir protokolle bağlanmasını tanımlar. Bağlantı standardı güvenliğin tamamını kendiliğinden sağlamaz.

Model Context Protocol · Araç bağlantı protokolü

Otomasyon · 3 dk okuma · Güncelleme:

Tüm kavramlar

MCP nedir?

Model Context Protocol (MCP), yapay zekâ uygulamalarıyla harici araçlar ve veri kaynakları arasında standart iletişim kuran açık bir protokoldür. Host uygulama, MCP istemcileri üzerinden sunucularla bağlantı kurar; sunucular araç, kaynak ve istem şablonları sunabilir. Protokolün yetkilendirme çerçeveleri bulunur, ancak hangi kullanıcının hangi veriyi görebileceği uygulamada ayrıca uygulanmalıdır. MCP desteği, her sistemin hazır bağlandığı veya bağlanan bir aracın kendiliğinden güvenilir olduğu anlamına gelmez.

Host, istemci ve sunucu ayrımı

Host, Claude Desktop veya Visual Studio Code gibi yapay zeka uygulamasıdır. Her sunucu için host ayrı bir istemci nesnesi oluşturur. Yerel sunucular STDIO ile genellikle tek istemciye hizmet verirken uzak sunucular Streamable HTTP ile birçok istemciye hizmet verebilir. Sunucu, nerede çalıştığından bağımsız olarak bağlam sağlayan programdır. Bu ayrım, hangi bileşenin hangi veriye eriştiğini izlemek için önemlidir.

Taşıma katmanı ve kimlik doğrulama

STDIO, aynı makinedeki süreçler arasında standart girdi ve çıktı akışını kullanır ve ağ yükü oluşturmaz. Streamable HTTP ise istemci mesajlarını POST ile gönderir, isteğe bağlı olarak Server-Sent Events ile akış sağlar. Bearer token, API anahtarı ve özel başlıklar desteklenir, OAuth kullanımı önerilir. Taşıma katmanı kimlik doğrulamayı taşır, ancak hangi aracın hangi kullanıcıya açılacağı sunucu tasarımına bağlıdır.

Araçlar, kaynaklar ve şablonlar

Araçlar, yapay zekanın çağırabildiği işlevlerdir ve dosya işlemi veya API çağrısı gibi eylemler yapabilir. Kaynaklar, dosya içeriği veya kayıt gibi bağlam verisidir. Şablonlar ise etkileşimi yapılandıran hazır metinlerdir. Listeleme yöntemleri dinamiktir; sunucu araç listesini değiştirdiğinde bildirim gönderebilir. Bu yüzden istemci, bir kez alınmış araç listesine sonsuza kadar güvenmemeli, değişiklikleri izlemelidir.

Temsili işletme örneği

Bir yazılım firması, müşteri destek ekibi için dahili bir MCP sunucusu kurar. Sunucu yalnızca salt okunur bir sipariş durumu aracı ve bir yanıt şablonu sunar. Host bu sunucuya tek bir istemci bağlar. Destek temsilcisi sipariş numarasını yazdığında asistan durum aracını çağırır. Ekip, yazma yapan araçların başlangıçta kapalı olduğunu ve açılmadan önce test edildiğini kontrol eder. Bu senaryo temsilidir, gerçek bir müşteri örneği değildir.

MCP mimarisindeki roller

RolGörev
HostKullanıcı deneyimini ve bağlantıların yönetimini üstlenen yapay zekâ uygulaması
İstemciBelirli bir MCP sunucusuyla protokol bağlantısını yürütür
Sunucuİzin verilen araçları, kaynakları veya istemleri sunar

Sık karıştırılan nokta

Yanılgı: MCP'ye bağlanan her araç otomatik olarak güvenli ve yetkili hale gelir. Doğrusu: MCP bağlantı ve yetkilendirme çerçeveleri tanımlar; gerçek izinler uygulamada uygulanır. Yetki kapsamı, veri filtreleme, onay akışı ve günlükleme sunucu ve host tarafında ayrıca tasarlanmalıdır. Standart desteklenmesi kusursuz koruma anlamına gelmez.

Uygulamada dikkat edilecekler

  1. Her sunucu için açılan araçları, kaynakları ve şablonları yazılı bir envanterde tutun ve sürüm değişikliklerinde güncelleyin.
  2. Yazma ve silme yapan araçları varsayılan olarak kapalı başlatın, açılmadan önce ayrı onay ve test adımı tanımlayın.
  3. Uzak sunucular için OAuth yapılandırmasını, token süresini ve erişim kapsamını üretimden önce test ortamında doğrulayın.
  4. Sunucu günlüklerinin incelenebildiğini ve olağandışı araç çağrılarında uyarı alındığını düzenli olarak kontrol edin.

Sık sorulan sorular

Yerel sunucu ile uzak sunucu arasında güvenlik farkı var mı?

Konum tek başına güvenlik garantisi vermez. Yerel STDIO bağlantısı süreçler arasında standart giriş/çıkış kullanır; sunucunun kendisi yine harici servislere ağ isteği gönderebilir. Dosya erişimi, araç izinleri ve ağ erişimi her iki kurulumda da sınırlandırılmalıdır.

MCP modelin hangi bağlamı göreceğine karar verir mi?

Hayır. Protokol yalnızca bağlam alışverişini tanımlar. Modelin bağlamı nasıl kullanacağı, hangi bilgiyi göndereceği ve veri minimizasyonu gibi kararlar host uygulamasının tasarımında alınır.

Teknik kaynak

modelcontextprotocol.io · MCP

Teknik tanım için birincil kaynağa başvurulmuştur. İşletme senaryosu açıklama amacıyla hazırlanmış temsili bir örnektir.

İlgili kavramlar