Communitygithub.com

publora/tiktok-post

Use quando o usuário quiser enviar ou agendar um vídeo do TikTok através do Publora, com configurações de privacidade, comentários, dueto, stitch e divulgação comercial. Vídeos de 3 segundos a 10 minutos com 23+ FPS; carrosséis aceitam até 35 imagens. Aplicativos não auditados só podem publicar vídeos privados. Não é para Reels (use instagram-post).

O que é tiktok-post?

Esta skill permite que agentes de IA, como Claude Code, Cursor, Codex e OpenClaw, enviem e agendem vídeos no TikTok através do servidor MCP Publora. Ela oferece controle completo sobre privacidade, interações (comentários, dueto, stitch) e divulgação de conteúdo comercial. A skill suporta vídeos de 3 segundos a 10 minutos com taxa de quadros mínima de 23 FPS e carrosséis de até 35 imagens. Uma restrição crítica é que aplicativos TikTok não auditados só podem publicar vídeos privados (SELF_ONLY), sendo necessário aprovação do TikTok para postagens públicas. A configuração é feita via MCP ou API REST, com autenticação por chave de API, e a documentação detalhada está disponível em docs.publora.com.

Funciona com✓Claude Code✓Codex CLI✓Cursor
npx skills add https://github.com/publora/skills/tree/main/skills/tiktok-post

Perguntar na sua IA favorita

Abre um novo chat com esta habilidade de agente já pré-carregada.

Documentação

TikTok Post

Envie e agende vídeos para o TikTok usando o servidor MCP Publora. Suporta controles de privacidade, configurações de interação (comentários, dueto, stitch) e divulgação de conteúdo comercial.

Pré-requisitos

Planos: Funciona no plano gratuito Starter. Limites e preços atuais: publora.com/pricing.

Começando

  1. Crie uma conta em publora.com/register (gratuito)
  2. Conecte o TikTok via OAuth no Publora Dashboard
  3. Obtenha a chave de API em app.publora.com/dashboard/api
  4. Conecte seu agente ao servidor MCP em https://mcp.publora.com, autenticando com Authorization: Bearer sk_SUA_CHAVE_API. No Claude Code:
claude mcp add publora --transport http https://mcp.publora.com \
  --header "Authorization: Bearer sk_SUA_CHAVE_API"

Claude Desktop, Cursor, Codex, OpenClaw e o conector claude.ai precisam de um arquivo de configuração ou fluxo diferente: veja configuração do cliente para o caminho e trecho exatos.

Fallback da API REST

Se o servidor MCP estiver indisponível ou retornar erros, use a API REST diretamente:

URL Base: https://api.publora.com/api/v1

Autenticação: Use o cabeçalho x-publora-key (NÃO Authorization: Bearer):

# Obtenha suas plataformas conectadas
curl -X GET "https://api.publora.com/api/v1/platform-connections" \
  -H "x-publora-key: sk_sua_chave_api"

# Crie uma postagem
curl -X POST "https://api.publora.com/api/v1/create-post" \
  -H "x-publora-key: sk_sua_chave_api" \
  -H "Content-Type: application/json" \
  -d '{
    "platforms": ["tiktok-99887766"],
    "content": "Legenda do vídeo aqui #hashtag",
    "scheduledTime": "2026-03-25T10:00:00Z",
    "platformSettings": {
      "tiktok": {
        "viewerSetting": "PUBLIC_TO_EVERYONE",
        "allowComments": true
      }
    }
  }'

Formato do ID da Plataforma: tiktok-{id} onde {id} vem da resposta de /platform-connections.

Exemplos de IDs: tiktok-99887766, tiktok-123456789

📖 Documentação completa da API: docs.publora.com

Limites da Plataforma (API vs Aplicativo Nativo)

Limites críticos da API que diferem do aplicativo nativo do TikTok:

Requisitos de Vídeo

EspecificaçãoLimite da APIAplicativo Nativo
Duração máxima10 minutos60 minutos
Duração mínima3 segundos3 segundos
Tamanho máximo do arquivo4 GB4 GB
Taxa de quadros mínima23 FPS23 FPS
FormatosMP4, MOV, WebMMP4, MOV, WebM

Limites de Legenda

ElementoLimite da APIAplicativo Nativo
Tamanho da legenda2.200 caracteres4.000 caracteres
HashtagsIncluídas na contagem da legendaIncluídas na contagem da legenda

Limites de Taxa

LimiteValor
Postagens por dia15-20
Vídeos por minutoMáx. 2

Ferramentas Disponíveis

create_post

Crie uma nova postagem no TikTok.

Parâmetros:

  • platforms: Array com o ID da sua conexão TikTok (ex.: ["tiktok-99887766"])
  • content: Legenda do vídeo (até 2.200 caracteres)
  • scheduledTime: Data/hora UTC no formato ISO 8601. Opcional: omita e a postagem é criada como rascunho. Envie um horário futuro para agendar. Um horário com cinco ou mais minutos no passado é rejeitado com SCHEDULED_TIME_IN_PAST; para postagem imediata, use o horário atual mais um minuto.
  • mediaUrls: até 10 URLs de imagem ou vídeo públicas https. Publora as baixa no servidor e as anexa antes da validação, então mídia e agendamento ocorrem em uma única chamada. Esta é a alternativa única ao fluxo de rascunho seguido de get_upload_url e complete_media. A ingestão é limitada a 60 URLs por hora.

get_upload_url

Obtenha uma URL pré-assinada para upload de vídeo.

Parâmetros:

  • postGroupId: ID da postagem para anexar o vídeo
  • fileName: Nome do arquivo de vídeo (ex.: "video.mp4")
  • contentType: video/mp4, video/quicktime ou video/webm
  • type: "video"

complete_media

Finalize um arquivo enviado via get_upload_url, após o PUT pré-assinado ser bem-sucedido. Opcional, porque o agendamento também finaliza mídia pendente, mas chamá-lo cedo expõe erros de formato e sonda antes da publicação. Não é necessário para mídia anexada com mediaUrls.

Parâmetros:

  • mediaId: o ID retornado por get_upload_url

list_connections

Liste suas contas conectadas com seus IDs de plataforma. Chame esta função primeiro e copie os IDs exatamente como retornados; eles nunca são adivinháveis.

list_posts / get_post / update_post / delete_post

Gerencie postagens agendadas e rascunhos. update_post também corrige content e platforms em um rascunho ou postagem agendada, então corrigir um erro de digitação ou redirecionar não significa mais deletar e recriar. delete_media e prune_media_reference limpam arquivos enviados.

Configurações da Plataforma (via API REST)

O TikTok tem 7 configurações específicas da plataforma controladas via platformSettings:

{
  "platformSettings": {
    "tiktok": {
      "viewerSetting": "PUBLIC_TO_EVERYONE",
      "allowComments": true,
      "allowDuet": false,
      "allowStitch": false,
      "commercialContent": false,
      "brandOrganic": false,
      "brandedContent": false
    }
  }
}

Configurações de Visualização (Obrigatório)

ValorDescrição
PUBLIC_TO_EVERYONEQualquer um pode ver (padrão)
MUTUAL_FOLLOW_FRIENDSApenas seguidores mútuos
FOLLOWER_OF_CREATORApenas seus seguidores
SELF_ONLYApenas você (como rascunho)

Configurações de Interação

ConfiguraçãoPadrãoDescrição
allowCommentstrueSe os visualizadores podem comentar
allowDuetfalseSe os visualizadores podem criar Duetos
allowStitchfalseSe os visualizadores podem usar Stitch

Configurações de Conteúdo Comercial

ConfiguraçãoPadrãoDescrição
commercialContentfalseEste é conteúdo comercial?
brandOrganicfalsePromoção orgânica de marca
brandedContentfalseParceria paga/patrocinado

Nota: Se commercialContent for true, pelo menos um de brandOrganic ou brandedContent também deve ser true.

Nota: platformSettings é aceito pelas ferramentas MCP create_post e update_post, bem como pela API REST. O esquema é estrito: uma plataforma ou chave digitada incorretamente é rejeitada com um erro de validação, em vez de ser ignorada silenciosamente.

Restrições Críticas

1. Aplicativos Não Auditados = Apenas PRIVADO

CRÍTICO: Se seu aplicativo TikTok não passou pelo processo de revisão do TikTok, você só pode postar vídeos PRIVADOS (SELF_ONLY). Todos os outros valores de viewerSetting serão substituídos por SELF_ONLY.

Para postar vídeos públicos, seu aplicativo deve ser auditado pelo TikTok.

2. Mídia Obrigatória, Vídeo ou Carrossel de Imagens

O TikTok NÃO suporta postagens apenas com texto: toda postagem precisa de mídia.

Ele aceita carrosséis de imagens: até 35 imagens, JPEG, PNG ou WebP, 20 MB cada. Uma postagem é um carrossel ou um único vídeo, nunca ambos.

3. Mínimo de 23 FPS

Vídeos abaixo de 23 quadros por segundo serão rejeitados pelo TikTok.

Exemplos

Postagem Básica de Vídeo

Publique este vídeo no TikTok:
"Como construímos nossa startup em 60 segundos #startup #tech #coding"

Rascunho Privado (Teste)

Envie este vídeo como rascunho privado para o TikTok (só eu posso ver):
"Testando novo formato de conteúdo"

Use viewerSetting: "SELF_ONLY" para testar antes de tornar público.

Conteúdo Marcado

Publique este vídeo patrocinado no TikTok com divulgação adequada:
"Estou amando este novo produto da @marca! #publi #patrocinado"

Defina commercialContent: true e brandedContent: true para parcerias pagas.

Postagem Agendada

Agende este vídeo do TikTok para amanhã às 18h:
"Vibes de fim de semana chegando! #fimdesemana #diversao"

Formatos de Vídeo Suportados

FormatoRecomendadoNotas
MP4SimMais confiável
MOVSimFormato Apple
WebMSimFormato web
AVIAceito pelo PubloraPode ser rejeitado pelo TikTok
MKVAceito pelo PubloraPode ser rejeitado pelo TikTok

Recomendação: Use MP4 para melhor compatibilidade.

Melhores Práticas

Conteúdo

  1. Gancho nos primeiros 3 segundos: Prenda a atenção imediatamente
  2. Duração ideal: 15-60 segundos para melhor engajamento
  3. Sons em alta: Use áudio em tendência quando possível
  4. Estratégia de hashtags: 3-5 hashtags relevantes

Técnico

  1. Vídeo vertical: Proporção 9:16 tem melhor desempenho
  2. Alta qualidade: Pelo menos 720p de resolução
  3. 23+ FPS: Garanta reprodução suave
  4. Formato MP4: Formato mais confiável

Horários

  • Melhores horários: 7-9h, 12-15h, 19-23h no fuso horário alvo
  • Frequência: 1-3 postagens por dia para crescimento
  • Consistência: Cronograma regular de postagens ajuda o algoritmo

Solução de Problemas

ErroCausaSolução
unaudited_client_can_only_post_to_private_accountsAplicativo não aprovadoEnvie o aplicativo para revisão do TikTok ou use SELF_ONLY
spam_risk_too_many_postsLimite diário atingidoAguarde 24 horas
duration_check_failedVídeo muito longo/curtoGaranta entre 3 segundos e 10 minutos
file_format_check_failedFormato de vídeo incorretoUse MP4, MOV ou WebM
"23 FPS required"Taxa de quadros baixaRecodifique o vídeo com 23+ FPS
"TikTok requires selecting who can view"Faltando viewerSettingSempre inclua viewerSetting em platformSettings

Individual skills in this repo

This repo contains 8 individual skills — each has its own dedicated page.

publora/bluesky-post

Use when the user wants to post or schedule to Bluesky through Publora. Handles the 300-character cap, auto-detected hashtags and links, up to 4 images, and videos. Alt text cannot be set through the API. Needs a Bluesky app password, never the main password. Not for Mastodon (use social-post).

publora/instagram-post

Use when the user wants to post or schedule to Instagram through Publora: a single image, a 2-10 image carousel, a Reel or a Story. Requires a Business account and an image or video; text-only posts are rejected by the API. Not for Threads (use threads-post).

publora/linkedin-analytics

Analyze LinkedIn performance and manage engagement through Publora. Use when the user asks how a LinkedIn post or account performed (impressions, reach, reactions, comments, reshares, follower growth) or wants to react, comment, reshare or resolve an @mention. Statistics run over the REST API, engagement over MCP tools. Not for creating posts (use linkedin-post).

publora/linkedin-post

Use when the user wants to publish or schedule a LinkedIn post through Publora: text, a multi-image grid, a video, a PDF document, or @mentions. Not for analytics, reactions, comments or reshares (use linkedin-analytics), and not for other platforms.

publora/social-post

Use when the user wants to post or schedule to YouTube, a Facebook Page or Mastodon through Publora. YouTube needs a video on every post, Facebook publishes to Pages only, Mastodon caps at 500 characters. Not for the platforms that have their own skill.

publora/telegram-post

Use when the user wants to post or schedule to a Telegram channel or group through Publora, using a bot. Covers Telegram markdown, silent delivery, link previews and forward protection. Bot API caps media captions at 1,024 characters and videos at 50 MB. Not for other platforms (each has its own skill).

publora/threads-post

Create and schedule Threads posts with image carousels and reply control via Publora MCP. Use when the user wants to post to Meta's Threads. Multi-part threading is currently disabled by the platform, so long content stays a single post. Not for Instagram (use instagram-post) or X threads (use x-post).

publora/x-post

Use when the user wants to post or schedule to X (Twitter) through Publora, including threads auto-split past 280 characters, up to 4 images, or a video up to 140 seconds. X needs a paid Publora plan. Not for Threads or Bluesky (each has its own skill).

Habilidades Relacionadas