MCP sunucusu nedir sorusunun kısa cevabı şu: bir yapay zekâ ajanına yeni yetenekler kazandıran küçük bir programdır. Model Context Protocol (MCP) açık bir protokoldür; bir sunucu bu protokolle ajana araçlar (tools), hazır prompt’lar ve okunabilir kaynaklar sunar. Ajan da bu araçları çağırarak tarayıcı açar, GitHub’da issue okur, Sentry’de hata arar ya da veritabanına sorgu atar.
Bu yazıda MCP’nin nasıl çalıştığını, hangi sunucuların işe yaradığını ve kodlama ajanlarına bağlarken en sık yapılan hataları anlatıyorum.
MCP sunucusu nedir ve nasıl çalışır?
Bir MCP sunucusu üç tür şey sunabilir:
- Araçlar: Ajanın çağırabildiği fonksiyonlar. Örneğin
browser_navigateya dasearch_issues. - Prompt’lar: Sunucunun hazırladığı, ajanın kullanabileceği şablonlar.
- Kaynaklar: Ajanın okuyabileceği veriler, örneğin bir dosya ya da kayıt.
Ajan başlarken bağlı sunuculara bağlanır ve araç listelerini alır. Bu listeler modelin bağlamına eklenir; model ihtiyaç duyduğunda ilgili aracı çağırır.
Bağlantı türleri
| Tür | Nerede çalışır | Örnek | Yetkilendirme |
|---|---|---|---|
| stdio | Senin bilgisayarında, bir komut olarak | npx -y @playwright/mcp@latest | Gerekirse ortam değişkenleri |
| HTTP | Uzak bir adreste | https://mcp.sentry.dev/mcp | Token ya da OAuth |
| SSE | Uzak bir adreste, olay akışıyla | Eski sunucularda yaygın | Token ya da OAuth |
İşe yarayan MCP sunucuları
Kodlama ajanlarıyla en çok kullanılan sunucular birkaç gruba ayrılır. AgentVera’nın kataloğunda yer alan 20 hazır sunucudan bazıları:
- Tarayıcı: Playwright (sayfa açma, tıklama, form doldurma, ekran görüntüsü), Chrome DevTools (konsol, ağ istekleri, performans izi).
- Belgeler: Context7 (kütüphanelerin güncel, sürüme özel dokümantasyonu), Cloudflare Docs.
- Geliştirme: GitHub (issue, pull request, kod arama), Git (yerel log, diff, commit), Sentry (hatalar ve yığın izleri).
- Mobil: Mobile MCP, MobileBuildMCP, iOS Simulator, Firebase.
- Veri ve bellek: Dosya sistemi, Bellek, Fetch, Sequential Thinking, Supabase.
- Ürün ve ekip: Linear, Notion, Stripe.
- Tasarım: Figma (masaüstü uygulamasındaki Dev Mode MCP sunucusu).
CLI’lara MCP sunucusu eklemek
Her ajanın kendi yöntemi var. Claude Code’da komut satırından ekleyebilirsin:
claude mcp add playwright -- npx -y @playwright/mcp@latest
Codex’te sunucular ~/.codex/config.toml dosyasında tanımlanır:
[mcp_servers.playwright]
command = "npx"
args = ["-y", "@playwright/mcp@latest"]
Bu yöntemin sorunu, aynı sunucuyu her araçta ayrı ayrı tanımlaman ve gizli değerleri düz metin ayar dosyalarında tutmandır. Birden fazla ajanla çalışınca liste dağılır.
MCP sunucularını tek yerden yönetmek
AgentVera’nın MCP yöneticisi sunucuları tek listede tutar ve ajan başlarken ona bağlar:
- MCP sayfasında + ile kataloğu aç, bir sunucu seç ya da kendi komutunu veya adresini gir.
- Sunucuyu bütün ajanlara mı yoksa seçtiklerine mi vereceğini belirle. İstersen tek bir projeyle sınırla.
- Bağlantıyı test et ile sunucunun araçlarını, prompt’larını ve kaynaklarını listele.
- Ajanı yeniden başlat; değişiklik yeni oturumda geçerli olur.
Gizli ortam değişkenleri ve başlıklardaki token’lar işletim sisteminin anahtar zincirinde saklanır. OAuth isteyen sunucular ilk kullanımda yetkilendirilir. Claude Code ve Codex’in kendi ayarlarındaki sunucular da sağlık durumlarıyla listelenir; istersen AgentVera’ya aktarır ya da AgentVera’daki sunucuları CLI ayarlarına yazarsın.
Bu sunucular yalnızca Claude Code ve Codex’e değil, MCP alan diğer araçlara da gider: opencode, Copilot, Qwen Code, Goose ve Amp.
Token maliyetini hesaba kat
MCP’nin görünmeyen bedeli bağlamdır. Her sunucunun araç tanımları ajanın bağlamına eklenir ve her turda yeniden okunur. On araçlı bir sunucu, ajan onu hiç kullanmasa bile her turda yer kaplar.
AgentVera bağlantı testinde her aracın ajanın bağlamına eklediği yaklaşık token miktarını gösterir. Bu sayede:
- Pahalı ama nadiren kullanılan sunucuları yalnızca ihtiyacı olan ajana verirsin.
- Aynı işi yapan iki sunucudan daha hafif olanı seçersin.
- Yalın bir ajanı gereksiz araçlarla doldurmazsın.
Bağlamı küçültmenin diğer yolları için Claude Code token tasarrufu yazısına bakabilirsin.
Ajanların ortak panosu
AgentVera her projeye otomatik olarak agentvera-board adında bir MCP sunucusu ekler. Bu, projenin ajanlarının ve senin paylaştığı bir not panosudur. Ajanlar board_read, board_post ve board_update araçlarıyla not, karar, yapılacak, keşif ve dosya/modül kayıtları bırakır, birbirlerinin yazdıklarını okur. Sen de sağ paneldeki Pano sekmesinden yazar, yapılacakları işaretlersin.
Paralel çalışan ajanlar için bu, “Testçi, Mimar’ın verdiği kararı nereden bilecek?” sorusunun basit cevabıdır.
Örnek: Playwright ile tarayıcıda test
MCP’nin pratikte ne kazandırdığını görmek için en iyi örnek tarayıcıdır. Playwright MCP sunucusu bağlı bir ajan şunları yapabilir:
- Uygulamanı yerel adreste açar.
- Sayfanın erişilebilirlik ağacından bir anlık görüntü alır.
- Butonlara tıklar, form doldurur.
- Ekran görüntüsü alıp ne gördüğünü raporlar.
Yani “ayarlar sayfasındaki kaydet butonu çalışıyor mu?” sorusunu ajan kendisi kontrol edebilir. AgentVera bunun için ayrı profilli, headless bir Chrome yönetir. “AgentVera tarayıcısı” modundaki ajanlar bu tarayıcıyı Playwright MCP ile kullanır; sen de Tarayıcı sayfasında sekmeleri canlı izleyip istersen araya girersin. Ayrıntılar için ajan tarayıcısı sayfasına bakabilirsin.
Hangi sunucu hangi ajana?
Her sunucuyu her ajana vermek yerine rollerine göre dağıtmak hem bağlamı hem güvenliği iyileştirir:
| Ajan rolü | Uygun sunucular | Neden |
|---|---|---|
| Ön yüz geliştirici | Playwright, Chrome DevTools, Figma | Sayfayı görür, tasarımı okur |
| Arka uç geliştirici | Context7, Supabase, Git | Güncel belge, veritabanı, depo geçmişi |
| Hata ayıklayan | Sentry, GitHub | Hata izleri ve ilgili issue’lar |
| Ürün odaklı | Linear, Notion | Görevleri ve belgeleri okur, günceller |
Bir sunucuyu tek projeyle sınırlamak da işe yarar. Örneğin bir müşterinin Supabase projesine bağlanan sunucunun diğer projelerdeki ajanlara görünmesine gerek yok.
Güvenlik notları
MCP sunucuları ajanlara gerçek sistemlere erişim verir. Bu yüzden:
- Yazma yetkisi gerektiren sunucuları dikkatli ver. Veritabanına migration uygulayabilen bir ajan, yanlış bir adımda veri değiştirebilir.
- Token’ları düz metin dosyalarda tutma. Anahtar zinciri ya da ortam değişkeni kullan.
- Kaynağını bilmediğin sunucuları çalıştırma. stdio sunucuları bilgisayarında kod olarak çalışır.
- Bağlantı testini atlama. Test, sunucunun gerçekten neler sunduğunu ve ne kadar bağlam harcadığını gösterir.
Kendi MCP sunucunu eklemek
Katalogda olmayan bir sunucu da ekleyebilirsin. Bunun için iki bilgiye ihtiyacın var:
- stdio için: Çalıştırılacak komut ve argümanlar, gerekiyorsa ortam değişkenleri.
- HTTP ya da SSE için: Sunucu adresi ve gerekiyorsa yetkilendirme başlıkları.
Ekledikten sonra bağlantıyı test et. Test başarısız olursa sunucu çıktısını (stderr) incele; çoğu zaman eksik bir ortam değişkeni ya da kurulu olmayan bir çalışma zamanı (ör. uvx) sorunun kaynağıdır.
Kontrol listesi
- Sunucu gerçekten bu ajanın işine yarıyor mu?
- Token maliyetini test ettin mi?
- Gizli değerler düz metin bir dosyada değil, anahtar zincirinde mi?
- Sunucu tek projeyle sınırlanmalı mı?
- Ekledikten sonra ajanı yeniden başlattın mı?
Sonuç
MCP sunucuları kodlama ajanlarını terminalin ötesine taşır: tarayıcı, issue takipçisi, hata izleme ve tasarım dosyaları ajanın erişimine girer. Karşılığında bağlam maliyeti ve gizli değer yönetimi gelir. Sunucuları tek yerden yönetmek, kapsamı daraltmak ve maliyeti ölçmek bu dengeyi kurmanın yoludur.
AgentVera’nın MCP yöneticisini ücretsiz planla deneyebilir, ajan bazında hangi araçların MCP aldığını Claude Code ve diğer ajan sayfalarında görebilirsin.