MCP'nin nasıl çalıştığını ve nasıl yapılandırılacağını açıklar; Claude Code'un MCP Server aracılığıyla veritabanları, GitHub, Slack ve diğer harici sistemlere bağlanmasını sağlar.
Claude Code'un varsayılan olarak yapabilecekleri sınırlıdır: yerel dosyaları okuyup yazabilir, terminal komutlarını çalıştırabilir, yerleşik araçları kullanabilir. Ama gerçek projelerde çok daha fazlası gerekir — veritabanı sorgulamak, Notion belgelerini okumak, Slack mesajlarını aramak, dahili API'lara çağrı yapmak.
MCP tam olarak bu sorunu çözer.
MCP (Model Context Protocol), Anthropic'in önerdiği açık bir protokoldür; AI modellerinin harici araçlar ve veri kaynaklarıyla nasıl iletişim kurduğunu tanımlar. Bunu Claude Code'a eklenti yüklemek olarak düşünebilirsin — her MCP Server, bir araç seti sunan bağımsız bir servistir ve Claude bu araçları oturum sırasında doğrudan çağırabilir.
Hooks'tan farklı olarak (Claude bir eylem gerçekleştirdiğinde betikleri tetikler), MCP Claude'un yetenek sınırlarını aktif olarak genişletir: neyi bağlarsan, Claude onu işleyebilir.
Mimari oldukça basittir:
Claude Code (Client) ←→ MCP Server ←→ Harici Sistem
Tüm süreç kullanıcıya görünmezdir. Sen sadece Claude'un "veritabanına bir bakayım" deyip sonucu getirdiğini görürsün; arka planda MCP isteği iletmektedir.
MCP Server üç şey sunabilir:
Tools (Araçlar)
Claude'un aktif olarak çağırabileceği fonksiyonlar — "kullanıcı tablosunu sorgula", "belge ara", "Slack mesajı gönder". En yaygın kullanılan türdür, gerçek kullanım senaryolarının %90'ını kapsar.
Resources (Kaynaklar)
Claude'un bağlam olarak okuyabileceği yapılandırılmış veriler — veritabanı şeması, API belgeleri, konfigürasyon dosyaları.
Prompts (Prompt Şablonları)
Kullanıcıların doğrudan başvurabileceği önceden tanımlanmış prompt parçacıkları.
Pratikte neredeyse her zaman Tools ile çalışacaksın.
Resmi Filesystem MCP'yi örnek alalım — bu Server, Claude'un çalışma dizini dışındaki dosya sistemine erişmesini sağlar.
Yükleme
npm install -g @modelcontextprotocol/server-filesystem
Konfigürasyon
~/.claude/settings.json dosyasını düzenle:
{
"mcpServers": {
"filesystem": {
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-filesystem",
"/Users/yourname/Documents"
]
}
}
}
Doğrulama
Claude Code'u yeniden başlat ve dene:
/Users/yourname/Documents altındaki tüm PDF dosyalarını listele
Claude "dosya sistemine erişemiyorum" demek yerine sonuçları döndürüyorsa MCP çalışıyor demektir.
{
"mcpServers": {
"servis-adı": {
"command": "başlatma komutu",
"args": ["argüman listesi"],
"env": {
"API_KEY": "xxx"
}
}
}
}
command + args: Claude Code'un MCP Server sürecini başlatmak için kullandığı komutenv kullan; koda gömmekten kaçınMCP konfigürasyonu düşükten yükseğe öncelik sırasıyla üç yerde olabilir:
| Konum | Dosya | Ne Zaman Kullanılır |
|---|---|---|
| Global | ~/.claude/settings.json |
Her projede kullanmak istediğin araçlar |
| Proje | .claude/settings.json |
Bu projeye özgü araçlar |
| Yerel override | .claude/settings.local.json |
Kişisel konfigürasyon, git'e commit edilmez |
Veritabanı bağlantıları ve dahili API'lar için proje konfigürasyonunu kullan ve kodla birlikte commit et. Repoyu klonlayan ekip üyeleri aynı MCP ortamını otomatik olarak edinir.
Anthropic resmi sunucular sağlar:
Topluluk, Notion, Linear, Jira ve çeşitli veritabanlarını kapsayan çok sayıda üçüncü taraf uygulama geliştirmiştir.
| Hooks | MCP | |
|---|---|---|
| Tetikleyici | Claude belirli bir eylem gerçekleştirdiğinde | Claude aktif olarak bir araç çağırdığında |
| Amaç | Mevcut davranışları kesmek/geliştirmek | Yeni yetenekler eklemek |
| Tipik senaryo | Kaydetmede biçimlendirme, commit öncesi kontrol | DB sorgulama, harici API çağrısı |
| Konfigürasyon karmaşıklığı | Düşük | Orta |
İkisi birbirini tamamlar. Hooks Claude'un nasıl çalıştığını; MCP ise Claude'un ne yapabileceğini kontrol eder.
Bu makale MCP'ye kavramsal bir girişti. Sonraki makaleler şunları kapsayacak:
Bağlamak istediğin bir sistem varsa önce MCP Server listesine bak — büyük ihtimalle biri zaten yapmıştır.