MCP nedir?

Model Context Protocol (MCP), Cursor’ın dış araçlara ve veri kaynaklarına bağlanmasına olanak tanır.

Neden MCP kullanmalı?

MCP, Cursor’ı harici sistemlere ve verilere bağlar. Proje yapını tekrar tekrar açıklamak yerine, doğrudan araçlarınla entegre ol. stdout’a yazdırabilen ya da bir HTTP endpoint’i sunabilen herhangi bir dille MCP sunucuları yaz — Python, JavaScript, Go vb.

Nasıl çalışır

MCP sunucuları, protokol üzerinden yeteneklerini sunarak Cursor’ı harici araçlara veya veri kaynaklarına bağlar. Cursor üç aktarım yöntemini destekler:
AktarımÇalışma ortamıDağıtımKullanıcılarGirdiKimlik doğrulama
stdioYerelCursor yönetirTek kullanıcıKabuk komutuManuel
SSEYerel/UzakSunucu olarak dağıtBirden çok kullanıcıBir SSE uç noktasına URLOAuth
Streamable HTTPYerel/UzakSunucu olarak dağıtBirden çok kullanıcıBir HTTP uç noktasına URLOAuth

Protokol desteği

Cursor, şu MCP protokol yeteneklerini destekler:
ÖzellikDestekAçıklama
ToolsDestekleniyorYapay zeka modelinin çalıştıracağı işlevler
PromptsDestekleniyorKullanıcılar için şablon mesajlar ve iş akışları
ResourcesDestekleniyorOkunup referans verilebilen yapılandırılmış veri kaynakları
RootsDestekleniyorÇalışma alanını belirlemek için sunucu tarafından başlatılan URI veya dosya sistemi sınır sorguları
ElicitationDestekleniyorKullanıcılardan ek bilgi almak için sunucu tarafından başlatılan talepler

MCP sunucularını yükleme

Tek tıkla kurulum

Koleksiyonumuzdan MCP sunucularını yükle ve OAuth ile oturum açıp doğrula.

mcp.json kullanımı

Özel MCP sunucularını bir JSON dosyasıyla yapılandır:
{
  "mcpServers": {
    "server-name": {
      "command": "npx",
      "args": ["-y", "mcp-server"],
      "env": {
        "API_KEY": "value"
      }
    }
  }
}

STDIO sunucu yapılandırması

STDIO sunucuları (yerel komut satırı sunucuları) için mcp.json dosyanda şu alanları yapılandır:
FieldRequiredDescriptionExamples
typeEvetSunucu bağlantı türü"stdio"
commandEvetSunucu çalıştırılabilirini başlatacak komut. Sistem PATH’inde bulunmalı ya da tam yol içermeli."npx", "node", "python", "docker"
argsHayırKomuta iletilecek argümanlar dizisi["server.py", "--port", "3000"]
envHayırSunucu için ortam değişkenleri{"API_KEY": "${input:api-key}"}
envFileHayırEk değişkenleri yüklemek için ortam dosyasının yolu".env", "${workspaceFolder}/.env"

Extension API’yi kullanma

Programatik MCP sunucusu kaydı için Cursor, mcp.json dosyalarını değiştirmeden dinamik yapılandırmaya olanak tanıyan bir Extension API sunar. Bu, özellikle kurumsal ortamlar ve otomatik kurulum iş akışları için kullanışlıdır.

MCP Extension API Referansı

vscode.cursor.mcp.registerServer() kullanarak MCP sunucularını programatik olarak nasıl kaydedebileceğini öğren

Yapılandırma konumları

Proje Yapılandırması

Projene özel araçlar için projende .cursor/mcp.json oluştur.

Genel Yapılandırma

Her yerden kullanılabilen araçlar için ana dizininde ~/.cursor/mcp.json oluştur.

Yapılandırma interpolasyonu

mcp.json değerlerinde değişken kullan. Cursor şu alanlardaki değişkenleri çözümler: command, args, env, url ve headers. Desteklenen sözdizimi:
  • ${env:NAME} ortam değişkenleri
  • ${userHome} ana klasörünün yolu
  • ${workspaceFolder} proje kökü (.cursor/mcp.json dosyasını içeren klasör)
  • ${workspaceFolderBasename} proje kökünün adı
  • ${pathSeparator} ve ${/} işletim sistemi yol ayırıcıları
Örnekler
{
  "mcpServers": {
    "local-server": {
      "command": "python",
      "args": ["${workspaceFolder}/tools/mcp_server.py"],
      "env": {
        "API_KEY": "${env:API_KEY}"
      }
    }
  }
}
{
  "mcpServers": {
    "remote-server": {
      "url": "https://api.example.com/mcp",
      "headers": {
        "Authorization": "Bearer ${env:MY_SERVICE_TOKEN}"
      }
    }
  }
}

Kimlik doğrulama

MCP sunucuları kimlik doğrulama için ortam değişkenlerini kullanır. API anahtarlarını ve access token’ları config üzerinden ilet. Cursor, bunu gerektiren sunucular için OAuth’u destekler.

Sohbette MCP kullanma

Composer Agent, uygun olduğunda Available Tools altında listelenen MCP araçlarını otomatik olarak kullanır. Belirli bir aracı adıyla iste ya da neye ihtiyacın olduğunu anlat. Araçları ayarlardan etkinleştirip devre dışı bırakabilirsin.

Araçları açma/kapama

MCP araçlarını doğrudan sohbet arayüzünden etkinleştir veya devre dışı bırak. Araçlar listesindeki araç adına tıklayarak açıp kapatabilirsin. Devre dışı bırakılan araçlar bağlama yüklenmez ve Agent tarafından kullanılamaz.

Araç onayı

Agent, varsayılan olarak MCP araçlarını kullanmadan önce onay ister. Argümanları görmek için araç adının yanındaki oka tıkla.

Otomatik çalıştırma

Agent’in MCP araçlarını senden onay istemeden kullanabilmesi için otomatik çalıştırmayı etkinleştir. Terminal komutları gibi çalışır. Otomatik çalıştırma ayarları hakkında daha fazla bilgiyi buradan edinebilirsin.

Araç yanıtı

Cursor, sohbette argümanlar ve yanıtların açılabilir görünümleriyle yanıtı gösterir:

Bağlam olarak görseller

MCP sunucuları görseller döndürebilir — ekran görüntüleri, diyagramlar vb. Bunları base64 kodlu dizeler olarak döndür:
const RED_CIRCLE_BASE64 = "/9j/4AAQSkZJRgABAgEASABIAAD/2w...";
// ^ okunabilirlik için tam base64 kısaltıldı

server.tool("generate_image", async (params) => {
  return {
    content: [
      {
        type: "image",
        data: RED_CIRCLE_BASE64,
        mimeType: "image/jpeg",
      },
    ],
  };
});
Uygulama ayrıntıları için şu örnek sunucuya bak. Cursor, dönen görselleri sohbete ekler. Model görselleri destekliyorsa onları analiz eder.

Güvenlik hususları

MCP sunucularını kurarken şu güvenlik uygulamalarını göz önünde bulundur:
  • Kaynağı doğrula: MCP sunucularını yalnızca güvenilir geliştiricilerden ve depolardan kur
  • İzinleri incele: Sunucunun hangi verilere ve API’lere erişeceğini kontrol et
  • API anahtarlarını sınırla: Yalnızca minimum gerekli izinlere sahip kısıtlı API anahtarları kullan
  • Kodu denetle: Kritik entegrasyonlar için sunucunun kaynak kodunu incele
MCP sunucularının harici hizmetlere erişebileceğini ve senin adına kod çalıştırabileceğini unutma. Kurmadan önce bir sunucunun ne yaptığını mutlaka anla.

Gerçek dünya örnekleri

MCP’nin gerçek hayattaki kullanımına dair pratik örnekler için, Linear, Figma ve tarayıcı araçlarını geliştirme iş akışına entegre etmeyi gösteren Web Development guide sayfasına göz at.

SSS

MCP sunucuları Cursor’ı Google Drive, Notion ve diğer hizmetler gibi harici araçlara bağlayarak dokümanları ve gereksinimleri kodlama iş akışına dahil eder.
MCP loglarını görüntülemek için: 1. Cursor’da Output panelini aç (Ctrl+Shift+U) 2. Dropdown’dan “MCP Logs” seç 3. Bağlantı hatalarını, kimlik doğrulama sorunlarını veya sunucu çökmelerini kontrol et Loglar sunucu başlatma, araç çağrıları ve hata mesajlarını gösterir.
Evet! Sunucuları kaldırmadan açıp kapatabilirsin: 1. Ayarları aç ( Ctrl+Shift+J) 2. Features → Model Context Protocol’e git 3. Herhangi bir sunucunun yanındaki toggle’a tıklayarak etkinleştir/devre dışı bırak Devre dışı bırakılan sunucular yüklenmez veya chat’te görünmez. Bu, sorun giderme veya araç karmaşasını azaltmak için kullanışlıdır.
Bir MCP sunucusu başarısız olursa: - Cursor chat’te bir hata mesajı gösterir - Araç çağrısı başarısız olarak işaretlenir - İşlemi yeniden deneyebilir veya ayrıntılar için logları kontrol edebilirsin - Diğer MCP sunucuları normal şekilde çalışmaya devam eder Cursor, bir sunucunun diğerlerini etkilemesini önlemek için sunucu başarısızlıklarını izole eder.
npm tabanlı sunucular için: 1. Sunucuyu ayarlardan kaldır 2. npm cache’ini temizle: npm cache clean --force 3. En son sürümü almak için sunucuyu yeniden ekle Özel sunucular için, yerel dosyalarını güncelle ve Cursor’ı yeniden başlat.
Evet, ancak güvenlik best practice’lerini takip et: - Gizli bilgiler için environment variable’ları kullan, asla hardcode etme - Hassas sunucuları stdio transport ile yerel olarak çalıştır - API key izinlerini gerekli minimum ile sınırla - Hassas sistemlere bağlanmadan önce sunucu kodunu incele - Sunucuları izole edilmiş ortamlarda çalıştırmayı düşün