VS Code MCP Yapılandırması: mcpServers Yerine servers Kullanın
Claude'dan veya Cursor'dan çalışan bir MCP yapılandırmasını kopyaladınız, VS Code'a yapıştırdınız, yeniden başlattınız ve hiçbir şey olmadı. Hata yok, uyarı yok, listede sunucu yok. Dosya geçerli JSON ve VS Code ondan gayet memnun. Sorun tek bir kelime ve o da en dıştaki.
- VS Code MCP sunucularını servers altında sarar. Claude, Cursor ve çoğu diğer istemci mcpServers kullanır.
- Yanlış anahtar hiç hata üretmez; insanların bir saatini bu yüzden kaybetmesinin nedeni budur.
- İç sunucu tanımı istemciler arasında aynıdır. Yalnızca sarmalayıcı farklıdır.
Fark, Yan Yana
Aynı sunucu, aynı komut, aynı argümanlar. Değişen tek şey sarmalayıcı anahtardır.
| İstemci | Yapılandırma dosyası | Sarmalayıcı anahtar |
|---|---|---|
| VS Code'da GitHub Copilot | .vscode/mcp.json | servers |
| Cursor | ~/.cursor/mcp.json | mcpServers |
| Claude Desktop | claude_desktop_config.json | mcpServers |
| Yapılandırma dosyası kullanan çoğu diğer istemci | değişir | mcpServers |
VS Code Ne İster
Çalışma alanınızın kökündeki .vscode/mcp.json içinde. Örnek olarak MyLinedChart'ın bağlayıcısını kullanırsak:
{ "servers": { "mylinedchart": { "command": "npx", "args": ["-y", "@mylinedchart/mcp-chart-context"] } } }
Kendi sunucunuzun command ve args değerlerini yerine koyun. İç nesnenin yapısı istemciler arasında değişmez.
Diğer Her Şey Ne İster
Claude veya Cursor için aynı sunucu:
{ "mcpServers": { "mylinedchart": { "command": "npx", "args": ["-y", "@mylinedchart/mcp-chart-context"] } } }
İki editör de açıksa gerçekten her iki dosyaya da ihtiyacınız var. İki editör tek bir yapılandırmayı paylaşamaz.
Neden Hatasız Başarısız Olur
VS Code dosyayı okur, geçerli JSON bulur ve bir servers anahtarı arar. Dosyada servers anahtarı yoktur, bu yüzden VS Code başlatacak sıfır sunucu bulur. Sıfır sunucu bir hata durumu değildir. VS Code açısından hiçbir şey yapılandırmamışsınızdır ve bu tamamen yasal bir durumdur.
Yani kırmızı dalgalı çizgi, bildirim ya da anahtarın yanlış olduğunu söyleyen herhangi bir günlük kaydı yoktur. Arıza, sunucunun başlangıçta çökmesine tıpatıp benzer; insanların gidip sunucuyu hata ayıklamasının nedeni budur.
- Dosya geçerli JSON olduğu için ayrıştırma hatası görünmez.
- Tanınmayan bir üst düzey anahtar reddedilmek yerine yok sayılır.
- Sıfır yapılandırılmış sunucu normal bir durumdur, bu yüzden VS Code bir arıza bildirmez.
Hangi Sorunla Karşılaştığınızı Nasıl Doğrularsınız
Sunucunun bozuk olduğunu varsaymadan önce VS Code'un onu başlatmayı hiç denediğini kanıtlayın.
- Önce sarmalayıcı anahtarı kontrol edin. Kontrol beş saniye sürer ve çoğu zaman cevap budur.
- Sunucunun komutunu terminalde elle çalıştırın. Sunucu başlıyorsa sorun başka yerdedir.
- Sunucuyu VS Code'un MCP sunucu listesinde arayın. Yoksa hiç yapılandırılmamıştır; varsa ama başarısızsa gerçek bir başlangıç hatası var demektir.
- Elle değil tek tıklık bir bağlantıyla kurduysanız bu sorun sınıfı hiç geçerli değildir.
İki İlgili Tuzak
Buradayken, iki şey daha aynı sessiz biçimde başarısız olur.
Birincisi, tek tıklık MCP kurulum bağlantıları yüklerini düz URL kodlamalı JSON olarak taşır. Base64 URL ayrıştırıcısı tarafından kabul edilir ve sonra sessizce hiçbir şey yapmaz; bu mevcut en kötü arızadır: işe yaramış gibi görünen bir düğme.
İkincisi, sunucu adı VS Code için yükün içinde taşınır; Cursor'ın yaptığı gibi ayrı bir sorgu parametresi olarak değil. Cursor'ın biçimine göre oluşturulmuş bir bağlantı açılsa bile VS Code'da doğru kurulmaz.
MyLinedChart Nerede Devreye Giriyor
MyLinedChart, bir yapay zekâ ajanına canlı grafiğinizi veren doğrudan bir bağlantı bağlayıcısıyla gelir: semboller, çizimleriniz, gösterge değerleri ve ekrandaki barlar. Bağlayıcı makinenizde çalışır ve veriler bizim sunucularımızdan geçmez.
Uygulamada sizin yerinize doğru anahtarı yazan tek tıklık bir Add to VS Code düğmesi vardır; elle düzenlemek yerine onu kullanmanın nedeni budur. Kurulum ve diğer istemciler: /resources/articles/ibkr-chart-data-github-copilot-vs-code.
Sonraki Adım
Anahtarı düzeltin, VS Code'u yeniden başlatın ve sunucu görünür. Sunucu hâlâ görünmüyorsa artık sorunun yapılandırma değil sunucu olduğunu biliyorsunuz; bu, çok daha kısa bir inceleme listesidir.
Yapay zekânızı /mcp adresinden bağlayın.
Sık sorulan sorular
- VS Code neden mcpServers yerine servers kullanır?
- servers anahtarı, VS Code'un kendi MCP yapılandırma biçiminde, Claude Desktop'ın oluşturduğu geleneğe bakılmaksızın yapılmış bir adlandırma tercihidir. Hiçbiri daha doğru değildir. Fark, yalnızca ikisi birbirinin yerine geçebilir göründüğü ve biri bunu söylemeden başarısız olduğu için sorun olur.
- Yanlış anahtarı kullanırsam VS Code beni uyarır mı?
- Hayır ve bütün zorluk da bu. Dosya geçerli JSON'dur, bilinmeyen bir üst düzey anahtar reddedilmek yerine yok sayılır ve sıfır yapılandırılmış sunucu normal bir durumdur. Hiçbir şey bir arıza gibi görünmez.
- VS Code ve Cursor için tek bir yapılandırma dosyası kullanabilir miyim?
- Hayır. Farklı yolları okurlar ve farklı sarmalayıcı anahtarlar bekler; bu yüzden iki dosyaya da ihtiyacınız var. İç sunucu tanımı aynıdır, yani tek kelimesi değiştirilmiş bir kopyadır.
- Bu Windows Copilot için de geçerli mi?
- Hayır. Buradaki Copilot, MCP sunucularını destekleyen VS Code içindeki GitHub Copilot'tır. Windows görev çubuğu asistanı aynı adı paylaşan ayrı bir üründür ve bu yapılandırma dosyalarını kullanmaz.
MyLinedChart'ı deneyin
MyLinedChart; çizimlerinizi, notlarınızı ve gösterge değerlerinizi dışa aktarabileceğiniz, gözden geçirebileceğiniz ve yeniden kullanabileceğiniz veri olarak saklar.
MyLinedChart'ı keşfedin