Bu derste Copilot'a çalışacağı daha fazla malzeme vermenin üç yolunu ele alıyoruz. MCP harici sistemlere bağlanır. Spaces tekrarlanan bir soru için kaynakları bir araya getirir. Spark ise uygulama tanımından çalışan bir prototip kurar.
Yetenek arttıkça yanıt veya prototip olduğundan daha güvenilir görünebilir. Bu yüzden her aracın yanında ona uygun kontrolü kullanın. Harici aracın çalışmasını gözleyin, Space'teki iddiaları dosyalarına kadar izleyin ve Spark davranışını iyileştirme istemeden önce test edin.
MCP gerçekte neyi bağlar?
MCP, yani Model Context Protocol, bir AI uygulamasını harici araçlara ve verilere bağlamanın standart yoludur. Burada VS Code ve Copilot host rolündedir. MCP sunucusu, host'un keşfedip kullanabileceği issue arama, dokümantasyon okuma veya kontrollü işlem çalıştırma gibi yetenekler sunar. Sunucu dil modeli değildir ve Copilot'un yerini almaz. Başka bir sisteme kontrollü arabirim sağlar. Tipik akışta çözümlenmemiş sürüm engellerini sorarsınız. Copilot list_blockers gibi sunucu aracını seçip yapılandırılmış girdi gönderir. Sunucu yapılandırılmış veri döndürür ve Copilot yanıtı bu kanıttan biçimlendirir.
Bu sunucuyla ilgili iki noktaya dikkat edin. Her aracı etkisine göre sınıflandırın. Salt okunur araç hiçbir şeyi değiştirmeden bilgi döndürür. Değişiklik yapan araç veri oluşturur, günceller veya siler. Bağlanması güvenli bir sunucu, her işlem için otomatik olarak güvenli değildir. Bu ayrım bağlantı güveni ile işlem güvenini ayrı kararlar haline getirir. Ayrıca aktarım türünü kaydedin. Yerel işlem komut ve argümanlarla bilgisayarınızda çalışır. Uzak sunucuya sahibinin sağladığı HTTP endpoint'i üzerinden erişilir.
Yapılandırma katmanlar halinde bulunur. Kullanıcı yapılandırması kendi kurulumunuza özeldir. Repository yapılandırması genellikle .vscode/mcp.json içinde bulunur ve katkıda bulunanların aynı sunucu tanımını paylaşmasını sağlar. Kuruluş veya enterprise yönetimi ise merkezi yönetilen kullanıcıların sunucuları kullanıp kullanamayacağını belirler. .vscode/mcp.json dosyasına endpoint commit etmek bağlantıyı paylaşır, fakat sunucuyu onaylamaz ve herkese kullanım yetkisi vermez. Onayı registry ile allowlist kontrolleri sağlar. Commit edilen config hiçbir zaman gizli bilgi içermez.
Bir MCP aracının gerçekten çalıştığını nasıl kanıtlarsınız?
Copilot, MCP aracını hiç çağırmadan issue takip sisteminizden gelmiş gibi duran akıcı bir blocker raporu yazabilir. Gözlenen sunucu ve araç etkinliğini arayın. Yanıtta seçilen sunucu ile aracın adını isteyin, çağrıyı veya onay talebini izleyin. Hiçbiri görünmüyorsa bunu keşif sorunu olarak kaydedin. Sorun yapılandırmada, işlem başlatmada, araç keşfinde, ilkede veya kimlik doğrulamada olabilir.
Çağrıdan sonra sonucu alan alan denetleyin. Gösterilen her değer sunucu yanıtındaki bir özellikle eşleşmelidir. Eşleşme yoksa alanı "Sunucu tarafından döndürülmedi" diye etiketleyin. Beklenen araç çalıştıysa boş blocker listesi bile keşfi kanıtlayabilir. Araç çağrısı olmayan cilalı tablo, verinin kaynağı hakkında kanıt sunmaz.
Sunucu onaylandıktan sonra yönetim bitmez. Yeteneklerini ve sorumlusunu kaydedin, kimlerin bağlanabileceğini belirleyin, runtime çağrılarını onaylayın, izin verilen ve reddedilen durumları test edin. Sunucu değiştiğinde yeniden inceleyin. Adı aynı kalırken close_issue gibi bir araç eklenebilir. Bu yeni yetenek eski salt okunur sınıflandırmayı geçersiz kılar, dolayısıyla erişim ve uygulama kontrollerini tekrarlamanız gerekir.
Spaces nedir, nasıl dürüst tutulur?
Copilot Space, tekrarlanan sorularda kullanılacak bağlamı düzenleyen yeniden kullanılabilir bir alandır. Yeni bir model veya coding agent değildir. Adlandırılmış kanıt paketi gibi düşünün. Değer, tek soruyu yanıtlayabilecek kaynakları seçmekte ve Copilot'un bunları nasıl kullanacağını belirtmektedir. "Mimari kararını, yerel geliştirme rehberini ve güncel issue'ları kullanarak servisin nasıl çalıştırılacağını açıkla. Eksik kurulumu işaretle." isteği, "Bu proje hakkında her şeyi anlat" isteğinden daha incelenebilir bir kanıt sınırı çizer.
Space yanıtını iddialara ayırın ve her iddia için dört soruyu yanıtlayın. Hangi kaynak iddiayı destekleyebilir? Hangi rehber Copilot'a bu kaynağı kullanmasını söyledi? Copilot tam olarak ne iddia etti? Kaynak iddiayı doğruluyor, onunla çelişiyor veya konuyu atlıyor mu? Sonucu doğrulanmış, çakışan veya eksik olarak sınıflandırın. Muhtemel değeri doğrulanmış olgu gibi sunmayın. Kaynak port 4000, yanıt 3000 diyorsa bu çakışmadır. Hiçbir kaynak port belirtmiyorsa bilgi eksiktir. "Kaynak söylemiyor" ile "Port yok" aynı anlama gelmez.
Bir iddianın yanında yazan dosya adı tek başına kanıt değildir. Dosyayı açıp gerçek komut, değer veya durumla karşılaştırın. Space kaynak düzenlemeyi ve doğrulamayı kolaylaştırır, fakat bunları sizin yerinize yapmaz.
Bunun yerine ne zaman Spark'a uzanırsınız?
Spaces kanıtı düzenler. GitHub Spark ise doğal dildeki uygulama fikrini kod gerektirmeden web uygulaması prototipine çevirir. Dosya, framework ve bileşenlerden önce kullanıcı sorunuyla ve kısa tanımla başlarsınız. Güçlü tanım kullanıcıları, görevleri, gösterilen veya toplanan veriyi, eylemleri, durumları, kabul ölçütlerini ve bilinçli dışlamaları belirtir. Spark, Temmuz 2025'te Copilot Pro+ aboneleri için public preview olarak duyuruldu. Hesabınızda yoksa tanım ve test planını yine yazabilirsiniz, ancak uygulama ürettiğinizi iddia etmeyin.
Spark prototipini iyileştirmeden önce test edin. Üretilen uygulama bitmiş görünebilir, fakat doğrulama, filtreleme, kalıcılık veya boş durumlar yanlış çalışabilir. Cilalı arayüz davranış kanıtı değildir. Beklenen sonuçları önce yazın. Her sonucu prototipte deneyin ve "İki satır görünür kaldı" gibi somut gözlemler kaydedin. Her turda tek başarısız davranışı düzeltin, çalışan noktaları koruyun ve komşu testleri yeniden çalıştırın.
Spaces ve Spark birlikte kullanılabilir. Space kanıta dayalı ürün tanımı hazırlamanıza yardımcı olur, Spark ise bu tanımdan uygulama biçimini keşfeder. Üretim başlangıç noktasıdır, karar değildir. Akışları test edin ve paylaşma veya deploy kararını ayrı değerlendirin.