MCP araç bağlar, her araç bağlam yer
MCP, Claude'a yerleşik araçların dışında araçlar verir. Kurulum tek komut. Asıl kararlar hangi scope'u kullanacağınız ve düz bir CLI'ın işi bedavaya görüp görmeyeceği.
MCP sunucusu ne ekler
Claude kutudan çıktığı gibi dosya okuyor, arıyor, düzenliyor ve kabuk komutu çalıştırıyor. Notion sayfalarınızı, issue takipçinizi ya da veritabanınızı, ona bir yol veren bir şey olmadan göremiyor.
MCP sunucusu o şey. Claude'a ek araçlar sunuyor ve Claude bunları döngüdeki diğer araçlar gibi çağırıyor. Sunucu yerel bir süreç (stdio) olarak, ya da uzakta http (streamable-http diye de yazılıyor) veya sse/ws üzerinden çalışabilir.
Eklemek tek komut:
claude mcp add --transport http notion https://mcp.notion.com/mcp
claude mcp add --transport stdio myserver -- python server.py --port 8080-- işaretinden sonrası sunucu komutuna olduğu gibi gidiyor. --port gibi bir bayrağın Claude Code tarafından okunmak yerine sunucunuza ulaşması böyle oluyor.
Üç scope
Sunucuyu nereye eklediğiniz, kimin alacağını belirliyor.
- local, varsayılan: bu proje için
~/.claude.jsoniçinde tutulur, yalnızca siz görürsünüz - project: repo kökündeki
.mcp.jsondosyasına yazılır, git ile paylaşılır - user: bütün projelerinizde kullanılabilir
--scope project|user|local ile seçersiniz. Aynı isim birden fazla scope'ta varsa sıra şöyle: local, project, user, plugin, sonra claude.ai connector'ları. Kazanan kayıt bütün olarak kullanılıyor. Scope'lar arasında alanlar birleştirilmiyor.
Paylaşılan bir .mcp.json için sırları dosyanın dışında tutun. Ortam değişkenlerine ${VAR} ya da ${VAR:-default} ile başvurun, her takım arkadaşı kendi değerini versin.
Aynı sunucu adını user ve project scope'unda farklı ayarlarla eklerseniz ne olur?
Bağlamdaki maliyeti
Araçları taşımak bedava değil. Her aracın bir adı, açıklaması ve şeması var; çok araçlı bir sunucu siz tek kelime yazmadan bağlamı doldurabilir.
Claude Code bunu yumuşatıyor: tool search varsayılan olarak açık, yani başta yalnızca araç adları yükleniyor ve tam tanımlar araç gerektiğinde geliyor. Bu çok yardımcı oluyor ama maliyeti ortadan kaldırmıyor. Çıktı da maliyet. 10.000 token'ı aşan bir araç sonucu uyarı üretiyor ve varsayılan olarak 25.000'de kesiliyor (MAX_MCP_OUTPUT_TOKENS bunu değiştirir). 50.000 karakteri aşan metin sonuçları ise bir dosyaya kaydediliyor.
Yani sunucu eklemeden önce sorulacak soru "bağlanır mı" değil, "bana ne taşıtacak".
Çalıştırmak ve onarmak
/mcp her sunucunun durumunu gösteriyor, /mcp reconnect <server|all> bağlantıyı yeniden deniyor. Kopan bir uzak sunucu, bir saniyeden başlayan bekleme ile beş kez yeniden bağlanmayı deniyor. İki dakikadan uzun süren bir çağrı, /tasks içinde görebileceğiniz bir arka plan görevine taşınıyor.
Bilmeye değer iki sessiz tuzak var.
Gelen şeye güvenmek
Sunucu, sizin çalıştırdığınız kod ve araç sonuçları doğrudan modelin bağlamına giriyor. Güvendiğiniz sunucuları ekleyin, işin izin verdiği kadar dar scope'ta tutun ve takımınızın inceleme sırasında okuyabilmesi için project scope kayıtlarını .mcp.json içinde bırakın.
MCP'yi düz bir CLI'a tercih etmek için en güçlü sebep hangisi?
Bölüm tamamlandı
Claude Code'u genişletmek kursunun 6 bölümünden 4. bölümü bitirdiniz.
Plugin yeni bir yetenek değil. Skill'leri, alt ajanları, hook'ları ve MCP sunucularını tek bir kurulabilir, sürümlenebilir birimde topluyor; etkin bir plugin kullanmasanız da her turda bağlam yiyor.
Sonraki bölüm