MELLOW HUB · NOTAS DE CAMPO

MCP para Instagram: publica fotos, carruseles y Reels

Una guía de MCP para Instagram con Mellow Hub: requisitos de la cuenta, inicio de sesión con Instagram o Facebook, entradas de publicación probadas, programación y soluciones a los errores de validación más comunes.

Por Mellow · Actualizado el

¿Puede un asistente de IA publicar en Instagram a través de MCP?

Sí, cuando el asistente tiene una herramienta de publicación autorizada y una cuenta de Instagram conectada que cumpla los requisitos. Mellow Hub expone esas herramientas en https://www.mellow.world/mcp. Un cliente MCP remoto compatible puede validar una publicación, programarla dentro de la delegación del propietario y leer el resultado final en cada destino.

Empieza por la cuenta y un borrador real. MCP es la conexión de la herramienta; Instagram sigue decidiendo si la cuenta, los permisos y el material pueden publicarse. Esta guía trata de Mellow Hub. Para planificar tu propio contenido de Instagram en iPhone o en la web, consulta la guía de planificación de Mellow.

¿Qué cuenta de Instagram necesito?

Usa una cuenta profesional de Instagram: Business o Creator. Una cuenta personal no puede usar este flujo de la API de publicación. En Hub, abre Cuentas, elige Instagram y completa tú mismo la conexión de la cuenta.

Forma de inicio de sesiónQué preparar
Inicio de sesión con InstagramLa ruta directa. La API de inicio de sesión con Instagram de Meta no requiere una página de Facebook vinculada.
Inicio de sesión con FacebookLa cuenta profesional de Instagram vinculada a una página de Facebook, con el acceso adecuado a la página.

Son rutas de autorización distintas. Elige la que corresponda a la configuración de tu cuenta; completar una no concede todos los permisos de la otra. La colección oficial de la API de Instagram de Meta documenta la diferencia. La conexión gestionada que usa Hub se describe en la documentación de Post for Me.

Las historias necesitan una comprobación adicional: la documentación de inicio de sesión con Facebook de Meta limita la publicación de historias a las cuentas Business. Que un formato aparezca en las reglas de entrada de Hub no significa que tu cuenta pueda publicarlo. Confirma la cuenta conectada y el resultado de la entrega antes de contar con ese formato.

Conecta el asistente y comprueba su autoridad

  1. Conecta tu cuenta de Instagram en Hub. El ID de canal que se devuelve identifica esa conexión; el nombre de usuario de Instagram no lo sustituye.
  2. Añade el endpoint de Hub en un cliente compatible con MCP remoto por Streamable HTTP. Sigue su flujo OAuth, o usa una clave de Hub creada por el propietario si ese cliente lo admite. La configuración y la disponibilidad dependen del cliente. Guarda las credenciales en su configuración segura.
  3. En la pantalla de consentimiento OAuth de Hub, elige permisos, canales, modo, tope diario y caducidad. El modo de revisión prepara el trabajo para que una persona lo apruebe. El piloto automático permite publicar dentro de la delegación. Consulta o revoca el acceso resultante en Agentes.
  4. Llama a whoami y a list_channels. Comprueba el modo real y usa el ID de canal de Instagram devuelto. Lee list_platforms para conocer las reglas vigentes.
  5. Prepara material accesible. Usa register_media para inspeccionar una URL pública existente, o request_upload_url para subir un archivo local. Mantén la URL resultante accesible hasta la hora prevista de publicación.

Para la secuencia completa de conexión y el contrato del resultado, usa la guía del flujo de trabajo MCP. Añadir un conector o pegar un prompt, por sí solo, no autoriza una cuenta de Instagram.

Conecta Mellow Hub en Claude primero con acceso de solo lectura

En una cuenta de Claude con conectores personalizados disponibles, abre Personalizar → Conectores → Añadir conector personalizado. Usa el nombre Mellow Hub y la URL del servidor MCP remoto https://www.mellow.world/mcp. Si ya lo añadiste, usa ese conector existente. Claude puede descubrir la configuración de autenticación desde esa dirección.

Ajuste de conexiónValor
TransporteStreamable HTTP
AutenticaciónSiempre obligatoria
Cliente OAuthSe registra automáticamente mediante DCR; no hay secreto de cliente que copiar.
  1. Abre el conector y selecciona Conectar. Inicia sesión en Mellow si te lo pide. La pantalla de consentimiento debe identificar a Claude como la aplicación que solicita acceso.
  2. Para una primera comprobación, deja seleccionados solo channels:read y posts:read. Permiten leer la conexión y validar una entrada. No permiten subir material, crear publicaciones ni publicar.
  3. Elige tu canal concreto de Instagram y el modo de revisión. Fija una caducidad corta, por ejemplo un día, y un tope diario. Una selección de canales vacía se rechaza; el acceso a canales futuros requiere una elección explícita.
  4. Revisa y aprueba tú mismo esa delegación. Al volver a Claude, confirma que el conector está conectado. Pídele que llame a whoami y luego a list_channels para obtener el ID del canal permitido. Comprueba los permisos, los canales y la caducidad concedidos en la lista de accesos de Hub: un cliente puede mostrar solo el resumen en texto de la herramienta, que no incluye todos los campos estructurados.
Usa solo Mellow Hub. Llama a whoami y luego a list_channels.
Usa el único canal de Instagram que autoricé. Llama a validate_post dos veces con
el texto "Mellow test - example only": primero con media [] y luego con
media ["https://example.com/test.jpg"]. Son entradas ilustrativas.
No descargues la URL ni leas publicaciones existentes. Informa de cada resultado de validación.
No crees, programes, canceles ni publiques nada.

Cuando Claude pida usar una herramienta, revisa su nombre y su entrada antes de permitir la llamada. Para esta comprobación, permite cada llamada una vez. La URL de ejemplo solo prueba las reglas de entrada; no es una imagen real para publicar. La validación no descarga el material ni demuestra la entrega en Instagram.

Qué devolvió la comprobación real de la conexión

El 9 de septiembre de 2026, una conexión real de Claude web completó OAuth con solo channels:read posts:read, un canal de Instagram, modo de revisión y caducidad de un día. Claude llamó a whoami, list_channels y validate_post dos veces. Inspeccionamos las respuestas de las herramientas además del resumen del asistente.

EntradaResultado observado
Texto sin materialRechazado: Instagram necesita al menos un elemento multimedia.
El mismo texto con la URL de imagen ilustrativaSuperó la comprobación de entrada para un canal.

En esta comprobación no se creó ni publicó ninguna publicación. Después revocamos la concesión de prueba en Agentes y verificamos que tanto su token de acceso como el de actualización quedaron revocados. Esto demuestra ese flujo concreto de conexión y validación, no la publicación en Instagram ni la compatibilidad con todas las configuraciones de cliente.

Para tu propio borrador, aporta un texto real y material accesible. Si una tarea posterior necesita escribir, aprueba una nueva delegación con los permisos necesarios. Renovar un token no amplía la caducidad de acceso elegida.

Elige el formato antes de validar

Actualmente Hub aplica un límite de 2200 caracteres para el texto y un rango general de 110 elementos multimedia para Instagram. Las ubicaciones estrechan ese rango. Son las reglas de entrada que Hub aplica; pueden ser más conservadoras que el propio editor de Instagram.

PublicaciónUbicación en HubEntrada que preparar
Foto en el feedtimelineUna imagen.
Carrusel de fotostimelineDe dos a 10 imágenes en el orden que quieras.
ReelreelsExactamente un vídeo. shareToFeed controla si se comparte en el feed principal.
HistoriastoriesExactamente una imagen o un vídeo, según los requisitos de la cuenta.

Actualmente Hub rechaza mezclar URLs de imagen y de vídeo reconocidas en una misma publicación. Usa un solo tipo de material para la entrada del carrusel. Es una limitación de Hub, no una afirmación de que Instagram nunca admita carruseles mixtos.

El comportamiento de las ubicaciones está documentado por Post for Me. El tamaño del archivo, los códecs, la proporción y la duración siguen teniendo que cumplir las reglas de Instagram. El validador de entrada de Hub no descarga ni mide el archivo, y una URL sin extensión reconocible puede dejar su tipo de material sin determinar.

Tres entradas de publicación que puedes adaptar

Pasa uno de estos objetos como argumentos a validate_post. Sustituye el ID de canal de ejemplo, las URLs del material, el texto y la fecha de 2030 por tus propios valores. La fecha es deliberadamente ilustrativa; usa una Z UTC explícita o un desfase horario. Estas cargas se comprueban contra el analizador y el validador de Hub con un canal sintético. No son recibos reales de publicación en Instagram.

One feed photo

{
  "channels": [
    "spc_your_instagram_channel"
  ],
  "scheduledAt": "2030-01-15T10:00:00Z",
  "caption": "A closer look at the glaze on this cup.",
  "media": [
    "https://cdn.example.com/your-cup.jpg"
  ],
  "options": {
    "instagram": {
      "placement": "timeline"
    }
  }
}

An ordered photo carousel

{
  "channels": [
    "spc_your_instagram_channel"
  ],
  "scheduledAt": "2030-01-15T10:00:00Z",
  "caption": "From clay to finished cup, in three stages.",
  "media": [
    "https://cdn.example.com/your-clay.jpg",
    "https://cdn.example.com/your-process.jpg",
    "https://cdn.example.com/your-cup.jpg"
  ],
  "options": {
    "instagram": {
      "placement": "timeline"
    }
  }
}

One Reel

{
  "channels": [
    "spc_your_instagram_channel"
  ],
  "scheduledAt": "2030-01-15T10:00:00Z",
  "caption": "How this handle is attached.",
  "media": [
    "https://cdn.example.com/your-process.mp4"
  ],
  "options": {
    "instagram": {
      "placement": "reels",
      "shareToFeed": true
    }
  }
}

Una URL de material real debe ser accesible para el servicio de publicación cuando la descargue. Meta describe este requisito en su referencia de publicación de contenido. Una ruta local, un enlace a una unidad privada o una URL firmada caducada no sirven como sustituto.

Corrige el problema indicado antes de crear la publicación

Lee ok, issues y notes en el resultado de la validación. Una petición HTTP correcta puede traer igualmente ok: false. El problema nombra el canal y el campo afectados.

Código del problemaQué cambiar
channel_not_connectedTermina de conectar la cuenta y usa el ID de canal devuelto.
media_requiredAdjunta material; Instagram no puede publicar una publicación solo de texto por este flujo.
media_too_manyReduce el conjunto al máximo actual de Hub, 10; un Reel o una historia admiten menos.
reel_media_countUsa un vídeo por Reel. Para varios Reels, prepara publicaciones separadas.
reel_needs_videoAporta un vídeo para el Reel, o elige la ubicación del feed para las fotos.
story_media_countUsa un elemento por solicitud de historia.
media_kinds_mixedMantén las imágenes y los vídeos reconocidos en publicaciones de Hub separadas.
caption_too_longAcorta el texto a 2200 caracteres o menos.

Prueba el comprobador de publicaciones gratuito antes de conectar una cuenta. Usa las mismas reglas de entrada con destinos de ejemplo. La validación autenticada comprueba los canales conectados reales; ninguno de los dos resultados garantiza la entrega final por parte del proveedor.

Programa una vez y verifica el resultado en Instagram

Tras una comprobación válida, llama a create_post con la misma publicación prevista y una idempotencyKey estable, por ejemplo ceramics-instagram-reel-slot-001. Crear es el paso que prepara o programa la publicación real. En modo de revisión espera la aprobación; en piloto automático puede continuar a la hora elegida. Comprueba antes la cuota de tu plan.

Guarda el ID de publicación devuelto. Si se pierde la respuesta de creación, reintenta la misma petición con la misma clave. No generes una clave nueva solo por un tiempo de espera agotado. Una publicación modificada necesita una clave nueva.

Llama a get_post e inspecciona la entrada de Instagram en targets. Lee su estado final, la URL pública o el error. Que Hub acepte una publicación no demuestra que Instagram la haya publicado. En una solicitud multired, otro destino puede tener éxito mientras Instagram falla.

Para integraciones de servidor que usen HTTP directamente, la receta de programación por REST ofrece las peticiones equivalentes y la cabecera de idempotencia. Para una primera configuración, conecta tu canal de Instagram y valida un borrador antes de preparar una programación recurrente.