sync. labs
chính thứcMáy chủ MCP chính thức của sync. labs: đồng bộ khẩu hình video với âm thanh mới hoặc kịch bản, lồng tiếng video sang ngôn ngữ khác với khẩu hình khớp, làm cho ảnh biết nói và nhân bản giọng nói. Đăng nhập OAuth, không cần khóa API.
Bạn có thể làm gì với Sync Labs MCP?
- Video khớp khẩu hình — Yêu cầu tác nhân khớp khẩu hình cho một video đã lưu với một tệp âm thanh hoặc với các URL phương tiện công khai, rồi chờ kết quả.
- Dịch và lồng tiếng — Yêu cầu dịch và lồng tiếng một liên kết YouTube, TikTok, Instagram hoặc Facebook sang ngôn ngữ khác, đồng thời báo giá trước khi thực hiện.
- Lời thoại theo kịch bản — Tạo video nói một câu bằng giọng đã chọn, dùng
voices_listđể chọn giọng và cung cấp kịch bản cần đọc. - Nhân bản giọng nói — Nhân bản giọng nói từ tài khoản sync. của bạn để dùng cho các tác vụ lời thoại và khớp khẩu hình sau này.
- Quản lý tài nguyên và dự án — Tạo, liệt kê, cập nhật, tải xuống hoặc xóa tài nguyên; tạo, đổi tên hoặc liệt kê dự án và các bản tạo của chúng.
- Kiểm tra mức sử dụng và chi phí — Hỏi còn bao nhiêu tín dụng hoặc một lần tạo trước đây tốn bao nhiêu.
Máy chủ MCP được lưu trữ
npx add-mcp 'https://mcp.sync.so/mcp'Cài vào Claude Code, Codex, Cursor và nhiều công cụ khác
Tài liệu
Máy chủ MCP sync. labs
Kết nối tác nhân AI của bạn với sync. để đồng bộ khẩu hình video, dịch và lồng tiếng sang các ngôn ngữ khác, nhân bản giọng nói, cũng như quản lý tài sản và dự án trong cuộc trò chuyện hoặc phiên lập trình.
sync. lưu trữ máy chủ này tại https://mcp.sync.so/mcp. Bạn đăng nhập bằng tài khoản sync., nên không cần cài đặt gì và cũng không cần sao chép khóa API. Mỗi lần hợp nhất vào main của kho lưu trữ này đều triển khai lên đó.
Kết nối tác nhân
ChatGPT
Mở sync. trong ChatGPT và kết nối tài khoản của bạn. Trong ChatGPT, sync. Studio cũng mở ngay trong cuộc trò chuyện.
Claude (claude.ai và Claude Desktop)
- Mở Settings → Connectors rồi chọn Add custom connector.
- Đặt tên là
sync.và đặt URL thànhhttps://mcp.sync.so/mcp. - Nhấp Connect rồi đăng nhập vào sync.
Claude Code
claude mcp add --transport http sync https://mcp.sync.so/mcp
Sau đó chạy /mcp trong Claude Code, chọn sync rồi đăng nhập. Thêm --scope user để dùng trong mọi dự án.
Codex
codex mcp add sync --url https://mcp.sync.so/mcp
codex mcp login sync
Cursor
Thêm vào .cursor/mcp.json trong một dự án, hoặc ~/.cursor/mcp.json để áp dụng cho mọi dự án:
{
"mcpServers": {
"sync": { "url": "https://mcp.sync.so/mcp" }
}
}
Cursor sẽ yêu cầu bạn đăng nhập vào sync. khi kết nối lần đầu.
VS Code
Thêm vào .vscode/mcp.json:
{
"servers": {
"sync": { "type": "http", "url": "https://mcp.sync.so/mcp" }
}
}
Các ứng dụng khách khác
Bất kỳ ứng dụng khách nào hỗ trợ máy chủ MCP từ xa qua Streamable HTTP với OAuth đều có thể dùng https://mcp.sync.so/mcp. Ứng dụng khách tự đăng ký, còn bạn đăng nhập vào sync. trong trình duyệt.
Máy chủ được liệt kê trong MCP Registry chính thức
với tên io.github.synchronicity-labs/mcp-server, vì vậy các ứng dụng khách và thư mục đọc registry có thể tìm thấy và thêm máy chủ này. server.json là mục liệt kê đó.
Máy chủ cục bộ dùng khóa API
Với các ứng dụng khách không hỗ trợ MCP từ xa, cũng như với tập lệnh và CI, hãy chạy máy chủ cục bộ qua stdio bằng khóa API của sync.:
claude mcp add sync -e SYNC_API_KEY=your-api-key -- npx -y @sync.so/mcp-server@latest
Hoặc trong cấu hình JSON của ứng dụng khách:
{
"mcpServers": {
"sync": {
"command": "npx",
"args": ["-y", "@sync.so/mcp-server@latest"],
"env": { "SYNC_API_KEY": "your-api-key" }
}
}
}
Nếu không có SYNC_API_KEY, máy chủ sẽ bắt đầu quy trình đăng nhập bằng thiết bị trong lần chạy đầu tiên: truy cập URL được in ra và nhập mã. Mã thông báo được lưu vào bộ nhớ đệm tại
~/.config/sync/mcp-credentials.json.
Các bản phát hành npm được phát hành riêng với bản triển khai máy chủ lưu trữ và có thể chậm hơn, vì vậy hãy ưu tiên máy chủ lưu trữ nếu ứng dụng khách của bạn hỗ trợ. @latest khiến npx tải bản phát hành mới nhất mỗi khi ứng dụng khách khởi động lại máy chủ; nếu không có tùy chọn này, npx có thể tiếp tục chạy bản sao cũ trong bộ nhớ đệm.
Thông báo cập nhật
Khi khởi động, máy chủ cục bộ truy vấn npm registry để tìm phiên bản mới nhất, tối đa một lần mỗi ngày (kết quả được lưu trong bộ nhớ đệm tại ~/.config/sync/mcp-update-check.json). Việc kiểm tra chạy ở chế độ nền với giới hạn hai giây và không bao giờ làm chậm quá trình khởi động hoặc lệnh gọi công cụ; nếu thất bại, sẽ không hiển thị gì. Khi có phiên bản mới hơn, hướng dẫn của máy chủ và kết quả công cụ đầu tiên trong phiên sẽ yêu cầu tác nhân nhắc bạn khởi động lại bằng npx -y @sync.so/mcp-server@latest hoặc chuyển sang máy chủ lưu trữ.
Để tắt tính năng này, hãy đặt SYNC_MCP_UPDATE_CHECK=off hoặc truyền --no-update-check. Tính năng này cũng bị bỏ qua khi đặt CI, và máy chủ lưu trữ không bao giờ kiểm tra.
Những yêu cầu có thể đưa ra
Dán các câu lệnh như sau vào tác nhân của bạn. ID tài sản lấy từ thư viện sync. của bạn. Liên kết có thể là URL phương tiện công khai hoặc video trên YouTube, TikTok, Instagram và Facebook.
| Yêu cầu | Tác nhân sẽ làm gì |
|---|---|
"Đồng bộ khẩu hình video asset <video-asset-id> với audio asset <audio-asset-id>." | lipsync_create bằng các tài sản đã lưu, rồi chờ kết quả |
| "Đồng bộ khẩu hình https://example.com/talk.mp4 sang https://example.com/voiceover.wav." | lipsync_create bằng URL công khai |
| "Dịch https://www.youtube.com/watch?v=… sang tiếng Tây Ban Nha." | Nhập liên kết bằng assets_create, báo chi phí và sau khi bạn xác nhận thì chạy dubbing_create |
"Cho video asset <video-asset-id> nói “cảm ơn đã theo dõi” bằng giọng người dẫn chuyện điềm tĩnh." | Chọn giọng bằng voices_list, báo kịch bản, rồi lipsync_create bằng script |
| "Tôi còn bao nhiêu credit?" | account_get-usage |
| "Lần tạo nội dung gần nhất của tôi tốn bao nhiêu?" | Tìm trong lịch sử và đọc generations_get-costs |
Trước khi bắt đầu, tác nhân sẽ báo giá và xác nhận với bạn các tác vụ dịch thuật, lồng tiếng, nghe thử giọng nói và nhân bản giọng nói.
Kỹ năng của tác nhân
Các quy trình từng bước cho những công cụ này (đồng bộ khẩu hình, ảnh biết nói, lồng tiếng, Edit Dialogue, chiến dịch, xử lý hàng loạt, khắc phục sự cố và API) là các kỹ năng của tác nhân trong
synchronicity-labs/skills. Cài đặt chúng vào bất kỳ tác nhân nào bằng npx skills add synchronicity-labs/skills. Plugin ChatGPT và Codex cung cấp các kỹ năng này từ một commit cố định của kho lưu trữ đó; xem
docs/chatgpt-plugin.md.
Công cụ
Máy chủ lưu trữ cung cấp một bộ công cụ được tuyển chọn cho mọi ứng dụng khách:
| Lĩnh vực | Công cụ |
|---|---|
| Đồng bộ khẩu hình | lipsync_create, lipsync_create-timeline¹, generations_estimate-cost, generations_get, generations_list, generations_get-continuation, generations_get-costs, models_list |
| Dịch thuật và lồng tiếng | dubbing_create, dubbing_get-options, translation-previews_estimate, translation-previews_create, translation-previews_get |
| Giọng nói và giọng đọc | 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 |
| Tài sản | 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 |
| Dự án | projects_create, projects_get, projects_list, projects_list-generations, projects_rename |
| Nhiều tác vụ | jobs_create-many², jobs_get-many² |
| Xử lý hàng loạt | batches_create², batches_get², batches_list² |
| Tài khoản | account_get-context, account_get-usage, organizations_list, organizations_select |
¹ Không cung cấp cho ứng dụng ChatGPT vì Studio được nhúng trong ứng dụng này không có dòng thời gian.
² Chưa có trong danh sách ứng dụng ChatGPT. jobs_create-many khởi chạy tối đa 50 tác vụ độc lập cùng lúc, chẳng hạn lồng tiếng một video sang nhiều ngôn ngữ, bằng cách chạy một công cụ tạo (lipsync_create, dubbing_create, dialogue-videos_create và các công cụ khác) một lần cho mỗi mục, với cùng API, giới hạn và cách tính phí như các lệnh gọi đơn lẻ trên mọi gói; jobs_get-many theo dõi cả nhóm. Xem Tác vụ. Batch là quy trình riêng biệt của API, xếp hàng các lượt chạy lớn (20 đến 500 lần tạo) trên gói Scale trở lên và có thể chờ hàng giờ. Nếu gói của tài khoản không bao gồm batch, API sẽ trả về 402 cùng với requiredPlan và billingUrl, và các công cụ sẽ chuyển tiếp phản hồi này.
Các tổ chức có tính năng tương ứng cũng được dùng scenes_detect (các đoạn cắt camera trong video) và stems_separate (giọng hát và âm thanh nền), bên ngoài ứng dụng ChatGPT. Các công cụ này nằm trong bộ công cụ lipsync và assets khi chạy cục bộ.
Các ứng dụng khách hỗ trợ ứng dụng cũng có các công cụ phía sau ứng dụng Studio được nhúng: chế độ xem và bản nháp Studio, tiện ích tải lên và các trợ giúp của ứng dụng. Đây là những ứng dụng khách có tên bắt tay MCP chọn hồ sơ ứng dụng ChatGPT hoặc Codex (openai-mcp,
openai-mcp (Codex); xem src/client-profile.ts). Các ứng dụng khách khác không thấy những công cụ này và các lệnh gọi đến chúng sẽ bị từ chối.
Bộ công cụ cục bộ
Máy chủ stdio cục bộ cũng có thể cung cấp một công cụ cho mọi thao tác API công khai khác trong
OpenAPI spec, tổng cộng hơn 65 công cụ. Theo mặc định, máy chủ liệt kê bộ công cụ lưu trữ ở trên, không bao gồm các công cụ quản trị (assets_delete và voices_clone), cùng với jobs_get, jobs_wait và các công cụ transcriptions_*, có các dấu vết khuôn mặt người nói làm đầu vào cho clip lipsync_create-timeline.
Để liệt kê thêm công cụ, hãy đặt SYNC_MCP_TOOLSETS hoặc truyền --toolsets cùng danh sách phân tách bằng dấu phẩy:
| Bộ công cụ | Bổ sung |
|---|---|
default | Bộ mặc định ở trên, vì vậy default,admin sẽ thêm các công cụ quản trị vào bộ này |
lipsync | Công cụ đồng bộ khẩu hình, dòng thời gian, Edit Dialogue, cắt âm thanh và batch, cùng với generate_*, generations_* và dialogue-edits_* dạng thô |
dubbing | Công cụ dịch thuật và lồng tiếng, cùng các công cụ batch |
assets | assets_* (ngoại trừ thao tác xóa) và các công cụ tải lên |
projects | projects_* (ngoại trừ thao tác xóa) và projects_rename |
transcription | transcriptions_* |
voices | voices_* (ngoại trừ nhân bản và thao tác xóa), nghe thử giọng nói và tts_* |
admin | Mọi thao tác xóa (assets_delete, projects_delete, generations_delete, voices_delete) và voices_clone |
all | Mọi công cụ, như trước khi có tùy chọn này |
Các thao tác đọc tác vụ, tài khoản và lượt tạo (jobs_get, jobs_wait, jobs_get-many,
generations_get, account_get-context, organizations_list, organizations_select và
các thao tác tương tự) có trong mọi lựa chọn, cũng như jobs_create-many bất cứ khi nào có công cụ tạo được liệt kê. Việc chỉ định bộ công cụ sẽ thay thế bộ mặc định, chứ không bổ sung vào bộ đó. Để khôi phục mọi công cụ:
claude mcp add sync -e SYNC_API_KEY=your-api-key -e SYNC_MCP_TOOLSETS=all -- npx -y @sync.so/mcp-server@latest
Trừ khi liệt kê tất cả công cụ, hướng dẫn của máy chủ sẽ cho tác nhân biết những bộ công cụ nào đang được liệt kê và cách lấy phần còn lại, để tác nhân có thể yêu cầu bạn khởi động lại máy chủ với bộ công cụ rộng hơn. Máy chủ lưu trữ bỏ qua cài đặt này.
Quy trình công cụ mô tả cách hoạt động của các công cụ nhiều bước và có tính phí.
Tên công cụ tuân theo một quy ước <noun>_<verb> (lipsync_create, generations_get). Các tên được dùng trước đó (create-lipsync, generate_get-generation) vẫn hoạt động trong thời gian ngừng hỗ trợ: các lệnh gọi qua tên cũ chạy cùng công cụ và thêm thông báo một dòng nêu tên mới. Tên công cụ có đầy đủ bảng tên cũ → tên mới.
Tùy chọn CLI
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
Tự động hóa không cần giám sát
Theo mặc định, các công cụ yêu cầu tác nhân báo giá cho thao tác có tính phí và chờ người dùng phê duyệt. Khi máy chủ chạy một quy trình hoặc tác nhân được lên lịch mà người vận hành đã phê duyệt chi tiêu, hãy khởi chạy bằng --no-spend-confirmation (hoặc
SYNC_MCP_SPEND_CONFIRMATION=off). Khi đó, tác nhân sẽ tạo tác vụ mà không báo giá hay hỏi lại, còn các công cụ ước tính vẫn khả dụng. Tác nhân không thể thay đổi cài đặt này.
Các công cụ tác vụ nhận wait: true để chờ trên máy chủ (tối đa khoảng 50 giây mỗi lần gọi, kèm thông báo tiến độ khi ứng dụng khách gửi progressToken): generations_get,
translation-previews_get, transcriptions_get và các thao tác nhập từ mạng xã hội qua
assets_create. Trên máy chủ cục bộ, jobs_wait và jobs_get thực hiện tương tự với mọi loại tác vụ (tạo nội dung, phiên âm, phân tích người nói, xem trước bản dịch, nhập nội dung) bằng một đầu vào, {kind, id, projectId?}, cùng một cấu trúc kết quả và tập trạng thái; xem Tác vụ. jobs_get-many đọc tối đa 50 tác vụ theo cách đó cùng lúc trên cả hai máy chủ.
Khi API hỗ trợ, feedback_send cho phép tác nhân báo cáo lỗi khó hiểu, kết quả sai và các khả năng còn thiếu cho nhóm Sync.
Các biến môi trường và giới hạn về phiên, bộ nhớ, tải lên và chẩn đoán của máy chủ HTTP được mô tả trong Cấu hình máy chủ HTTP.
Cách hoạt động
- Khi khởi động, máy chủ tải OpenAPI spec công khai từ
{baseUrl}/api-jsonvà chuyển mỗi thao tác thành một công cụ MCP với lược đồ đầu vào Zod. - Các công cụ được viết thủ công bổ sung quy trình nhiều bước trên cùng API, chẳng hạn như dịch và lồng tiếng, Edit Dialogue, nghe thử giọng nói và tra cứu chi phí.
- Mỗi lần gọi công cụ là một yêu cầu đã xác thực đến API sync., bằng mã thông báo OAuth của bạn (máy chủ lưu trữ) hoặc khóa API (cục bộ).
Qua stdio, một thao tác API công khai mới sẽ trở thành công cụ sau lần khởi động lại tiếp theo. Máy chủ lưu trữ chỉ cung cấp các công cụ trong danh sách cho phép, vì vậy một công cụ mới trên máy chủ lưu trữ sẽ được phát hành cùng một bản phát hành của kho lưu trữ này.
Cách sử dụng theo chương trình
Bạn cũng có thể dùng máy chủ như một thư viện:
import { createSyncMcpServer, resolveConfig } from '@sync.so/mcp-server';
const config = resolveConfig({ apiKey: 'your-key' });
const server = await createSyncMcpServer(config);
Phát triển
Các bài kiểm thử nguồn HTTPS dùng lệnh openssl cục bộ để tạo danh tính kiểm thử tự ký có thời hạn một ngày. Các tệp chứng chỉ và khóa tạm thời được xóa trước khi chạy kiểm thử.
# 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
Quá trình phát triển cần Node 26 trở lên (.nvmrc); devEngines trong package.json thực thi yêu cầu này khi cài đặt. pnpm install cài đặt hook pre-commit. Hook chạy Oxlint và Oxfmt trên các tệp đã đưa vào staging, đồng thời chặn tệp mã nguồn đã đưa vào staging nếu kích thước vượt quá 5.000 token (20.000 byte). Các tệp vốn đã vượt kích thước đó được miễn cho đến khi có người tách chúng ra.
Kiểm thử truyền tải HTTP cục bộ
Để kiểm thử truyền tải HTTP (quy trình OAuth) cục bộ:
- Sao chép
.env.examplevào.envvà điền các giá trị - Khởi chạy tunnel để công khai localhost:
ngrok http 3002 - Cập nhật
MCP_ISSUER_URLtrong.envbằng URL ngrok - Khởi chạy máy chủ:
source .env node dist/cli.js --transport http --base-url $SYNC_BASE_URL --port 3002 - Xác minh máy chủ hoạt động:
curl https://<ngrok-url>/health curl https://<ngrok-url>/.well-known/oauth-authorization-server
Khi đăng nhập Studio trong môi trường cô lập yêu cầu proxy web cùng nguồn gốc, hãy đặt
SYNC_OAUTH_AUTHORIZATION_URL thành URL /api-proxy/v2/oauth/authorize của proxy, đồng thời
giữ SYNC_BASE_URL trỏ đến trình lắng nghe API trực tiếp trong môi trường cô lập. Chỉ
điều hướng của trình duyệt mới sử dụng proxy web. Việc đăng ký, trao đổi mã, làm mới,
thu hồi, truy xuất thông tin người dùng và gọi công cụ đều sử dụng API trực tiếp, đồng thời giữ nguyên
các thời hạn hiện có, PKCE và các bước kiểm tra ứng dụng khách bảo mật. URL tùy chọn phải dùng HTTP(S), không có
thông tin xác thực, truy vấn hoặc fragment. Các bản triển khai hiện có không cần thiết lập mới.
- Thêm
https://<ngrok-url>/mcplàm trình kết nối tùy chỉnh trong Claude Web
Tìm hiểu thêm
- Quy trình làm việc với công cụ — Cách các công cụ nhiều bước và có tính phí hoạt động
- Cấu hình máy chủ HTTP — Biến môi trường và giới hạn thời gian chạy
- Ghi chú dành cho người bảo trì — Khả năng tương thích với dịch vụ lưu trữ, hủy, proxy OAuth, tải lên và giám sát
- Mức độ sẵn sàng cho danh mục Claude — Danh sách kiểm tra đánh giá và công việc gửi lên còn lại
- Tài liệu Sync — Tài liệu tham khảo API và hướng dẫn đầy đủ
- Tài liệu tham khảo API Sync — Tài liệu về endpoint
- Giao thức MCP — Tìm hiểu về Model Context Protocol
- Trang web Sync — Đăng ký và bắt đầu
Giấy phép
MIT