O problema que resolve
Quando o usuário cola um link do YouTube em um assistente, ele recusa, inventa algo a partir do título ou falha em vídeos longos. Equipes que criam agentes para pesquisa, vendas ou suporte precisam de um jeito confiável de transformar qualquer vídeo em texto sobre o qual o modelo possa raciocinar, sem manter scrapers que quebram toda vez que o YouTube muda.
O que incluir na primeira versão
- Uma ferramenta que o modelo chama com qualquer URL ou ID de vídeo do YouTube
- Texto limpo da transcrição mais segmentos com timestamps para citações
- Escolha de idioma e tradução para vídeos que não estão em inglês
- Divisão em blocos de vídeos longos para caber no contexto do modelo
- Cache para que o mesmo vídeo não seja buscado duas vezes
Como criar, passo a passo
- 01
Escolha sua integração
Se o seu assistente suporta o Model Context Protocol, conecte o servidor MCP e as ferramentas aparecem automaticamente. Caso contrário, defina uma function tool que chame /transcribe.
- 02
Defina o contrato da ferramenta
Aceite uma URL de vídeo e um idioma opcional. Retorne o texto da transcrição e uma lista de segmentos com tempos de início.
- 03
Trate vídeos longos
Para vídeos maiores que sua janela de contexto, divida os segmentos em blocos e resuma cada um antes de responder, ou recupere só os blocos relevantes para a pergunta.
- 04
Cite a fonte
Instrua o modelo a citar os timestamps dos segmentos para que o usuário possa verificar cada afirmação.
Código inicial
Esta ideia segue o padrão "Receita 1: entra um vídeo, sai um resultado estruturado". Use seus próprios canais, prompts e armazenamento.
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"])Por que vale a pena criar
Normalmente isso é um recurso, não um produto: torna seu assistente, bot ou copiloto atual bem mais útil. Como produto independente, um bot de Slack ou Discord que responde perguntas sobre vídeos compartilhados pode cobrar por workspace.
Erros a evitar
- Enfiar uma transcrição de três horas em um único prompt: recupere ou resuma em blocos.
- Descartar os timestamps, o que torna impossível verificar as respostas.
- Buscar repetidamente o mesmo vídeo popular em vez de fazer cache das transcrições.
Dúvidas sobre esta ideia
O ChatGPT ou o Claude conseguem ler vídeos do YouTube?
Não de forma confiável por conta própria. Conectar uma ferramenta de transcrição ou um servidor MCP permite que eles leiam a transcrição completa de qualquer vídeo público com legendas.
O que é um servidor MCP?
O Model Context Protocol é uma forma padronizada de dar ferramentas a assistentes de IA. Nosso servidor MCP expõe ferramentas de transcrição que assistentes compatíveis podem chamar sem código personalizado.
Como lidar com vídeos muito longos?
Divida os segmentos com timestamps em blocos e então resuma cada bloco ou recupere só os blocos relevantes para a pergunta do usuário.