OpenClip: reutilización de contenido largo en lotes de clips cortos
Este skill cubre el flujo de trabajo completo. Un video largo de entrada, un conjunto de clips verticales listos para publicar, cada uno con subtítulos y texto de publicación. Combina el pipeline de recorte de OpenClip, los subtítulos y las herramientas multimedia gratuitas.
El pipeline de recorte es de pago (requiere una suscripción activa y créditos). Las herramientas de reencuadre y recorte son gratuitas.
Configuración (una vez)
OpenClip es un servidor MCP remoto en https://openclip.app/mcp. Inicia sesión con tu cuenta de OpenClip cuando aparezca el aviso de OAuth, no hay ninguna clave API que copiar.
- Claude Code:
claude mcp add --transport http openclip https://openclip.app/mcp, luego/mcppara autorizar. - Claude Desktop / web: Ajustes, Conectores, "Añadir conector personalizado", pega la URL, inicia sesión.
- Cursor (
.cursor/mcp.json):{ "mcpServers": { "openclip": { "url": "https://openclip.app/mcp" } } } - Clientes solo con encabezado: genera un token MCP en
openclip.app/settings/connecty conéctate ahttps://openclip.app/mcp/keyconAuthorization: Bearer <token>.
Verificación de cordura: llama a get_account y confirma que credits_remaining > 0.
El flujo de trabajo
Antes de empezar, acuerda dos cosas con el usuario: cuántos clips quiere y para qué plataformas. Estas dos respuestas guiarán cada decisión posterior. No elijas silenciosamente por ellos.
- Envía la fuente.
submit_video(url). Devuelve unjob_id, estadoqueued. Para un archivo local:create_upload, PUT los bytes, luegocomplete_upload. - Consulta hasta completar.
get_video_status(job_id)hasta que estécompleted. Unfailedcasi instantáneo significa que no hay suscripción activa.pending_creditssignifica que no hay créditos. Dilo claramente y detente, no sigas consultando un estado terminal. - Obtén los momentos.
list_clips(job_id). Ordénalos porvirality_score(de 0 a 10) y toma la cantidad que pidió el usuario. Muéstrale la lista breve con título, gancho, duración y puntuación ANTES de renderizar nada, para que pueda vetarlos. Renderizar cuesta créditos. - Subtitula cada selección.
list_caption_presets, luegorender_clip(moment_id, caption_preset)para cada momento aprobado. Consultalist_clipshasta que cada momento tenga unrendered_clip. - Reencuadra si es necesario. La salida del pipeline ya está orientada a formato corto. Si el usuario necesita una relación de aspecto diferente para una plataforma específica, ejecuta la herramienta gratuita
edit_video(video, operation="crop", aspect="9:16" | "1:1" | "4:5")sobre el clip renderizado. - Entrega el lote. Para cada clip proporciona: la URL de
rendered_clip,title,hook,social_copy,duration_ms,virality_scorey el campoplatformssugerido.
Formatos por plataforma
- TikTok, Reels, Shorts - vertical 9:16. Este es el valor por defecto, el pipeline lo tiene como objetivo.
- Feed de Instagram - 4:5 o 1:1. Recorta el clip renderizado con
edit_video. - X y LinkedIn - 16:9 o 1:1 funcionan ambos. Los subtítulos importan más que la relación de aspecto; la mayoría se reproducen automáticamente en silencio.
Cada momento incluye un campo platforms del pipeline. Úsalo como sugerencia inicial, no como regla, y concílialo con lo que el usuario realmente publica.
Secuenciación y coste
- Agrupa las consultas. Envía una vez, luego consulta
get_video_statusen un bucle en lugar de reenviar. - Renderiza solo los momentos aprobados. Cada
render_clipconsume trabajo, no renderices los diez si el usuario quería tres. - Para un flujo recurrente (mismos subtítulos, misma composición, misma marca de agua de logotipo cada vez), guarda un agente de procesamiento con
create_agenty pásalo asubmit_video. Esto hace que cada lote futuro sea idéntico sin tener que volver a especificar.describe_agent_settingsenumera todos los campos. get_usagemuestra el saldo de créditos (los créditos son minutos de procesamiento) antes de empezar un lote grande. Verifícalo cuando el usuario pida un número grande de clips.
Reglas
- Siempre consulta; cada paso es asíncrono.
- Ordena por
virality_score, mayor es mejor. Explica las puntuaciones conviral_score_details(fuerza del gancho, capacidad de compartir, rejugabilidad, sorpresa, impacto emocional). - Los tiempos están en milisegundos.
- Las URLs de los clips son enlaces CDN permanentes, no firmados ni con caducidad.
- No se admiten proyectos ni carpetas. No le prometas al usuario una estructura de carpetas.
- No reescribas
social_copycon tono de influencer a menos que te lo pidan. Está generado para coincidir con el clip, y reescribirlo de forma demasiado agresiva suele empeorarlo.
Ejemplos de acciones a partir de instrucciones
- "Convierte este podcast en 10 TikToks" - envía, consulta,
list_clips, muestra la lista breve de los 10 mejores, obtén aprobación, renderiza cada uno con subtítulos, consulta, entrega el lote. - "Dame una semana de contenido de este webinar" - igual, con un tamaño de 5 a 7 clips, agrupados por tema usando la
categoryde cada momento. - "Solo el mejor, subtitulado como MrBeast" - envía, consulta, toma el de mayor
virality_score,render_clip(moment_id, caption_preset="beast"), consulta. - "El mismo aspecto que la última vez" - reutiliza el ID del agente guardado en
submit_video.
Relacionados
Los detalles del pipeline y el manejo de estados están en openclip-clipping. Los presets de subtítulos y el estilo personalizado están en openclip-captions. El recorte, recorte y compresión gratuitos están en openclip-video-editing.