Collega un assistente AI con MCP
Installa il server MCP locale di CaptionBolt, accedi nel browser e chiedi al tuo assistente di sottotitolare i video del tuo computer.
Collega il tuo assistente AI
Consigliato: configura con il tuo agente AI
Copia le istruzioni qui sotto in Codex, Claude Code o un altro agente AI che possa eseguire comandi o modificare le impostazioni MCP. L’agente installa il server MCP locale di CaptionBolt, che può caricare video dal tuo computer e salvare i risultati sottotitolati, poi avvia l’accesso. Dopo averlo incollato, aggiungi una breve richiesta con parole tue, come «Configuralo per me», così l’agente procede e risponde nella tua lingua.
Completa l’accesso nel browser e autorizza la connessione. Il server locale richiede Node.js 22.12 o versioni successive. A seconda del client, potrebbe essere necessario riavviarlo o iniziare una nuova conversazione perché l’agente possa verificare la connessione.
Le istruzioni sono in inglese e chiedono all’agente di rispondere nella lingua che usi nella conversazione.
Visualizza le istruzioni di configurazione (in inglese)
Set up CaptionBolt's local MCP server for me and connect my account. Do the steps you can perform instead of only explaining them, and reply in the language I use in this conversation.
Facts:
- Server name: captionbolt. It is a local STDIO MCP server started with the command npx and the arguments --yes @captionbolt/mcp@0.3.3
- It must run on the computer that has my videos and my browser; WSL on that computer counts. It needs Node.js 22.12 or later and an active CaptionBolt Max subscription.
- Sign-in command: npx --yes @captionbolt/mcp@0.3.3 login
It prints an authorization URL and tries to open it in my browser, waits up to five minutes for me to approve access, then saves the authorization on this computer. Running it first also downloads the package. The URL returns to a local address, so it only works in a browser on this computer.
- On native Windows, a client that cannot start npx directly needs the command cmd with the arguments /c npx --yes @captionbolt/mcp@0.3.3
- Verify with the read-only get_account tool; remaining minutes = credits.availableCreditsSec / 60.
- Clients that cannot run local servers use the remote server https://api.captionbolt.com/mcp instead; it cannot upload files from my computer or save results there.
Steps:
1. Identify my AI client, operating system and shell, and adapt every command, configuration format and file path to them. Check the Node.js version. If you are not running on my computer (for example over SSH, in a container or in a cloud workspace), tell me the smallest step to run there.
2. Start the sign-in command in the background and read its output. As soon as it shows the authorization URL, send me a message that contains that exact URL as plain text, before you run any other command or read any file. Tell me to approve access in the browser window it opened, or to open the URL on this computer if none appeared. I cannot see command output, so never refer to "the link above". Then let the command keep running until it reports success; if you cannot keep a command running, ask me to run it in my own terminal. If it reports that CaptionBolt is already authorized, continue. If it reports that an eligible integration account is required, tell me a Max subscription is needed and stop.
3. Add the server to my client's personal MCP configuration and keep other servers; prefer the client's own command for adding MCP servers. Update a captionbolt entry that uses another @captionbolt/mcp version; ask before replacing one that points elsewhere. A typical entry, to adapt to my client: {"mcpServers": {"captionbolt": {"command": "npx", "args": ["--yes", "@captionbolt/mcp@0.3.3"]}}}
4. Reload the MCP tools as my client requires, then call get_account and report my remaining minutes. If I must restart the client or open a new conversation first, tell me exactly what to do and give me one sentence to send there, such as "Call CaptionBolt get_account and show my remaining minutes."
5. Tell me what succeeded and anything left for me. Once it works, tell me I can ask in my own words, for example "Add captions to <path to my video>".
Rules:
- Do not upload, create, export, retry or cancel anything during setup.
- Ask before installing or upgrading software such as Node.js.
- Do not invent a login URL or ask for my password, an API key or a copied token. If a sandbox blocks network access, the browser or the credential store, ask me for permission or ask me to run the command myself.
- A saved configuration or a finished sign-in is not proof; only a successful get_account call is.
Reference: https://captionbolt.com/integrations/mcpInstallare manualmente
Il server MCP locale di CaptionBolt è il pacchetto npm @captionbolt/mcp. Funziona con i client AI che possono eseguire un server MCP locale via STDIO, come Codex, Claude Code, Claude Desktop, Cursor e VS Code. Richiede Node.js 22.12 o versioni successive. Le integrazioni sono disponibili con gli abbonamenti Max.
Prima accedi una volta da un terminale sul computer con i tuoi video. Così viene scaricato anche il pacchetto:
npx --yes @captionbolt/mcp@0.3.3 login
- CaptionBolt si apre nel browser. Altrimenti apri l’URL di autorizzazione mostrato nel terminale.
- Accedi all’account dei progetti e completa la configurazione se richiesta.
- Controlla i permessi e scegli Consenti accesso.
- Attendi che il terminale confermi la verifica dell’account.
Poi aggiungi il server alla configurazione MCP del client. Molti client usano questo formato:
{
"mcpServers": {
"captionbolt": {
"command": "npx",
"args": ["--yes", "@captionbolt/mcp@0.3.3"]
}
}
}
Il formato può variare in base al client; usa lo stesso comando e gli stessi argomenti. Su Windows nativo, se un client non riesce ad avviare npx direttamente, usa il comando cmd con gli argomenti /c npx --yes @captionbolt/mcp@0.3.3.
WSL conta come lo stesso computer: installa il server nel client AI eseguito dentro WSL e indica i file di Windows con percorsi come /mnt/c/Users/<name>/Videos/interview.mp4. Il link di accesso si apre nel browser di Windows.
Infine riavvia il client o inizia una nuova conversazione perché carichi gli strumenti CaptionBolt.
L’autorizzazione è salvata nell’archivio credenziali del sistema e si rinnova automaticamente. Su Linux e WSL senza portachiavi viene salvata in ~/.config/captionbolt/mcp-credentials.json, leggibile solo da te. Nessuna chiave API o token da copiare. Per rimuoverla da questo computer, esegui lo stesso comando con logout al posto di login.
Verifica la connessione
Chiedi all’assistente:
Show my remaining CaptionBolt processing minutes and recent projects.
Do not create, export, retry or cancel anything.
La connessione legge limiti e progetti accessibili. Una lista vuota è normale senza progetti video idonei.
Sottotitola un video del tuo computer
Chiedilo con parole tue e indica il file:
Add captions to ~/Videos/interview.mp4
L’assistente inizia a caricare il file. Durante il caricamento ti chiede quale stile di sottotitoli usare e propone alcuni stili consigliati e i preset salvati in CaptionBolt. Rispondi con un numero, descrivi l’aspetto che vuoi o lascia scegliere all’assistente.
Al termine dell’elaborazione, il video sottotitolato viene salvato accanto all’originale, per esempio come interview.captioned.mp4. Un file esistente non viene mai sostituito; si usa un nome numerato. L’assistente condivide anche il link del progetto nell’editor. Aprilo per correggere parole o cambiare stile, poi esporta di nuovo in CaptionBolt.
I file di sottotitoli come SRT, VTT, ASS e TXT vengono esportati con il video. Chiedili nella stessa richiesta o più tardi:
Add captions to ~/Videos/interview.mp4 and also save the SRT file.
Per controllare i sottotitoli nell’editor prima dell’export, chiedi prima la revisione.
Il server locale legge solo il file indicato. Non esplora le tue cartelle e il video va direttamente nello spazio di archiviazione di CaptionBolt, non nella conversazione con l’AI. Sono supportati file MP4, MOV, WebM e AVI. L’elaborazione usa minuti e limiti del tuo account, come un caricamento dal sito.
Usa gli strumenti CaptionBolt
Il server locale offre:
| Attività | Strumenti |
| --- | --- |
| Carica un video dal computer | upload_file, get_upload_progress |
| Sospendi, riprendi o annulla un caricamento | pause_upload, resume_upload, get_upload, abort_upload |
| Salva un export completato sul computer | download_result, get_download_progress |
| Consulta minuti e limiti | get_account |
| Cerca stili e preset salvati | list_styles, list_presets |
| Elenca progetti e avanzamento | list_projects, get_project |
| Attendi la fine dell’elaborazione | wait_for_project |
| Controlla un’azione | get_operation |
| Crea progetto da caricamento completo | create_project |
| Esporta modifiche salvate | export_project |
| Riprova o annulla | retry_project, cancel_project |
| Ottieni link di esportazioni completate | get_result |
Puoi usare anche i progetti creati sul sito. Per esempio:
List my CaptionBolt projects that are ready for review.
Show their IDs and file names. Do not export them yet.
Dopo revisione e salvataggio in CaptionBolt:
Export project <project-id> as MP4 using its saved changes.
Check the operation, then the project status, and save the video on my
computer when the project is completed. If either fails, show the error and stop.
Sostituisci <project-id> con un ID restituito. Operazione completed conferma l’azione, ma il video può continuare. Controlla fino a ready per revisione o completed per download. Fermati su errori, rispetta pollAfterSeconds e interrompi il polling se annullato.
mode: "review" attende in ready perché tu possa rivedere il progetto in CaptionBolt; mode: "auto-export" esporta dopo l’elaborazione, senza questa pausa, l’MP4 e i file di sottotitoli del tuo piano. Creare e modificare richiede scrittura; esportazione e autoesportazione anche il permesso di esportare.
Se l’autoesportazione resta ready, leggi autoExport.state e autoExport.error con get_project. In caso di errore, segnala e fermati; non attendere indefinitamente o esportare ancora senza istruzioni.
Salva prima nell’editor. I progetti completati conservano l’export; crea una copia modificabile per cambiarlo. Chiedere un formato mancante restituisce subito un errore. Link validi al massimo dieci minuti, rinnovabili nei 14 giorni di accesso.
Connettersi senza installazione locale
Usa MCP remoto quando il client non può eseguire server locali, per esempio un assistente web. MCP remoto offre gli stessi strumenti di progetto, ma non può caricare file dal tuo computer né salvarvi i risultati. Il client deve supportare MCP remoto su Streamable HTTP e accesso OAuth nel browser.
Name: CaptionBolt
Server URL: https://api.captionbolt.com/mcp
Transport: Streamable HTTP
Authentication: OAuth
Sono dati di connessione, non un file di configurazione. Campi e formati variano; alcuni client indicano HTTP. Usa l’URL esatto senza barra finale.
- Aggiungi il server nelle impostazioni MCP del client.
- Avvia accesso o autorizzazione; si apre CaptionBolt nel browser.
- Accedi all’account dei progetti e completa la configurazione se richiesta.
- Controlla i permessi e scegli Consenti accesso.
- Torna al client e verifica gli strumenti disponibili.
Il client gestisce OAuth; client limitati a chiavi API negli header non usano questo endpoint. Con MCP remoto, carica il video sul sito, poi consulta ed esporta le modifiche salvate con MCP. Per automatizzare, completa prima il caricamento REST e passa l’ID come uploadSessionId a create_project.
MCP remoto non accetta URL video e non gestisce sessioni di caricamento. Nessuno dei server modifica sottotitoli o impostazioni visive: usa l’editor. Configura notifiche con Webhooks.
Gestisci la connessione
Visualizza e disconnetti connessioni autorizzate in Impostazioni → Integrazioni.
Disconnettere blocca le richieste, inclusi token salvati. logout rimuove solo l’autorizzazione del server locale dal tuo computer; per revocarla, disconnetti nelle impostazioni. Uscire dal sito non disconnette MCP. Nessuna di queste azioni annulla attività accettate; richiedi l’annullamento del progetto.
Risolvi i problemi
| Problema | Controlla |
| --- | --- |
| Strumenti assenti | Server locale: Node.js 22.12 o successivo, comando e argomenti, poi riavvia il client. MCP remoto: Streamable HTTP, OAuth e URL esatto |
| Uno strumento restituisce AUTH_REQUIRED | Esegui di nuovo login in un terminale e riprova |
| L’accesso segnala l’archivio credenziali non disponibile | Sblocca il Portachiavi di macOS o Gestione credenziali di Windows, oppure connettiti con MCP remoto |
| Il browser non si apre | Apri sullo stesso computer l’URL di autorizzazione mostrato nel terminale |
| Dopo l’autorizzazione il browser non raggiunge 127.0.0.1 | Apri il link sul computer che esegue login, mentre il comando è ancora attivo; se si è fermato, esegui di nuovo login |
| Il client non riesce ad avviare npx o node | Le app desktop potrebbero non usare il PATH del terminale. Indica il percorso completo di npx o aggiungi la cartella di Node.js al PATH del server; su Windows nativo usa cmd con /c npx … |
| Richiesta chiave API | Usa il server locale o l’accesso OAuth del client; le chiavi sono per REST |
| Connessione scaduta o interrotta | Esegui di nuovo login per il server locale o autorizza di nuovo nel client |
| Azione negata | Permessi approvati e limiti attuali |
| Richieste limitate | Attendi l’intervallo restituito |
| Progetto fallito | Leggi l’errore prima di riprovare; vedi stati ed errori |
Il server locale richiede projects:read, projects:write ed exports:write, oltre a offline_access per il rinnovo automatico. Se un client remoto mostra scope OAuth, usa gli stessi; senza offline_access potresti dover accedere ancora alla scadenza.
Creare, esportare, riprovare e annullare richiede idempotencyKey: 1–128 caratteri ASCII stampabili senza spazi. Per ogni nuova azione usa un nuovo valore casuale, come un UUID. Dopo timeout, consulta operazione nota o ripeti la chiamata identica con la chiave originale. retry_project dopo fallimento confermato è una nuova azione e richiede una nuova chiave.
Gli errori espongono structuredContent.error con message e kind, oltre a status, code, requestId e retryAfterSeconds quando disponibili. Rispetta l’intervallo, senza richiamare continuamente uno strumento che fallisce.