Publicación Social (YouTube, Facebook, Mastodon)
Crea y programa publicaciones en YouTube, Páginas de Facebook y Mastodon usando el servidor MCP de Publora. Este skill cubre plataformas que funcionan con publicaciones estándar sin complejidades específicas de cada plataforma.
Requisitos previos
Planes: Funciona con el plan gratuito Starter. Límites y precios actuales: publora.com/pricing.
Primeros pasos
- Crear cuenta en publora.com/register (gratis)
- Conectar plataformas mediante OAuth en el Panel de Publora:
- YouTube: OAuth de Google (requiere un canal de YouTube)
- Facebook: OAuth de Facebook (solo Páginas, no perfiles personales)
- Mastodon: OAuth (instancia mastodon.social)
- Obtener clave API en app.publora.com/dashboard/api
- Conectar tu agente al servidor MCP en
https://mcp.publora.com, autenticando conAuthorization: Bearer sk_YOUR_API_KEY. En Claude Code:
claude mcp add publora --transport http https://mcp.publora.com \
--header "Authorization: Bearer sk_YOUR_API_KEY"
Claude Desktop, Cursor, Codex, OpenClaw y el conector de claude.ai necesitan un archivo de configuración o flujo diferente: consulta la configuración del cliente para la ruta y el fragmento exactos.
Respaldo con API REST
Si MCP no está disponible, usa la API REST directamente:
URL base: https://api.publora.com/api/v1
Autenticación: encabezado x-publora-key
# Obtener plataformas conectadas
curl -X GET "https://api.publora.com/api/v1/platform-connections" \
-H "x-publora-key: sk_your_api_key"
# Crear una publicación
curl -X POST "https://api.publora.com/api/v1/create-post" \
-H "x-publora-key: sk_your_api_key" \
-H "Content-Type: application/json" \
-d '{
"platforms": ["youtube-UCxxx", "facebook-123456", "mastodon-789"],
"content": "Contenido de tu publicación",
"scheduledTime": "2026-03-25T10:00:00Z"
}'
Formatos de ID de plataforma:
- YouTube:
youtube-{id_del_canal}(ej.,youtube-UCxxx) - Facebook:
facebook-{id_de_la_página}(ej.,facebook-112233445566) - Mastodon:
mastodon-{id}(ej.,mastodon-456)
📖 Documentación: docs.publora.com
YouTube
Plataforma solo de video: cada publicación requiere un archivo de video.
Límites de la plataforma
| Característica | Límite |
|---|---|
| Título del video | 100 caracteres |
| Descripción del video | 5,000 caracteres |
| Duración del video | 12 horas |
| Tamaño del video | 256 GB |
| Formatos de video | MP4, MOV, AVI, WebM |
Configuración de plataforma (mediante API REST)
{
"platformSettings": {
"youtube": {
"privacy": "public",
"title": "Mi título de video"
}
}
}
| Configuración | Valores | Predeterminado |
|---|---|---|
privacy | "public", "unlisted", "private" | "public" |
title | cadena | Derivado de los primeros 70 caracteres del contenido |
Nota: platformSettings es aceptado por las herramientas create_post y update_post de MCP, así como por REST. El esquema es estricto: una plataforma o clave mal escrita se rechaza con un error de validación en lugar de ignorarse silenciosamente.
Ejemplos de YouTube
Sube este video tutorial a YouTube:
"Cómo construir una API REST en 10 minutos - Guía completa para principiantes"
Sube esto como video no listado (para compartir internamente):
"Demo interna - Funcionalidades del panel Q1"
Restricciones de YouTube
- Video requerido: YouTube no admite publicaciones de solo texto o imágenes
- Video único: Un video por publicación
- Tiempo de procesamiento: Los videos tardan segundos o minutos en procesarse tras la subida
- Renovación de token: Los tokens de YouTube expiran después de ~6 meses, reconectar si es necesario
Solo Páginas: las publicaciones van a las Páginas de Facebook, no a perfiles personales.
Límites de la plataforma
| Característica | Límite |
|---|---|
| Texto de la publicación | 2,200 caracteres (frontend) / 63,206 (API) |
| Imágenes | Hasta 10 por publicación |
| Tamaño de imagen | 10 MB |
| Duración del video | 45 minutos |
| Tamaño del video | 2 GB |
Soporte para múltiples páginas
Si gestionas varias Páginas de Facebook, cada una tiene su propio ID de plataforma:
facebook-112233445566(Página 1)facebook-778899001122(Página 2)
Puedes publicar en varias páginas en una sola solicitud.
Ejemplos de Facebook
Publica este anuncio en mi Página de Facebook:
"¡Estamos emocionados de anunciar el lanzamiento de nuestro nuevo producto! Visita nuestro sitio web para saber más."
Publica esto en ambas Páginas de Facebook:
"Aviso de vacaciones: nuestras oficinas estarán cerradas el lunes."
Comparte estas fotos del evento en Facebook:
"¡Lo mejor de nuestro retiro de empresa! Gran equipo, grandes recuerdos."
Restricciones de Facebook
- Solo Páginas: No se puede publicar en perfiles personales mediante la API
- WebP convertido automáticamente: Las imágenes WebP se convierten a JPEG automáticamente
- Token de 59 días: Los tokens se renuevan automáticamente, pero puede ser necesario reconectar si falla
- Sin contenido mixto: Una publicación puede tener imágenes O video, no ambos
Mastodon
Plataforma del Fediverso: las publicaciones se federan en la red descentralizada.
Límites de la plataforma
| Característica | Límite |
|---|---|
| Texto de la publicación | 500 caracteres |
| Imágenes | Hasta 4 por publicación |
| Tamaño de imagen | 16 MB |
| Tamaño de video | ~99 MB |
| Formatos de imagen | JPEG, PNG, GIF, WebP |
| Formatos de video | MP4, WebM, MOV |
Ejemplos de Mastodon
Publica esto en Mastodon:
"¡Hola fediverso! Acabamos de lanzar una gran actualización de nuestro proyecto de código abierto. #opensource"
Comparte esta captura de pantalla en Mastodon:
"Nueva funcionalidad: ¡el modo oscuro ya está aquí! #ui #darkmode"
Restricciones de Mastodon
- Solo mastodon.social: Actualmente solo se conecta a la instancia mastodon.social
- Visibilidad pública: Todas las publicaciones son públicas por defecto
- Sin auto-hilos: A diferencia de X/Twitter, Mastodon no divide el contenido largo
- Estricto límite de 500 caracteres: El contenido de más de 500 caracteres será rechazado
Herramientas disponibles (todas las plataformas)
create_post
Crea una nueva publicación en cualquier plataforma.
Parámetros:
platforms: Arreglo de IDs de plataforma (ej.,["youtube-UCxxx", "facebook-123", "mastodon-456"])content: Texto de la publicaciónscheduledTime: Fecha y hora UTC en formato ISO 8601. Opcional: si se omite, la publicación se crea como borrador. Envía una hora futura para programarla. Una hora de cinco o más minutos en el pasado se rechaza conSCHEDULED_TIME_IN_PAST, por lo que para publicación inmediata usa la hora actual más un minuto.mediaUrls: hasta 10 URLs públicas https de imágenes o videos. Publora las descarga del lado del servidor y las adjunta antes de la validación, por lo que el contenido multimedia y la programación ocurren en una sola llamada. Esta es la alternativa directa al flujo de borrador seguido deget_upload_urly luegocomplete_media. La ingesta tiene un límite de 60 URLs por hora.
get_upload_url
Obtiene una URL prefirmada para subir contenido multimedia.
Parámetros:
postGroupId: ID de la publicación a la que adjuntar el contenidofileName: Nombre del archivocontentType: Tipo MIMEtype:"image"o"video"
complete_media
Finaliza un archivo subido mediante get_upload_url, después de que la operación PUT prefirmada haya tenido éxito. Es opcional, porque la programación también finaliza el contenido multimedia pendiente, pero llamarlo temprano muestra errores de formato y prueba antes de publicar. No es necesario para contenido adjuntado con mediaUrls.
Parámetros:
mediaId: el ID devuelto porget_upload_url
list_connections
Lista tus cuentas conectadas con sus IDs de plataforma. Llámalo primero y copia los IDs textualmente; nunca son adivinables.
list_posts / get_post / update_post / delete_post
Gestiona publicaciones programadas y borradores. update_post también modifica content y platforms en un borrador o publicación programada, por lo que corregir un error tipográfico o cambiar el destinatario ya no requiere eliminar y volver a crear. delete_media y prune_media_reference limpian archivos subidos.
Publicación entre plataformas
Publica en múltiples plataformas a la vez:
Publica este video en YouTube y este texto en Facebook y Mastodon:
"¡Anunciamos nuestra nueva funcionalidad! Mira la demo."
Publora maneja automáticamente los requisitos específicos de cada plataforma:
- YouTube recibe el video con título/descripción
- Facebook recibe el texto + video
- Mastodon recibe el texto (se aplica el límite de 500 caracteres)
Solución de problemas
| Plataforma | Error | Solución |
|---|---|---|
| YouTube | "Video requerido" | Adjunta un archivo de video |
| YouTube | "Cuenta desconectada" | Reconecta mediante el panel |
| "Página no encontrada" | Verifica la conexión de la página | |
| "Token expirado" | Reconecta la página en el panel | |
| Mastodon | "Contenido demasiado largo" | Reduce a menos de 500 caracteres |
| Mastodon | "Demasiadas imágenes" | Reduce a 4 o menos |
| Todas | Errores de límite de velocidad | Espera y vuelve a intentar |
La cifra de 512 MB que solía aparecer aquí pertenece al endpoint multipart
/media/process-videodel panel. Las subidas por API y MCP son prefirmadas y usan los límites de plataforma indicados arriba.