Il problema che risolve
Quando gli utenti incollano un link di YouTube in un assistente, questo si rifiuta, inventa partendo dal titolo o fallisce con i video lunghi. I team che sviluppano agenti per ricerca, vendite o supporto hanno bisogno di un modo affidabile per trasformare qualsiasi video in testo su cui il modello possa ragionare, senza mantenere scraper che si rompono a ogni modifica di YouTube.
Cosa includere nella prima versione
- Uno strumento che il modello può chiamare con qualsiasi URL o ID video di YouTube
- Testo pulito della trascrizione più segmenti con timestamp per le citazioni
- Selezione della lingua e traduzione per i video non in inglese
- Suddivisione in blocchi dei video lunghi, così rientrano nel contesto del modello
- Cache per non recuperare due volte lo stesso video
Come realizzarla, passo dopo passo
- 01
Scegli l'integrazione
Se il tuo assistente supporta il Model Context Protocol, collega il server MCP e gli strumenti compaiono automaticamente. Altrimenti definisci un function tool che chiama /transcribe.
- 02
Definisci il contratto dello strumento
Accetta un URL video e una lingua opzionale. Restituisci il testo della trascrizione e un elenco di segmenti con gli orari di inizio.
- 03
Gestisci i video lunghi
Per i video più lunghi della finestra di contesto, dividi i segmenti in blocchi e riassumi ciascuno prima di rispondere, oppure recupera solo i blocchi pertinenti alla domanda.
- 04
Cita la fonte
Istruisci il modello a citare i timestamp dei segmenti, così gli utenti possono verificare ogni affermazione.
Codice di partenza
Questa idea si basa sullo schema "Ricetta 1: entra un video, esce un output strutturato". Sostituisci canali, prompt e storage con i tuoi.
import requests
API = "https://www.youtubetranscript.dev/api/v2"
HEADERS = {"Authorization": "Bearer yt_sk_live_YOUR_KEY"}
res = requests.post(f"{API}/transcribe", headers=HEADERS, json={
"video": "https://www.youtube.com/watch?v=VIDEO_ID",
"format": {"timestamp": True, "paragraphs": True},
}).json()
transcript = res["data"]["transcript"]
print(transcript["text"][:500]) # plain text for your LLM prompt
for seg in transcript["segments"][:3]: # timestamps for deep links
print(seg["start"], seg["text"])Perché vale la pena realizzarla
Di solito è una funzionalità, non un prodotto: rende il tuo assistente, bot o copilot esistente nettamente più utile. Come prodotto a sé, un bot per Slack o Discord che risponde a domande sui video condivisi può essere venduto per workspace.
Errori da evitare
- Infilare una trascrizione di tre ore in un unico prompt: recupera o riassumi a blocchi.
- Eliminare i timestamp, rendendo impossibile verificare le risposte.
- Recuperare più volte lo stesso video popolare invece di mettere in cache le trascrizioni.
Domande su questa idea
ChatGPT o Claude possono leggere i video di YouTube?
Non in modo affidabile da soli. Collegando uno strumento di trascrizione o un server MCP possono leggere la trascrizione completa di qualsiasi video pubblico con sottotitoli.
Che cos'è un server MCP?
Il Model Context Protocol è un modo standard per fornire strumenti agli assistenti AI. Il nostro server MCP espone strumenti di trascrizione che gli assistenti compatibili possono chiamare senza codice personalizzato.
Come gestisco i video molto lunghi?
Dividi i segmenti con timestamp in blocchi, poi riassumi ogni blocco o recupera solo quelli pertinenti alla domanda dell'utente.