tiktok-automation

Automate TikTok tasks via Rube MCP (Composio): upload/publish videos, post photos, manage content, and view user profiles/stats. Always search tools first for current schemas.

View Source
name:tiktok-automationdescription:"Automate TikTok tasks via Rube MCP (Composio): upload/publish videos, post photos, manage content, and view user profiles/stats. Always search tools first for current schemas."requires:mcp:[rube]

TikTok Automation via Rube MCP

Automate TikTok content creation and profile operations through Composio's TikTok toolkit via Rube MCP.

Prerequisites

  • Rube MCP must be connected (RUBE_SEARCH_TOOLS available)

  • Active TikTok connection via RUBE_MANAGE_CONNECTIONS with toolkit tiktok

  • Always call RUBE_SEARCH_TOOLS first to get current tool schemas
  • Setup

    Get Rube MCP: Add https://rube.app/mcp as an MCP server in your client configuration. No API keys needed — just add the endpoint and it works.


  • Verify Rube MCP is available by confirming RUBE_SEARCH_TOOLS responds

  • Call RUBE_MANAGE_CONNECTIONS with toolkit tiktok

  • If connection is not ACTIVE, follow the returned auth link to complete TikTok OAuth

  • Confirm connection status shows ACTIVE before running any workflows
  • Core Workflows

    1. Upload and Publish a Video

    When to use: User wants to upload a video and publish it to TikTok

    Tool sequence:

  • TIKTOK_UPLOAD_VIDEO or TIKTOK_UPLOAD_VIDEOS - Upload video file(s) [Required]

  • TIKTOK_FETCH_PUBLISH_STATUS - Check upload/processing status [Required]

  • TIKTOK_PUBLISH_VIDEO - Publish the uploaded video [Required]
  • Key parameters for upload:

  • video: Video file object with s3key, mimetype, name

  • title: Video title/caption
  • Key parameters for publish:

  • publish_id: ID returned from upload step

  • title: Video caption text

  • privacy_level: 'PUBLIC_TO_EVERYONE', 'MUTUAL_FOLLOW_FRIENDS', 'FOLLOWER_OF_CREATOR', 'SELF_ONLY'

  • disable_duet: Disable duet feature

  • disable_stitch: Disable stitch feature

  • disable_comment: Disable comments
  • Pitfalls:

  • Video upload and publish are TWO separate steps; upload first, then publish

  • After upload, poll FETCH_PUBLISH_STATUS until processing is complete before publishing

  • Video must meet TikTok requirements: MP4/WebM format, max 10 minutes, max 4GB

  • Caption/title has character limits; check current TikTok guidelines

  • Privacy level strings are case-sensitive and must match exactly

  • Processing may take 30-120 seconds depending on video size
  • 2. Post a Photo

    When to use: User wants to post a photo to TikTok

    Tool sequence:

  • TIKTOK_POST_PHOTO - Upload and post a photo [Required]

  • TIKTOK_FETCH_PUBLISH_STATUS - Check processing status [Optional]
  • Key parameters:

  • photo: Photo file object with s3key, mimetype, name

  • title: Photo caption text

  • privacy_level: Privacy setting for the post
  • Pitfalls:

  • Photo posts are a newer TikTok feature; availability may vary by account type

  • Supported formats: JPEG, PNG, WebP

  • Image size and dimension limits apply; check current TikTok guidelines
  • 3. List and Manage Videos

    When to use: User wants to view their published videos

    Tool sequence:

  • TIKTOK_LIST_VIDEOS - List user's published videos [Required]
  • Key parameters:

  • max_count: Number of videos to return per page

  • cursor: Pagination cursor for next page
  • Pitfalls:

  • Only returns the authenticated user's own videos

  • Response includes video metadata: id, title, create_time, share_url, duration, etc.

  • Pagination uses cursor-based approach; check for has_more and cursor in response

  • Recently published videos may not appear immediately in the list
  • 4. View User Profile and Stats

    When to use: User wants to check their TikTok profile info or account statistics

    Tool sequence:

  • TIKTOK_GET_USER_PROFILE - Get full profile information [Required]

  • TIKTOK_GET_USER_STATS - Get account statistics [Optional]

  • TIKTOK_GET_USER_BASIC_INFO - Get basic user info [Alternative]
  • Key parameters: (no required parameters; returns data for authenticated user)

    Pitfalls:

  • Profile data is for the authenticated user only; cannot view other users' profiles

  • Stats include follower count, following count, video count, likes received

  • GET_USER_PROFILE returns more details than GET_USER_BASIC_INFO

  • Stats may have slight delays; not real-time
  • 5. Check Publish Status

    When to use: User wants to check the status of a content upload or publish operation

    Tool sequence:

  • TIKTOK_FETCH_PUBLISH_STATUS - Poll for status updates [Required]
  • Key parameters:

  • publish_id: The publish ID from a previous upload/publish operation
  • Pitfalls:

  • Status values include processing, success, and failure states

  • Poll at reasonable intervals (5-10 seconds) to avoid rate limits

  • Failed publishes include error details in the response

  • Content moderation may cause delays or rejections after processing
  • Common Patterns

    Video Publish Flow

    1. Upload video via TIKTOK_UPLOAD_VIDEO -> get publish_id
  • Poll TIKTOK_FETCH_PUBLISH_STATUS with publish_id until complete

  • If status is ready, call TIKTOK_PUBLISH_VIDEO with final settings

  • Optionally poll status again to confirm publication
  • Pagination

  • Use cursor from previous response for next page

  • Check has_more boolean to determine if more results exist

  • max_count controls page size
  • Known Pitfalls

    Content Requirements:

  • Videos: MP4/WebM, max 4GB, max 10 minutes

  • Photos: JPEG/PNG/WebP

  • Captions: Character limits vary by region

  • Content must comply with TikTok community guidelines
  • Authentication:

  • OAuth tokens have scopes; ensure video.upload and video.publish are authorized

  • Tokens expire; re-authenticate if operations fail with 401
  • Rate Limits:

  • TikTok API has strict rate limits per application

  • Implement exponential backoff on 429 responses

  • Upload operations have daily limits
  • Response Parsing:

  • Response data may be nested under data or data.data

  • Parse defensively with fallback patterns

  • Publish IDs are strings; use exactly as returned
  • Quick Reference

    TaskTool SlugKey Params
    Upload videoTIKTOK_UPLOAD_VIDEOvideo, title
    Upload multiple videosTIKTOK_UPLOAD_VIDEOSvideos
    Publish videoTIKTOK_PUBLISH_VIDEOpublish_id, title, privacy_level
    Post photoTIKTOK_POST_PHOTOphoto, title, privacy_level
    List videosTIKTOK_LIST_VIDEOSmax_count, cursor
    Get profileTIKTOK_GET_USER_PROFILE(none)
    Get user statsTIKTOK_GET_USER_STATS(none)
    Get basic infoTIKTOK_GET_USER_BASIC_INFO(none)
    Check publish statusTIKTOK_FETCH_PUBLISH_STATUSpublish_id

      tiktok-automation - Agent Skills