[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill-68ff30fe-d86d-4225-b879-9c808a288c03":3,"$fLLr8Op1R6EeIHFR8HcJbiR7uMRRcOFFH1EOAYxaCdHo":43},{"id":4,"title":5,"description":6,"categoryId":7,"moduleId":8,"tags":9,"prompt":10,"icon":11,"source":12,"sourceUrl":13,"authorId":14,"authorName":15,"isPublic":16,"stars":17,"runs":18,"createdAt":19,"updatedAt":19,"module":20,"category":27,"packages":34},"68ff30fe-d86d-4225-b879-9c808a288c03","tiktok-automation","通过Rube MCP（Composio）自动化TikTok任务：上传\u002F发布视频、发布照片、管理内容、查看用户资料\u002F统计数据。始终首先搜索当前架构的工具。","cat_prod_automation","mod_productivity","sickn33,productivity","---\nname: tiktok-automation\ndescription: \"Automate TikTok tasks via Rube MCP (Composio): upload\u002Fpublish videos, post photos, manage content, and view user profiles\u002Fstats. Always search tools first for current schemas.\"\nrisk: critical\nsource: community\ndate_added: \"2026-02-27\"\n---\n\n# TikTok Automation via Rube MCP\n\nAutomate TikTok content creation and profile operations through Composio's TikTok toolkit via Rube MCP.\n\n## Prerequisites\n\n- Rube MCP must be connected (RUBE_SEARCH_TOOLS available)\n- Active TikTok connection via `RUBE_MANAGE_CONNECTIONS` with toolkit `tiktok`\n- Always call `RUBE_SEARCH_TOOLS` first to get current tool schemas\n\n## Setup\n\n**Get Rube MCP**: Add `https:\u002F\u002Frube.app\u002Fmcp` as an MCP server in your client configuration. No API keys needed — just add the endpoint and it works.\n\n\n1. Verify Rube MCP is available by confirming `RUBE_SEARCH_TOOLS` responds\n2. Call `RUBE_MANAGE_CONNECTIONS` with toolkit `tiktok`\n3. If connection is not ACTIVE, follow the returned auth link to complete TikTok OAuth\n4. Confirm connection status shows ACTIVE before running any workflows\n\n## Core Workflows\n\n### 1. Upload and Publish a Video\n\n**When to use**: User wants to upload a video and publish it to TikTok\n\n**Tool sequence**:\n1. `TIKTOK_UPLOAD_VIDEO` or `TIKTOK_UPLOAD_VIDEOS` - Upload video file(s) [Required]\n2. `TIKTOK_FETCH_PUBLISH_STATUS` - Check upload\u002Fprocessing status [Required]\n3. `TIKTOK_PUBLISH_VIDEO` - Publish the uploaded video [Required]\n\n**Key parameters for upload**:\n- `video`: Video file object with `s3key`, `mimetype`, `name`\n- `title`: Video title\u002Fcaption\n\n**Key parameters for publish**:\n- `publish_id`: ID returned from upload step\n- `title`: Video caption text\n- `privacy_level`: 'PUBLIC_TO_EVERYONE', 'MUTUAL_FOLLOW_FRIENDS', 'FOLLOWER_OF_CREATOR', 'SELF_ONLY'\n- `disable_duet`: Disable duet feature\n- `disable_stitch`: Disable stitch feature\n- `disable_comment`: Disable comments\n\n**Pitfalls**:\n- Video upload and publish are TWO separate steps; upload first, then publish\n- After upload, poll FETCH_PUBLISH_STATUS until processing is complete before publishing\n- Video must meet TikTok requirements: MP4\u002FWebM format, max 10 minutes, max 4GB\n- Caption\u002Ftitle has character limits; check current TikTok guidelines\n- Privacy level strings are case-sensitive and must match exactly\n- Processing may take 30-120 seconds depending on video size\n\n### 2. Post a Photo\n\n**When to use**: User wants to post a photo to TikTok\n\n**Tool sequence**:\n1. `TIKTOK_POST_PHOTO` - Upload and post a photo [Required]\n2. `TIKTOK_FETCH_PUBLISH_STATUS` - Check processing status [Optional]\n\n**Key parameters**:\n- `photo`: Photo file object with `s3key`, `mimetype`, `name`\n- `title`: Photo caption text\n- `privacy_level`: Privacy setting for the post\n\n**Pitfalls**:\n- Photo posts are a newer TikTok feature; availability may vary by account type\n- Supported formats: JPEG, PNG, WebP\n- Image size and dimension limits apply; check current TikTok guidelines\n\n### 3. List and Manage Videos\n\n**When to use**: User wants to view their published videos\n\n**Tool sequence**:\n1. `TIKTOK_LIST_VIDEOS` - List user's published videos [Required]\n\n**Key parameters**:\n- `max_count`: Number of videos to return per page\n- `cursor`: Pagination cursor for next page\n\n**Pitfalls**:\n- Only returns the authenticated user's own videos\n- Response includes video metadata: id, title, create_time, share_url, duration, etc.\n- Pagination uses cursor-based approach; check for `has_more` and `cursor` in response\n- Recently published videos may not appear immediately in the list\n\n### 4. View User Profile and Stats\n\n**When to use**: User wants to check their TikTok profile info or account statistics\n\n**Tool sequence**:\n1. `TIKTOK_GET_USER_PROFILE` - Get full profile information [Required]\n2. `TIKTOK_GET_USER_STATS` - Get account statistics [Optional]\n3. `TIKTOK_GET_USER_BASIC_INFO` - Get basic user info [Alternative]\n\n**Key parameters**: (no required parameters; returns data for authenticated user)\n\n**Pitfalls**:\n- Profile data is for the authenticated user only; cannot view other users' profiles\n- Stats include follower count, following count, video count, likes received\n- `GET_USER_PROFILE` returns more details than `GET_USER_BASIC_INFO`\n- Stats may have slight delays; not real-time\n\n### 5. Check Publish Status\n\n**When to use**: User wants to check the status of a content upload or publish operation\n\n**Tool sequence**:\n1. `TIKTOK_FETCH_PUBLISH_STATUS` - Poll for status updates [Required]\n\n**Key parameters**:\n- `publish_id`: The publish ID from a previous upload\u002Fpublish operation\n\n**Pitfalls**:\n- Status values include processing, success, and failure states\n- Poll at reasonable intervals (5-10 seconds) to avoid rate limits\n- Failed publishes include error details in the response\n- Content moderation may cause delays or rejections after processing\n\n## Common Patterns\n\n### Video Publish Flow\n\n```\n1. Upload video via TIKTOK_UPLOAD_VIDEO -> get publish_id\n2. Poll TIKTOK_FETCH_PUBLISH_STATUS with publish_id until complete\n3. If status is ready, call TIKTOK_PUBLISH_VIDEO with final settings\n4. Optionally poll status again to confirm publication\n```\n\n### Pagination\n\n- Use `cursor` from previous response for next page\n- Check `has_more` boolean to determine if more results exist\n- `max_count` controls page size\n\n## Known Pitfalls\n\n**Content Requirements**:\n- Videos: MP4\u002FWebM, max 4GB, max 10 minutes\n- Photos: JPEG\u002FPNG\u002FWebP\n- Captions: Character limits vary by region\n- Content must comply with TikTok community guidelines\n\n**Authentication**:\n- OAuth tokens have scopes; ensure video.upload and video.publish are authorized\n- Tokens expire; re-authenticate if operations fail with 401\n\n**Rate Limits**:\n- TikTok API has strict rate limits per application\n- Implement exponential backoff on 429 responses\n- Upload operations have daily limits\n\n**Response Parsing**:\n- Response data may be nested under `data` or `data.data`\n- Parse defensively with fallback patterns\n- Publish IDs are strings; use exactly as returned\n\n## Quick Reference\n\n| Task | Tool Slug | Key Params |\n|------|-----------|------------|\n| Upload video | TIKTOK_UPLOAD_VIDEO | video, title |\n| Upload multiple videos | TIKTOK_UPLOAD_VIDEOS | videos |\n| Publish video | TIKTOK_PUBLISH_VIDEO | publish_id, title, privacy_level |\n| Post photo | TIKTOK_POST_PHOTO | photo, title, privacy_level |\n| List videos | TIKTOK_LIST_VIDEOS | max_count, cursor |\n| Get profile | TIKTOK_GET_USER_PROFILE | (none) |\n| Get user stats | TIKTOK_GET_USER_STATS | (none) |\n| Get basic info | TIKTOK_GET_USER_BASIC_INFO | (none) |\n| Check publish status | TIKTOK_FETCH_PUBLISH_STATUS | publish_id |\n\n## When to Use\nThis skill is applicable to execute the workflow or actions described in the overview.\n\n## Limitations\n- Use this skill only when the task clearly matches the scope described above.\n- Do not treat the output as a substitute for environment-specific validation, testing, or expert review.\n- Stop and ask for clarification if required inputs, permissions, safety boundaries, or success criteria are missing.\n","","imported","https:\u002F\u002Fgithub.com\u002Fsickn33\u002Fantigravity-awesome-skills","user_system_seed","SkillOPIC",true,180,1619,"2026-05-16 13:44:27",{"id":8,"name":21,"slug":22,"icon":23,"description":24,"sort":25,"createdAt":26},"效率工具","productivity","mdi-lightning-bolt-outline","文档处理、数据分析、自动化工作流",4,"2026-05-16 12:53:40",{"id":7,"name":28,"slug":29,"icon":30,"description":31,"moduleId":8,"sort":32,"skillCount":33,"createdAt":26},"自动化","automation","mdi-robot-outline","工作流自动化、批处理",3,101,[35],{"id":36,"skillId":4,"version":37,"fileName":38,"fileSize":39,"filePath":40,"fileHash":41,"manifest":42,"createdAt":19},"5e641398-6e87-45bf-a829-3e803c05c3b4","1.0.0","tiktok-automation.zip",3017,"uploads\u002Fskills\u002F68ff30fe-d86d-4225-b879-9c808a288c03\u002Ftiktok-automation.zip","f9442bc42c295da4a878242a7a06e56c578abec596bc85096bd97405b019e85b","[{\"path\":\"SKILL.md\",\"isDirectory\":false,\"size\":7093}]",{"code":44,"message":45,"data":46},200,"success",{"items":47,"stats":48,"page":51},[],{"averageRating":49,"totalRatings":49,"ratingCounts":50},0,[49,49,49,49,49],{"limit":52,"offset":49,"hasMore":53,"nextOffset":52,"ratedOnly":16},15,false]