Para agentes de IA

Tu agente escribe. Shager lo lanza.Tú tienes el control.

Conecta Claude, ChatGPT, Cursor o cualquier cliente MCP iniciando sesión con OAuth, un bot con un código de dispositivo, y todo lo demás con una clave de API o la API REST. Tu agente sube un video o imágenes, prepara una publicación para todas las cuentas (un Reel, Short, historia, video de TikTok o publicación) y la revisa según las reglas de cada red. Publicar queda desactivado hasta que una persona lo activa.

Servidor MCP, API REST y documentación OpenAPI en todos los planes, gratis durante el periodo de lanzamiento.

01Un video

Un video. Ocho cuentas.

El agente sube el video con upload_media_from_url y envía una publicación con un grupo de cuentas. Shager devuelve una versión por cuenta, en un formato que su red admite: un Reel, un Short, un video de TikTok, un video de LinkedIn. Cada una tiene su propia hora de envío.

https://app.shager.ai/api/mcpStreamable HTTP · OAuth or Bearer key

Llamadatools/call · upload_media_from_url → create_post

// 1 · upload the video once
{
  "name": "upload_media_from_url",
  "arguments": {
    "workspace_id": "cm2studionoa",
    "url": "https://studio-noa.co.il/media/workshop.mp4"
  }
}
// → { "id": "cm2wheelvideo", "kind": "VIDEO",
//     "width": 1080, "height": 1920, "duration_ms": 24000 }  (measured by Shager)

// 2 · one post to every account
{
  "name": "create_post",
  "arguments": {
    "workspace_id": "cm2studionoa",
    "group_ids": ["cm2allaccounts"],
    "caption": "A new evening workshop…",
    "media_ids": ["cm2wheelvideo"],
    "cta_url": "https://studio-noa.co.il/workshop",
    "youtube_made_for_kids": false,
    "per_channel": [{
      "channel_id": "cm2tiktok",
      "tiktok_privacy": "SELF_ONLY"
    }],
    "schedule_at": "2026-10-20T09:00:00+03:00",
    "idempotency_key": "workshop-oct-20"
  }
}

Resultadostatus: SCHEDULED

{
  "status": "SCHEDULED",
  "scheduled_at": "2026-10-20T06:00:00.000Z",
  "stagger_seconds": { "min": 30, "max": 90 },
  "issues": [],
  "destinations": [
    { "network": "INSTAGRAM", "format": "REEL",  "state": "PENDING" },
    { "network": "FACEBOOK",  "format": "REEL",  "state": "PENDING" },
    { "network": "YOUTUBE",   "format": "SHORT", "state": "PENDING" },
    { "network": "TIKTOK",    "format": "VIDEO", "state": "PENDING" },
    { "network": "LINKEDIN",  "format": "VIDEO", "state": "PENDING" },
    { "network": "X",         "format": "FEED",  "state": "PENDING" }
    // … 2 more, each with its own dispatch_at
  ],
  "calendar_notes": []
}
  • validate_post devuelve todos los problemas de todas las cuentas a la vez, antes de guardar nada.
  • calendar_notes marca las festividades del día elegido, para que el agente reconsidere el horario.
  • idempotency_key hace seguros los reintentos: la misma solicitud nunca crea una segunda publicación.

02Seguridad

El agente hace el trabajo. Una persona decide.

Una persona lo hace suyo.

Un agente que se registra solo recibe un sandbox: borradores, medios y clientes, sin programar ni publicar. Una persona abre el enlace para reclamarlo, inicia sesión y solo entonces la organización es suya.

Publicar está desactivado por defecto.

Cada clave tiene permisos de lectura, escritura y publicación. El de publicación se otorga aparte, solo lo da una persona, y la clave se puede revocar en cualquier momento.

Clave de API · claude-codeshgr_live_…

  • readCuentas, publicaciones, estadísticasActivado
  • writeBorradores y mediosActivado
  • publishProgramar y publicarDesactivado

Los envíos grandes o repentinos esperan un sí.

Un envío a más de 10 cuentas o dentro de 60 minutos no sale de inmediato. El agente recibe un plan de envío para mostrarte y vuelve a enviar solo con un token de confirmación.

{ "error": {
  "code": "needs_confirmation",
  "message": "Nothing was scheduled: …",
  "details": {
    "plan": { "accounts": 40, "by_network": { … } },
    "confirmation_token": "…"
  }
} }

Límites por clave y un registro de cada acción.

Hasta 50 cuentas por publicación y 20 publicaciones programadas en 24 horas. Cada acción de un agente queda registrada: qué, cuándo y con qué clave.

03Conexión

Tres formas de conectar cualquier agente.

  1. Cualquier cliente MCP compatible con OAuth

    Agrega la dirección del servidor en el cliente (en Claude y ChatGPT, como conector personalizado). Te lleva a Shager: inicia sesión, elige la organización y aprueba. No hay clave que copiar, y publicar queda desactivado a menos que lo marques.

    CódigoConector personalizado

    # MCP server URL (sign in with OAuth)
    https://app.shager.ai/api/mcp
  2. Bots sin navegador: un código de dispositivo

    Un bot o agente sin navegador se registra una vez (RFC 7591), pide un código y te lo muestra. Lo apruebas desde el teléfono en app.shager.ai/device, con la misma pantalla y los mismos permisos.

    CódigoCódigo de dispositivo RFC 8628

    curl -X POST https://app.shager.ai/api/oauth/device_authorization \
      -d client_id=shgr_client_… \
      -d resource=https://app.shager.ai/api/mcp
    # → user_code "BCDF-GHJK", verification_uri
    #   https://app.shager.ai/device · then poll /api/oauth/token
  3. Todo lo demás: una clave de API

    Crea una clave en la página de Agentes y envíala como encabezado Bearer, por MCP o por la API REST. ¿Aún no tienes cuenta? El agente se registra solo en un sandbox y tú lo reclamas después (auth.md).

    CódigoClaude Code

    claude mcp add --transport http shager \
      https://app.shager.ai/api/mcp \
      --header "Authorization: Bearer shgr_live_…"

04Herramientas

Todo lo que puede hacer el agente.

30 herramientas, las mismas en MCP y REST
whoami
Quién soy: la organización, los permisos de la clave, los límites y el estado del sandbox
get_structure
Toda la cuenta de un vistazo: los clientes, las cuentas de cada uno y sus grupos
get_claim_link
Enlace para reclamar la organización
list_workspaces
Lista de clientes (espacios de trabajo)
create_workspace
Abrir un cliente nuevo
list_channels
Cuentas conectadas y las reglas de cada red
create_connect_link
Un enlace para que el cliente conecte sus propias cuentas
list_groups
Grupos de cuentas
create_group
Crear un grupo (sucursales, marcas, campaña)
upload_media_from_url
Subir una imagen o un video desde una URL
validate_post
Revisar el contenido final y si está listo para programar
create_post
Una publicación para muchas cuentas, adaptada a cada red
update_post
Editar un borrador
schedule_post
Programar con envío escalonado entre cuentas
request_approval
Un enlace de aprobación para el cliente
get_approval
Estado de aprobación de la publicación
get_post
Estado de publicación en cada cuenta, con errores incluidos
list_posts
El calendario de contenido
cancel_post
Cancelar una programación
delete_post
Eliminar un borrador
list_comments
Comentarios de una publicación en YouTube o Instagram
reply_to_comment
Responder a un comentario como la cuenta
hide_comment
Ocultar o mostrar un comentario
delete_comment
Eliminar un comentario
get_analytics
Clics por cuenta y por publicación
create_webhook
list_webhooks
delete_webhook
send_test_webhook
get_holidays
Festividades y fechas especiales por tradición, para elegir cuándo publicar
Archivos legibles por máquina
/llms.txt
Un mapa del sitio para agentes: qué es Shager y dónde está cada página.
/llms-full.txt
Todo el contenido público en un solo archivo Markdown.
/md/…
Una versión en Markdown de cada página. Ejemplo: /md/es/pricing
app.shager.ai/api/v1/openapi.json
La especificación OpenAPI completa de la API REST.
app.shager.ai/.well-known/oauth-authorization-server
Metadatos del servidor OAuth: registro dinámico de clientes, PKCE, código de dispositivo.

05Preguntas

Lo que nos preguntan antes de conectar un agente.

¿Qué agentes funcionan hoy con Shager?

Cualquier cliente MCP compatible con el inicio de sesión OAuth (como un conector personalizado en Claude o ChatGPT) o con un encabezado de clave de API (como Claude Code, Cursor o Codex), bots y agentes sin navegador mediante un código de dispositivo, y cualquier código que llame a la API REST.

¿El agente puede publicar sin que yo lo sepa?

No por defecto. Publicar requiere un permiso de publicación aparte que otorga una persona, y está desactivado al crear una clave, reclamar un sandbox o aprobar una conexión; además, un envío a más de 10 cuentas o dentro de 60 minutos requiere una segunda confirmación. También puedes exigir la aprobación del cliente para cada publicación en un espacio de trabajo.

¿Un agente cuesta aparte?

No. La API y el servidor MCP están en todos los planes, y una publicación que crea tu agente cuenta como cualquier otra.

¿Y si el agente se equivoca?

Una publicación programada se puede cancelar hasta que sale, y un borrador se puede eliminar. Cada acción queda en el registro, y la clave se puede revocar con un clic.

¿El agente puede publicar en cuentas de otras personas?

Solo en cuentas conectadas a tu organización, a través de la pantalla oficial de permisos de cada red. El agente nunca ve contraseñas.

Tu agente está listo. Tus cuentas te esperan.

Empieza gratis durante el lanzamiento, crea una clave y conecta tu agente en una línea. Tú decides cuándo publica.