sync. labs
resmiResmî sync. labs MCP sunucusu: videoları yeni ses veya bir senaryoyla dudak senkronizasyonu yapın, videoları dudak hareketleri eşleşecek şekilde başka dillere dublajlayın, fotoğrafları konuşturun ve sesleri klonlayın. OAuth ile oturum açın, API anahtarı gerekmez.
Sync Labs MCP ile neler yapabilirsiniz?
- Dudak senkronizasyonlu videolar — Aracıdan kayıtlı bir video varlığını bir ses varlığıyla veya herkese açık medya URL’leriyle dudak senkronizasyonu yapmasını isteyin ve sonucu bekleyin.
- Çeviri ve dublaj — Bir YouTube, TikTok, Instagram veya Facebook bağlantısının başka bir dile çevrilip dublajlanmasını sağlayın; işlem başlamadan önce maliyeti öğrenin.
- Metinle konuşma — Seçilen bir sesle videoya bir cümle söyletin; sesi seçmek için
voices_listkullanın ve metni belirtin. - Ses klonlama — Daha sonra konuşma ve dudak senkronizasyonu çalışmalarında kullanmak üzere sync. hesabınızdaki bir sesi klonlayın.
- Varlıkları ve projeleri yönetme — Varlık oluşturun, listeleyin, güncelleyin, indirin veya silin; ayrıca projeler ve bunların üretimlerini oluşturun, yeniden adlandırın veya listeleyin.
- Kullanımı ve maliyetleri kontrol etme — Kaç krediniz kaldığını veya geçmişteki bir üretimin ne kadara mal olduğunu sorun.
Barındırılan MCP Sunucusu
npx add-mcp 'https://mcp.sync.so/mcp'Claude Code, Codex, Cursor ve daha fazlasına kurulur
Dokümantasyon
sync. MCP sunucusu
Yapay zekâ aracınızı sync. ile bağlayarak videoları dudak senkronizasyonuna uygun hâle getirin, başka dillere çevirip dublajlayın, sesleri klonlayın ve sohbetten veya kodlama oturumundan varlıkları ve projeleri yönetin.
sync. bu sunucuyu https://mcp.sync.so/mcp adresinde barındırır. sync. hesabınızla oturum açarsınız; bu nedenle yüklemeniz gereken bir şey veya kopyalamanız gereken bir API anahtarı yoktur. Bu depoya yapılan her birleştirme, main adresine dağıtılır.
Aracınızı bağlayın
ChatGPT
sync. in ChatGPT sayfasını açın ve hesabınızı bağlayın. ChatGPT'de sync. Studio da sohbetin içinde açılır.
Claude (claude.ai ve Claude Desktop)
- Settings → Connectors bölümünü açın ve Add custom connector seçeneğini belirleyin.
- Adını
sync.olarak belirleyin ve URL'yihttps://mcp.sync.so/mcpolarak ayarlayın. - Connect'e tıklayın ve sync. hesabınızla oturum açın.
Claude Code
claude mcp add --transport http sync https://mcp.sync.so/mcp
Ardından Claude Code'da /mcp komutunu çalıştırın, sync seçeneğini belirleyin ve oturum açın. Her projede kullanmak için --scope user ekleyin.
Codex
codex mcp add sync --url https://mcp.sync.so/mcp
codex mcp login sync
Cursor
Bir projeye .cursor/mcp.json ekleyin veya tüm projeler için ~/.cursor/mcp.json ekleyin:
{
"mcpServers": {
"sync": { "url": "https://mcp.sync.so/mcp" }
}
}
Cursor, ilk bağlantı kurduğunda sync. hesabınızla oturum açmanızı ister.
VS Code
.vscode/mcp.json dosyasına ekleyin:
{
"servers": {
"sync": { "type": "http", "url": "https://mcp.sync.so/mcp" }
}
}
Diğer istemciler
OAuth ile Streamable HTTP üzerinden uzak MCP sunucularını destekleyen tüm istemciler https://mcp.sync.so/mcp kullanabilir. İstemci kendini kaydeder, siz de tarayıcıda sync. hesabınızla oturum açarsınız.
Sunucu, resmî MCP Registry içinde io.github.synchronicity-labs/mcp-server olarak listelenir; bu nedenle kayıt defterini okuyan istemciler ve dizinler sunucuyu bulup ekleyebilir. server.json bu listeyi gösterir.
API anahtarıyla yerel sunucu
Uzak MCP desteği olmayan istemciler, betikler ve CI için sunucuyu sync. API key ile stdio üzerinden yerel olarak çalıştırın:
claude mcp add sync -e SYNC_API_KEY=your-api-key -- npx -y @sync.so/mcp-server@latest
Ya da bir istemcinin JSON yapılandırmasında:
{
"mcpServers": {
"sync": {
"command": "npx",
"args": ["-y", "@sync.so/mcp-server@latest"],
"env": { "SYNC_API_KEY": "your-api-key" }
}
}
}
SYNC_API_KEY olmadan sunucu, ilk çalıştırmada cihazla oturum açma işlemini başlatır: yazdırdığı URL'yi ziyaret edin ve kodu girin. Belirteç ~/.config/sync/mcp-credentials.json konumunda önbelleğe alınır.
npm sürümleri barındırılan dağıtımdan ayrı yayımlanır ve geride kalabilir; bu nedenle istemciniz destekliyorsa barındırılan sunucuyu tercih edin. @latest, istemci sunucuyu yeniden başlattığında npx'in en yeni sürümü getirmesini sağlar; bu seçenek olmadan npx eski bir önbellek kopyasını çalıştırmaya devam edebilir.
Güncelleme bildirimi
Başlangıçta yerel sunucu, npm kayıt defterinden en yeni sürümü günde en fazla bir kez sorgular (yanıt ~/.config/sync/mcp-update-check.json konumunda önbelleğe alınır). Denetim arka planda, iki saniyelik zaman aşımıyla çalışır ve başlangıcı veya araç çağrısını hiçbir zaman geciktirmez; başarısız olursa hiçbir şey gösterilmez. Daha yeni bir sürüm varsa sunucunun talimatları ve oturumun ilk araç sonucu, aracı yeniden başlatmanızı npx -y @sync.so/mcp-server@latest ile istemesini veya barındırılan sunucuya geçmenizi söyler.
Kapatmak için SYNC_MCP_UPDATE_CHECK=off ayarlayın veya --no-update-check iletin. CI ayarlandığında da bu denetim atlanır; barındırılan sunucu ise hiçbir zaman sürüm denetimi yapmaz.
Neler isteyebilirsiniz?
Aşağıdaki gibi istemleri aracınıza yapıştırın. Varlık kimliklerini sync. kitaplığınızda bulabilirsiniz. Bağlantılar herkese açık medya URL'leri veya YouTube, TikTok, Instagram ve Facebook videoları olabilir.
| İstek | Aracın yaptığı |
|---|---|
"Ses varlığı <video-asset-id> ile video varlığı <audio-asset-id> için dudak senkronizasyonu yap." | Kaydedilmiş varlıklarla lipsync_create işlemini başlatır, ardından sonucu bekler |
| "https://example.com/talk.mp4 için https://example.com/voiceover.wav. dilinde dudak senkronizasyonu yap" | Herkese açık URL'lerle lipsync_create işlemini başlatır |
| "https://www.youtube.com/watch?v=… içeriğini İspanyolcaya çevir." | Bağlantıyı assets_create ile içe aktarır, maliyeti belirtir ve onayınızdan sonra dubbing_create işlemini başlatır |
"Video varlığı <video-asset-id> sakin bir anlatıcı sesiyle “izlediğiniz için teşekkürler” desin." | voices_list ile bir ses seçer, metni belirtir ve ardından script ile lipsync_create işlemini başlatır |
| "Kaç kredim kaldı?" | account_get-usage |
| "Son üretimimin maliyeti ne kadardı?" | Geçmişte bulur ve generations_get-costs bilgisini okur |
Çeviri, dublaj, konuşma önizlemeleri ve ses klonları başlamadan önce fiyatlandırılır ve onayınız alınır.
Aracı becerileri
Bu araçlara yönelik adım adım iş akışları (dudak senkronizasyonu, konuşan fotoğraflar, dublaj, Edit Dialogue, kampanyalar, toplu işlemler, sorun giderme ve API) synchronicity-labs/skills deposunda aracı becerileri olarak bulunur. Bunları npx skills add synchronicity-labs/skills ile herhangi bir araca yükleyin. ChatGPT ve Codex eklentisi bu becerileri söz konusu deponun sabitlenmiş bir commit'inden sunar; bkz. docs/chatgpt-plugin.md.
Araçlar
Barındırılan sunucu, her istemciye seçilmiş bir araç kümesi sunar:
| Alan | Araçlar |
|---|---|
| Dudak senkronizasyonu | lipsync_create, lipsync_create-timeline¹, generations_estimate-cost, generations_get, generations_list, generations_get-continuation, generations_get-costs, models_list |
| Çeviri ve dublaj | dubbing_create, dubbing_get-options, translation-previews_estimate, translation-previews_create, translation-previews_get |
| Konuşma ve sesler | speech-previews_create, speech-previews_get-options, speech-previews_get, voices_list, voices_clone |
| Edit Dialogue | dialogue_get-options, dialogue_upload-source, dialogue-transcriptions_create, dialogue-transcriptions_get, dialogue-previews_create, dialogue-previews_get, dialogue-videos_estimate, dialogue-videos_create |
| Varlıklar | assets_create, assets_create-upload-url, assets_get, assets_list, assets_count, assets_get-download-url, assets_update, assets_delete, assets_get-playback-metadata, audio-trims_get, audio-trims_create |
| Projeler | projects_create, projects_get, projects_list, projects_list-generations, projects_rename |
| Çok sayıda iş | jobs_create-many², jobs_get-many² |
| Toplu işlemler | batches_create², batches_get², batches_list² |
| Hesap | account_get-context, account_get-usage, organizations_list, organizations_select |
¹ Zaman çizelgesi olmayan yerleşik Studio uygulamasında sunulmadığından ChatGPT uygulamasında bulunmaz.
² Henüz ChatGPT uygulaması listesinde yoktur. jobs_create-many, aynı API'yi, sınırları ve faturalandırmayı kullanarak her öğe için bir oluşturma aracını (lipsync_create, dubbing_create, dialogue-videos_create ve diğerleri) bir kez çalıştırıp aynı anda 50'ye kadar bağımsız iş başlatır; örneğin tek bir videoyu birkaç dile dublajlar. jobs_get-many bu işleri takip eder. Bkz. Jobs. Toplu işlem, Scale planlarında ve üzerindeki planlarda büyük çalıştırmalar (20 ila 500 üretim) için API'nin ayrı kuyruğa alınan işlem hattıdır ve saatlerce bekleyebilir. Hesap planında toplu işlem yoksa API, araçların ilettiği requiredPlan ve billingUrl ile 402 yanıtı verir.
İlgili özelliğe sahip kuruluşlar ayrıca (videodaki kamera kesitleri) scenes_detect ve (vokaller ile arka plan sesi) stems_separate araçlarını da alır; bunlar ChatGPT uygulamasında bulunmaz. Yerel olarak lipsync ve assets araç kümelerinde yer alırlar.
Uygulama desteği olan istemciler, yerleşik Studio uygulamasının arkasındaki araçları da alır: Studio görünümleri ve taslakları, yükleme bileşeni ve uygulama yardımcıları. Bunlar, MCP el sıkışma adı ChatGPT veya Codex uygulama profilini seçen istemcilerdir (openai-mcp, openai-mcp (Codex); bkz. src/client-profile.ts). Diğer istemciler bu araçları görmez ve bu araçlara yaptıkları çağrılar reddedilir.
Yerel araç kümeleri
Yerel stdio sunucusu, OpenAPI spec içindeki diğer tüm herkese açık API işlemleri için de bir araç sunabilir; toplamda 65'ten fazla araç vardır. Varsayılan olarak yukarıdaki barındırılan araç kümesini, yönetim araçları (assets_delete ve voices_clone) hariç, ayrıca jobs_get, jobs_wait ve konuşmacı yüzü izleri lipsync_create-timeline kliplerini besleyen transcriptions_* araçlarını listeler.
Daha fazlasını listelemek için SYNC_MCP_TOOLSETS ayarlayın veya virgülle ayrılmış bir listeyle --toolsets iletin:
| Araç kümesi | Ekledikleri |
|---|---|
default | Yukarıdaki varsayılan küme; dolayısıyla default,admin yönetim araçlarını bu kümeye ekler |
lipsync | Dudak senkronizasyonu, zaman çizelgesi, Edit Dialogue, ses kırpma ve toplu işlem araçlarının yanı sıra ham generate_*, generations_* ve dialogue-edits_* |
dubbing | Çeviri ve dublaj araçları ile toplu işlem araçları |
assets | assets_* (silme işlemleri hariç) ve yükleme araçları |
projects | projects_* (silme işlemleri hariç) ve projects_rename |
transcription | transcriptions_* |
voices | voices_* (klonlama ve silme işlemleri hariç), konuşma önizlemeleri ve tts_* |
admin | Tüm silme işlemleri (assets_delete, projects_delete, generations_delete, voices_delete) ve voices_clone |
all | Bu seçenek yokken olduğu gibi tüm araçlar |
İş, hesap ve üretim okumaları (jobs_get, jobs_wait, jobs_get-many,
generations_get, account_get-context, organizations_list, organizations_select ve
benzerleri) her seçime dahildir; çalıştırdığı bir oluşturma aracı listelendiğinde jobs_create-many da dahildir. Araç kümelerini adlandırmak, varsayılan kümeye ekleme yapmak yerine onun yerini alır. Tüm araçları yeniden almak için:
claude mcp add sync -e SYNC_API_KEY=your-api-key -e SYNC_MCP_TOOLSETS=all -- npx -y @sync.so/mcp-server@latest
Tüm araçları listelemediği sürece sunucunun talimatları, hangi araç kümelerinin listelendiğini ve geri kalanların nasıl alınacağını araca bildirir; böylece araç, sunucuyu daha geniş bir kümeyle yeniden başlatmanızı isteyebilir. Barındırılan sunucu bu ayarı yok sayar.
Tool workflows, çok adımlı ve ücretli araçların nasıl çalıştığını açıklar.
Araç adları tek bir <noun>_<verb> düzenini izler (lipsync_create, generations_get). Önceden kullanılan adlar (create-lipsync, generate_get-generation) kullanımdan kaldırma süresi boyunca çalışmaya devam eder: bu adlarla yapılan çağrılar aynı aracı çalıştırır ve yeni adı belirten tek satırlık bir bildirim ekler. Tool names tüm eski → yeni ad eşleştirmelerini içerir.
CLI Seçenekleri
Usage: sync-mcp [options]
Options:
--api-key <key> API key (or set SYNC_API_KEY env var)
--base-url <url> API base URL (default: https://api.sync.so)
--transport <type> stdio (default) or http
--port <port> HTTP port (default: 3002, only with --transport http)
--no-spend-confirmation
Unattended automation: drop the cost-quote and confirm-before-paying
instructions (or set SYNC_MCP_SPEND_CONFIRMATION=off)
--no-update-check Skip the daily npm check for a newer version (or set
SYNC_MCP_UPDATE_CHECK=off; skipped when CI is set)
--toolsets <list> stdio only: comma-separated tools to list (or set SYNC_MCP_TOOLSETS):
default, lipsync, dubbing, assets, projects, transcription,
voices, admin or all (default: the hosted set without admin)
-h, --help Show this help message
Gözetimsiz otomasyon
Varsayılan olarak araçlar, aracı ücretli bir işlem için fiyat teklifi vermeye ve kullanıcının onayını beklemeye yönlendirir. Sunucu, harcama için operatörün önceden onay verdiği bir işlem hattı veya zamanlanmış aracı çalıştırdığında --no-spend-confirmation (veya SYNC_MCP_SPEND_CONFIRMATION=off) ile başlatın. Böylece araç, fiyat teklifi vermeden veya sormadan işler oluşturur; tahmin araçları kullanılabilir durumda kalır. Araçlar bu ayarı değiştiremez.
İş araçları, sunucuda beklemek için wait: true değerini alır (istemci bir progressToken gönderdiğinde ilerleme bildirimleriyle, çağrı başına yaklaşık 50 saniyeye kadar): generations_get, translation-previews_get, transcriptions_get ve assets_create üzerinden sosyal medya içe aktarımları. Yerel sunucuda jobs_wait ve jobs_get, tek bir girdi olan {kind, id, projectId?} ile her tür işte (üretim, transkripsiyon, konuşmacı analizi, çeviri önizlemesi, içe aktarma) aynı işlemi yapar ve aynı sonuç biçimini ve durum kümesini kullanır; bkz. Jobs. jobs_get-many, her iki sunucuda da aynı şekilde en fazla 50 işi aynı anda okur.
API desteklediğinde feedback_send, araçların kafa karıştırıcı hataları, yanlış sonuçları ve eksik özellikleri Sync ekibine bildirmesini sağlar.
Ortam değişkenleri ile HTTP sunucusunun oturum, bellek, yükleme ve tanılama sınırları HTTP server configuration bölümünde açıklanır.
Nasıl Çalışır?
- Sunucu başlangıçta herkese açık OpenAPI tanımını
{baseUrl}/api-jsonadresinden alır ve her işlemi Zod girdi şemasına sahip bir MCP aracına dönüştürür. - Elle yazılmış araçlar, çeviri ve dublaj, Edit Dialogue, konuşma önizlemeleri ve maliyet sorguları gibi aynı API'yi kullanan çok adımlı iş akışları ekler.
- Her araç çağrısı, OAuth belirtecinizle (barındırılan sunucuda) veya API anahtarınızla (yerel sunucuda) yapılan kimliği doğrulanmış bir sync. API isteğidir.
stdio üzerinden, herkese açık yeni bir API işlemi bir sonraki yeniden başlatmada araca dönüşür. Barındırılan sunucu yalnızca izin listesindeki araçları sunar; bu nedenle barındırılan yeni bir araç, bu deponun bir sürümüyle yayımlanır.
Programatik Kullanım
Sunucuyu bir kitaplık olarak da kullanabilirsiniz:
import { createSyncMcpServer, resolveConfig } from '@sync.so/mcp-server';
const config = resolveConfig({ apiKey: 'your-key' });
const server = await createSyncMcpServer(config);
Geliştirme
HTTPS kaynak testleri, bir günlük, kendinden imzalı test kimliği oluşturmak için yerel openssl komutunu kullanır. Testler çalıştırılmadan önce geçici sertifika ve anahtar dosyaları kaldırılır.
# Install dependencies
pnpm install
# Build
pnpm run build
# Run tests
pnpm test
# Lint
pnpm run lint
# Type check
pnpm run typecheck
# Script tests (monitor, smoke check, pre-commit size check)
pnpm run test:scripts
Geliştirme için Node 26 veya daha yenisi gerekir (.nvmrc); yükleme sırasında devEngines, package.json sürümünü zorunlu kılar. pnpm install bir pre-commit kancası yükler. Bu kanca, hazırlama alanındaki dosyalarda Oxlint ve Oxfmt çalıştırır ve 5.000 belirteci (20.000 bayt) aşan hazırlama alanındaki kaynak dosyaları engeller. Bu boyutu zaten aşan dosyalar, biri onları bölene kadar bu denetimden muaftır.
Yerel HTTP Aktarımını Test Etme
HTTP aktarımını (OAuth akışını) yerel olarak test etmek için:
.env.exampledosyasını.envkonumuna kopyalayın ve değerleri doldurun- localhost adresini dışarı açmak için bir tünel başlatın:
ngrok http 3002 - ngrok URL’siyle
.enviçindekiMCP_ISSUER_URLdeğerini güncelleyin - Sunucuyu başlatın:
source .env node dist/cli.js --transport http --base-url $SYNC_BASE_URL --port 3002 - Çalıştığını doğrulayın:
curl https://<ngrok-url>/health curl https://<ngrok-url>/.well-known/oauth-authorization-server
Yalıtılmış bir Studio oturum açma işlemi aynı kaynaklı web proxy’si gerektiriyorsa,
SYNC_OAUTH_AUTHORIZATION_URL değerini bu proxy’nin /api-proxy/v2/oauth/authorize URL’sine ayarlayın ve
SYNC_BASE_URL değerini doğrudan yalıtılmış API dinleyicisinde bırakın. Yalnızca tarayıcı
gezintisi web proxy’sini kullanır. Kayıt, kod değişimi, yenileme, iptal,
userinfo ve araç çağrıları doğrudan API’yi kullanır ve mevcut zaman aşımlarını,
PKCE ve gizli istemci denetimlerini korur. İsteğe bağlı URL HTTP(S) kullanmalı; kimlik bilgisi,
sorgu veya parça içermemelidir. Mevcut dağıtımlar için yeni bir ayar gerekmez.
https://<ngrok-url>/mcpöğesini Claude Web içinde özel bağlayıcı olarak ekleyin
Daha Fazla Bilgi
- Araç iş akışları — Çok adımlı ve ücretli araçların nasıl çalıştığı
- HTTP sunucu yapılandırması — Ortam değişkenleri ve çalışma zamanı sınırları
- Bakımcı notları — Barındırılan uyumluluk, iptal, OAuth proxy’si, yüklemeler ve izleme
- Claude dizini hazırlığı — İnceleme kontrol listesi ve gönderim için kalan işler
- Sync Documentation — Eksiksiz API başvurusu ve kılavuzlar
- Sync API Reference — Uç nokta belgeleri
- MCP Protocol — Model Context Protocol hakkında bilgi edinin
- Sync Website — Kaydolun ve kullanmaya başlayın
Lisans
MIT