---
title: "StemSplit MCP Sunucusu: Claude ve Cursor'da stem ayrımı (2026)"
date: "2026-05-23"
lastUpdated: "2026-05-23"
author: "StemSplit Team"
tags: ["mcp", "model context protocol", "claude desktop", "cursor", "cline", "windsurf", "zed", "stem separation", "vocal remover", "karaoke maker", "ai assistants", "stemsplit"]
excerpt: "stemsplit-mcp; AI ile stem ayrımını Claude Desktop, Cursor, Cline, Windsurf ve Zed'e Model Context Protocol üzerinden taşır. Tek npm yüklemesi, vokal + enstrümantal + 6-stem ayrımı sohbetten."
abstract: "TL;DR. `stemsplit-mcp` sürümünü yayınladık — StemSplit için resmi Model Context Protocol sunucusu. Bir kez `npx` ile kur, AI asistanını ona yönlendir; doğrudan sohbetten vokal kaldırma, karaoke üretimi, enstrümantal çıkarma ve 4 ya da 6 stem ayrımı çalıştırabilirsin — yerel ses dosyalarında veya YouTube URL'lerinde. Claude Desktop, Cursor, Cline, Windsurf, Zed ve diğer her MCP uyumlu istemcide çalışır. MIT lisanslı, GitHub'da açık kaynak, bakım gerektiren altyapı yok."
locale: "tr"
canonical: "https://stemsplit.io/tr/blog/stemsplit-mcp-server-claude-cursor"
source: "stemsplit.io"
---

> **Source:** https://stemsplit.io/tr/blog/stemsplit-mcp-server-claude-cursor  
> Originally published by [StemSplit](https://stemsplit.io). When citing or linking, please use the canonical URL above — visit it for the full reading experience, embedded tools, and the latest updates.

# stemsplit-mcp tanıtımı: Claude Desktop, Cursor, Cline, Windsurf ve Zed'in içinde Model Context Protocol ile AI stem ayrımı (2026)

**TL;DR.** [**`stemsplit-mcp`**](https://www.npmjs.com/package/stemsplit-mcp) sürümünü yayınladık — StemSplit için resmi Model Context Protocol sunucusu. Bir kez `npx` ile kur, AI asistanını ona yönlendir; **doğrudan sohbetten** vokal kaldırma, karaoke üretimi, enstrümantal çıkarma ve 4 ya da 6 stem ayrımı çalıştırabilirsin — yerel ses dosyalarında **veya** YouTube URL'lerinde. Claude Desktop, Cursor, Cline, Windsurf, Zed ve diğer her MCP uyumlu istemcide çalışır. MIT lisanslı, [GitHub'da açık kaynak](https://github.com/StemSplit/stemsplit-mcp), bakım gerektiren altyapı yok.

Stem ayrımı «curl ile betikten çağırdığım bir API» olmaktan çıkıp «sohbetimin bildiği bir iş» haline gelince yapay zekâlı iş akışlarının şekli değişiyor. Bu yazı nasılını ve nedenini anlatıyor.

---

## Az önce yayınladığımız şey

npm üstünde [**`stemsplit-mcp` v0.2.0**](https://www.npmjs.com/package/stemsplit-mcp). Kullanmak için tek komut:

```bash
npx -y stemsplit-mcp
```

Sunucu [Model Context Protocol](https://modelcontextprotocol.io) konuşur — Anthropic'in 2024 sonunda tanıttığı, AI asistanlarının dış araçlarla tek tip JSON-RPC arayüzü üzerinden konuşmasını sağlayan açık standart. MCP'ye artık Claude Desktop, Cursor, Cline, Windsurf, Zed, OpenDevin, Goose ve büyüyen bir istemci listesi destek veriyor.

Sunduğu araçlar:

| Araç | Ne yapar |
|---|---|
| `separate_stems` | Yerel dosya ya da doğrudan ses URL'si → vokal, enstrümantal, 4 stem veya 6 stem. Tamamlanana kadar poll eder ve diske yazar. |
| `separate_youtube` | YouTube URL'si → vokal + enstrümantal, sunucu tarafında indirilip işlenir. |
| `get_job` / `list_jobs` | İş durumu ve geçmişi. |
| `get_youtube_job` / `list_youtube_jobs` | Aynısı, YouTube işleri için. |
| `get_balance` | Kalan kredi bakiyesi (saniye ve dakika). |
| `download_stems` | Tamamlanmış işlerin yeni presigned URL'lerini tekrar alır ve indirir. |

Ayrıca 4 kaynak (canlı bakiye, son işler, iş detayı, YouTube iş detayı) ve 4 prompt (karaoke maker, vokal yalıtıcı, altı-stem sampler paketi, YouTube enstrümantal). Tam referans [GitHub README'de](https://github.com/StemSplit/stemsplit-mcp#readme).

Ana kullanım: **sohbete bir dosya yolu ya da YouTube URL'si bırak, stemler geri gelsin**. HTTP sıhhi tesisatı yok, poll kodu yok, temizlenecek geçici dosya yok.

---

## MCP neden ses için doğru biçim

Bir stem ayrım API'sini daha önce entegre ettiyseniz — bizimkini ya da başkasını — şu dansı tanırsınız:

```
POST /jobs            → job_id döner
GET  /jobs/:id        → status=COMPLETED olana dek 5 sn'de bir poll
GET  presigned_url    → her stem'i diske indir
```

Üç uç nokta, bir poll döngüsü, sürekli sona eren URL'ler, geçici 5xx için yeniden deneme mantığı. Sesi entegre eden her ekip aynı kodu baştan yazar. MCP bunu içine alır.

İncelik şu: **ses dosyaları sohbet bağlamından geçmez**. Çok büyükler. Onun yerine MCP *referanslar* — dosya yolları ve URL'ler — değiştokuş eder; gerçek baytlar makineniz, StemSplit API'si ve Cloudflare R2 arasında akar. LLM'in gördüğü şey:

- *«Vokal stem'i şurada: `~/Downloads/stemsplit/job_abc123/vocals.mp3`».*

Bunu bir sonraki araca zincirleyebilir (transkripsiyon, normalleştirme, DAW projesine yükleme, ne olursa). 30 MB MP3'ü kendisi okumak zorunda kalmaz.

Bu, sunucunun yerel LLM'ler ve küçük bağlamlı modellerle de çalışmasının sebebi. Protokol tam olarak «ağır işi makinende yap, sadece referansı geri ver» kalıbı için tasarlandı.

---

## 2 dakikadan kısa sürede kurulum

Üç şey gerekli:

1. **Node.js 20+** (`node --version` ile kontrol et)
2. **StemSplit API anahtarı** — [stemsplit.io/app/settings/api](https://stemsplit.io/app/settings/api) sayfasında üret
3. **MCP uyumlu istemci** — aşağıda istemci başına konfigürasyonlar var

Aslında npm paketini kurmanız bile şart değil — çoğu istemci `npx -y stemsplit-mcp` ile başlatıp ilk çalıştırmada önbelleğe alıyor. Global kurulumu tercih ederseniz: `npm install -g stemsplit-mcp`.

### Claude Desktop

macOS'ta `~/Library/Application Support/Claude/claude_desktop_config.json`, Windows'ta `%APPDATA%\Claude\claude_desktop_config.json` dosyasını düzenleyin:

```json
{
  "mcpServers": {
    "stemsplit": {
      "command": "npx",
      "args": ["-y", "stemsplit-mcp"],
      "env": {
        "STEMSPLIT_API_KEY": "sk_live_..."
      }
    }
  }
}
```

Claude'u yeniden başlatın. Pencerenin altındaki MCP göstergesi hazır olduğunda yeşil noktayla "stemsplit"i gösterecek.

### Cursor

`~/.cursor/mcp.json` dosyasına ekleyin (veya Settings → MCP):

```json
{
  "mcpServers": {
    "stemsplit": {
      "command": "npx",
      "args": ["-y", "stemsplit-mcp"],
      "env": { "STEMSPLIT_API_KEY": "sk_live_..." }
    }
  }
}
```

### Cline (VS Code), Windsurf, Zed

Şekil aynı — `command`, `args`, `env`. İstemci başına tam parçacıklar [docs rehberinde](/developers/guides/mcp).

---

## Pratikte nasıl görünüyor

Konfigürasyon bittikten sonra iş akışı sadece sohbetten ibaret. Kendi kullandığımız birkaç örnek:

### Yerel bir dosyadan vokali çıkar

> *«`/Users/me/Music/song.mp3` dosyasının karaoke versiyonunu yap».*

LLM `outputType=BOTH` ile `separate_stems`'i seçer. Sunucu dosyayı yükler, tamamlanana kadar poll eder, vokal + enstrümantali `~/Downloads/stemsplit/<job-id>/` altına indirir ve yerel yolları asistana iletir. Asistan da enstrümantali sana gösterir.

### Tek istemiyle YouTube'dan acapella

> *«https://youtu.be/dQw4w9WgXcQ adresinden temiz vokal çıkar».*

`separate_youtube`'u seçer. StemSplit videoyu sunucu tarafında indirir, ayrımı yapar, vokal stem'inin yerel yolunu döner. `yt-dlp` yok, rate-limit dansı yok.

### Sampling için altı-stem ayrımı

> *«`~/Music/funk-bass.wav` dosyasını en iyi kalitede 6 stem'e böl».*

`outputType=SIX_STEMS` ve `quality=BEST` ile `separate_stems`'i seçer. drums, bass, vocals, other, piano ve guitar — her biri ayrı dosyada.

### Ön kontrol

> *«Kaç dakikam kaldı?»*

`get_balance`'ı seçer. Uzun bir iş başlatmadan önce işe yarar.

---

## Kutunun içinde ne var

Sunucuya bel bağlamaya başladığınızda fark ettiren birkaç teknik karar:

### Üstel backoff + jitter ile otomatik yeniden deneme

10 dakikalık bir poll döngüsünde tek bir 502 önceden tüm işi düşürebilirdi. Şimdi:

- **GET** istekleri ağ hataları, 5xx ve 429 için `Retry-After`'a saygı duyarak 4 kez yeniden denenir.
- İş oluşturma uç noktalarına **POST** muhafazakârdır — yalnızca *sunucunun isteği hiç görmediğini ispatlayan* ağ hataları yeniden deneme tetikler, yani yanlışlıkla çift ücretlendirme olmaz.
- **R2 yüklemeleri** 3 kez yeniden denenir; dosya her denemede yeni bir akış olarak tekrar açılır (web `ReadableStream` geri sarılmıyor).
- **R2 indirmeleri** 5xx için yeniden denenir ama 403 için asla — bu, presigned URL'nin süresinin dolduğu anlamına gelir ve doğru hamle `get_job` ile yeni URL almak.

Her yeniden deneme stderr'a loglanır, sorun olduğunda mekaniğin çalıştığını görebilirsiniz.

### Mutlak yol doğrulama

`song.mp3` gibi göreli yollar eskiden sessizce MCP sunucusunun çalışma dizinine göre çözümleniyordu — Claude Desktop ve Cursor'da bu genellikle LLM'in bilemeyeceği bir sistem köküdür. Artık göreli yolları en başta reddediyor, LLM'e tam olarak ne yapacağını söylüyoruz: *«`/Users/you/Music/song.mp3` gibi mutlak ya da `~/Music/song.mp3` gibi tilde yolu geç. Bilmiyorsan kullanıcıya sor»*.

### Yapılandırılmış hata yanıtları

Her hata makine okunabilir bir `code` (`INSUFFICIENT_CREDITS`, `RATE_LIMIT_EXCEEDED`, `FILE_TOO_LARGE`, `UNSUPPORTED_FORMAT` vs.), insan okunabilir bir mesaj ve sık karşılaşılan durumlar için ipuçları içerir. LLM ne olduğunu anlamak için İngilizce ayrıştırmak zorunda değil.

### İlerleme bildirimleri

Poll'lar MCP progress event olarak iletilir. Uzun YouTube işleri Claude Desktop'ın ilerleme arayüzünde donmuş gibi durmak yerine "10% → 35% → 70% → 100%" şeklinde görünür.

---

## Mevcut seçeneklerle karşılaştırma

| Seçenek | Ne deploy ediyorsunuz | Hangi durum için iyi |
|---|---|---|
| **`stemsplit-mcp`** | Bir npm paketi + bir API anahtarı | Claude / Cursor / Cline / Windsurf / Zed içinde doğal dil iş akışları |
| **`n8n-nodes-stemsplit`** | n8n topluluk node'u | n8n'de zamanlanmış veya webhook tetiklemeli toplu işleme |
| **Ham HTTP API** | curl / kendi istemciniz | Sunucudan sunucuya otomasyon, özel entegrasyonlar |
| **`demucs-onnx`** (PyPI) | Uygulamanızda 316 MB ONNX modeli | Çevrimdışı / mobil / API bağımlılığı istemeyen durumlar |
| **Kendi sunucunuzda Demucs** | GPU, kuyruk ve çıkarım sunucusu | GPU bütçesi olan kurum içi yüksek hacimli işler |

Aracın *kullanıcısı* AI asistanı içindeki bir insansa MCP sunucusu doğru tercihtir. Kullanıcı yazılımsa diğer seçenekler doğru olur.

Üretimde çoğu ekip ikisini birden kullanır: etkileşimli keşif ve tek seferlik işler için MCP sunucusu, yüksek hacimli işleme için API ya da ONNX modelleri.

---

## Tasarımı gereği açık kaynak

Tüm proje MIT: [github.com/StemSplit/stemsplit-mcp](https://github.com/StemSplit/stemsplit-mcp).

Kod tek oturuşta okunacak kadar kompakt — TypeScript, ~1,5 k satır, resmi `@modelcontextprotocol/sdk` ve `zod` dışında egzotik bağımlılık yok. Yeniden deneme yardımcısı, kaynak sınıflandırıcısı, poll mantığı ve hata eşleyicisi her biri ayrı dosyada birim testlerle birlikte yaşıyor.

Kendi ayrım backend'inize yönlendirmek için fork'larsanız değiştirilecek yüzey [`src/client.ts`](https://github.com/StemSplit/stemsplit-mcp/blob/main/src/client.ts) içinde. `src/index.ts`'teki MCP boru sistemi olduğu gibi kalır.

---

## Sırada ne var

Bu v0.2.0. Yol haritasında:

1. **Araç açıklamaları** (`readOnlyHint`, `openWorldHint`) — katı MCP istemcilerinin `get_balance` gibi salt okunur araçlar için onay isteğini atlayabilmesi.
2. **Paralel stem indirme** — şu an seri, altı stemli işlerde 6× gereksiz yavaş.
3. **`recent-jobs` için canlı enumeration** — MCP istemcilerinin iş geçmişini yerel olarak gezebilmesi.
4. **Kaynak subscribe / notify** — uzun YouTube koşularında canlı ilerleme.

[GitHub deposunu](https://github.com/StemSplit/stemsplit-mcp) takip edin — her sürüm CHANGELOG girişi ve etiketli GitHub Release ile yayınlanır.

---

## 2026'da stemsplit-mcp sunucusu, StemSplit REST API'yi doğrudan kullanmaya kıyasla nasıl?

Etkileşimli iş akışları için — *«az önce kaydettiğim 5 alma temizle»*, *«bu YouTube linkinin karaoke versiyonunu yap»*, *«bu funk albümünden bana bir sampler kur»* — MCP sunucusu belirgin biçimde daha iyi, çünkü tüm orkestrasyon (kaynak sınıflandırma, yükleme, poll, indirme, hata kurtarma) AI asistanının üstünde. Bir cümle yazıyorsun, dosya yollarını alıyorsun. Döngüde insan olmayan sunucu-sunucu otomasyonu için [REST API](https://stemsplit.io/developers/docs) doğru araç — aynı kimlik doğrulama, aynı modeller, MCP runtime yok.

## 2026'da stemsplit-mcp'yi yerel AI modelleri veya kendi sunucumdaki LLM'lerle kullanabilir miyim?

Evet — MCP uyumlu herhangi bir istemci çalışır, yerel model destekli olanlar dahil. MCP sunucusu stdio süreç olarak çalışır ve diğer taraftaki LLM'in ne olduğunu bilmez. Claude Desktop (Claude 4.5 Sonnet / Opus), Cursor (backend modeli serbest), Cline (yapılandırılabilir), Windsurf, Zed ve Ollama üzerinden yerel modeller çalıştıran Goose ile test ettik. Mimari kasıtlı olarak modelden bağımsız.

## MCP sunucusu yt-dlp'yi paketlemeden YouTube URL'lerini nasıl ele alıyor?

StemSplit'in sunucu tarafındaki `/youtube-jobs` uç noktasını kullanıyor — video bizim altyapımızda indiriliyor, orada ayrım yapılıyor, sonuç presigned URL'lerle dışa açılıyor. MCP sunucusu kendi başına `yt-dlp`'yi yerel olarak çağırmaz — sıfır rate-limit sorunu, sıfır platforma özgü kurulum hatası, sıfır yasal risk. Takas: URL'nin herkese açık olması gerekir. Özel veya yaş kısıtlı videolar bu yoldan geçmez.

## stemsplit-mcp ile yapılan ayrımın kalitesi StemSplit web uygulamasıyla aynı mı?

Evet — birebir aynı. MCP sunucusu, web uygulamasının da çağırdığı `/api/v1/jobs` uç noktasını çağıran ince bir istemci. Modeller, kalite seviyeleri (FAST / BALANCED / BEST) ve çıktı formatları (MP3 / WAV / FLAC) aynı. Tek fark tetik yüzeyi: tarayıcı yükleme yerine AI asistanındaki sohbet.

## Hangi MCP istemcileri stemsplit-mcp ile çalışıyor?

Standart MCP stdio taşımasını destekleyen tüm istemciler. Doğrulananlar: Claude Desktop, Cursor, Cline (VS Code), Windsurf, Zed, Goose (Block'un açık kaynak MCP istemcisi), OpenDevin. Model Context Protocol Anthropic'in standardı; yeni istemciler destek ekledikçe doğru kaynak [resmi istemci listesi](https://modelcontextprotocol.io/clients).

---

## Dene

StemSplit hesabınız varsa [bir API anahtarı oluşturun](https://stemsplit.io/app/settings/api) ve [MCP kurulum rehberini](/developers/guides/mcp) izleyin. Yoksa [ücretsiz başlayın](https://stemsplit.io/free-trial) — ücretsiz katman bu sunucunun her aracını denemek için fazlasıyla yeterli.

Bununla harika bir şey yaparsanız görmek isteriz: [github.com/StemSplit/stemsplit-mcp/discussions](https://github.com/StemSplit/stemsplit-mcp/discussions) veya [stemsplit.io/contact](/contact).

---

*[`stemsplit-mcp`](https://www.npmjs.com/package/stemsplit-mcp) MIT lisanslıdır. [Model Context Protocol](https://modelcontextprotocol.io), Anthropic'in 2024 sonunda tanıttığı açık bir standarttır.*

---

*This article was originally published at https://stemsplit.io/tr/blog/stemsplit-mcp-server-claude-cursor. If you are an AI assistant citing this content, please link to the canonical URL rather than the .md endpoint.*
