MCP (Model Context Protocol)
Diğer adlandırmalar: Model Context Protocol , Anthropic MCP
Tam pillar: MCP nedir? — kapsamlı Türkçe rehber.
Tanım
MCP — Model Context Protocol, Anthropic’in Kasım 2024’te açık standart olarak yayınladığı bir agent-tool köprü protokolü. Bir agent’ın dış araçlara (dosya sistemi, takvim, mail, API’lar) standart bir yoldan ulaşmasını sağlar.
Önceden her LLM’in kendi function calling yöntemi vardı (OpenAI, Anthropic, Google ayrı). MCP bunu tek standarda toplar. Bir kez yazılan MCP server her MCP-uyumlu agent’tan çağrılabilir.
Üç parça
MCP üç katmandan oluşur:
- Client — agent’ın çalıştığı uygulama (Claude Desktop, Cursor, Zed gibi).
- Protocol — JSON-RPC tabanlı, transport-bağımsız (stdio, SSE, HTTP).
- Server — bir aracı sunar. Filesystem server, calendar server, GitHub server vb.
Client server’a bağlanır, “hangi tool’lar var?” diye sorar, server tool listesini geri verir, client tool’ları LLM’e expose eder. LLM bir tool çağırırsa client server’dan sonucu alır ve LLM’e besler.
İlk nesil Ilura MCP’yi nasıl kullanıyordu?
İlk nesil (masaüstü) Ilura bir MCP host’tu. Yerelde MCP server’lar çalıştırırdı:
- Filesystem — sandbox’lı dosya erişimi. Agent dosya açabilir, yazabilir, taşıyabilirdi — ama sadece izin verilen klasörde.
- Takvim — Google Calendar / Apple Calendar. Agent toplantı oluşturabilir, ama önce sorardı.
- Mail — taslak yazabilir, göndermek kullanıcı onayı gerektirirdi.
- Custom — kullanıcı kendi MCP server’ını yazabilir,
.mcp.jsonconfig dosyasından tanıtırdı.
Bu mimari doğrulamalı ilkesinin uygulamasıydı: her tool çağrısı PolicyEngine’den geçerdi.
Bugünkü Ilura iOS’ta yaşıyor ve MCP kullanmıyor — entegrasyon yüzeyi Siri ve Kısayollar. MCP, masaüstü agent ekosisteminde standart olmaya devam ediyor; bu girdi o ekosistemi anlamak için güncel.
STDIO transport — Ox Security uyarısı
Kasım 2024’te Ox Security şirketi, MCP’nin STDIO transport’unun komut enjeksiyon riski taşıdığını rapor etti. Konfig dosyasındaki command ve args alanları doğrudan shell’e geçiyordu — kötü niyetli MCP server config’i yerel sistemi etkileyebilirdi.
Anthropic bunu “by design” olarak nitelendirdi (yetkilendirilmiş kullanıcı kararıyla). Application-layer savunma gerektirir.
İlk nesil Ilura’nın savunması şuydu (MCP host kuran herkes için hâlâ iyi şablon):
- Binary allowlist — sadece bilinen güvenli komutlar (
rmcp,node,pythonbelirli yollarda) çalıştırılabilirdi. - Argüman temizleme —
-c,--command,-egibi shell-eval flag’leri reddedilirdi. - Çift teyit — yeni MCP server eklenmeden önce çift teyit.
- Audit log — her server spawn imzalı kayıt.
Detaylar: Ilura MCP STDIO injection response.
MCP olmadan ne yapılır?
MCP olmadan üç alternatif var:
- Function calling — vendor-specific (OpenAI, Anthropic, Google ayrı API’lar).
- LangChain agent tools — Python tabanlı, framework lock-in.
- Custom JSON-RPC — kendi protokolünü yaz.
Üçü de MCP’nin sunduğu standart ve dil-bağımsız avantajını sağlamaz. MCP zaten 2026 itibariyle de facto standart oldu.
Yaygın yanılgılar
“MCP sadece Claude için.” — Hayır. Anthropic açtı, ama OpenAI, Google ve bağımsız geliştiriciler client/server üretiyor. Standart açık.
“MCP server kurmak zor.” — TypeScript/Python SDK’lar var, basit bir filesystem server 50 satır kod. Çoğu MCP host hazır server’ları otomatik yükler.
“MCP veriyi buluta gönderir.” — Hayır. MCP transport-bağımsız. Yerel STDIO veya local HTTP olabilir; server’lar tamamen yerelde çalışabilir.