naftiko: 1.0.0-alpha2 info: label: TikTok Content Creation description: 'Unified workflow capability for creating and publishing content on TikTok. Combines the Display API and Content Posting API to support the full content lifecycle: discovering user profile settings, initiating video uploads, and monitoring publish status. Designed for app developers, content management platforms, and media tools.' tags: - TikTok - Content Creation - Publishing - Social Media - Video created: '2026-05-03' modified: '2026-05-06' binds: - namespace: env keys: TIKTOK_ACCESS_TOKEN: TIKTOK_ACCESS_TOKEN capability: consumes: - type: http namespace: tiktok-display baseUri: https://open.tiktokapis.com description: TikTok Display API for accessing user profiles and video metadata authentication: type: bearer token: '{{TIKTOK_ACCESS_TOKEN}}' resources: - name: user path: /v2/user description: TikTok user profile operations operations: - name: get-user-info method: GET description: Retrieve a TikTok user's basic profile information inputParameters: - name: fields in: query type: string required: true description: Comma-separated list of fields to return outputRawFormat: json outputParameters: - name: result type: object value: $. - name: video path: /v2/video description: TikTok video metadata operations operations: - name: list-videos method: POST description: Retrieve a paginated list of user's most recent public videos inputParameters: - name: fields in: query type: string required: true description: Comma-separated list of fields to return outputRawFormat: json outputParameters: - name: result type: object value: $. body: type: json data: max_count: '{{tools.max_count}}' cursor: '{{tools.cursor}}' - name: query-videos method: POST description: Retrieve metadata for specific videos by ID inputParameters: - name: fields in: query type: string required: true outputRawFormat: json outputParameters: - name: result type: object value: $. body: type: json data: filters: video_ids: '{{tools.video_ids}}' - type: http namespace: tiktok-posting baseUri: https://open.tiktokapis.com description: TikTok Content Posting API for publishing video content authentication: type: bearer token: '{{TIKTOK_ACCESS_TOKEN}}' resources: - name: post path: /v2/post/publish description: Video publish operations operations: - name: init-video-publish method: POST description: Initiate a video upload or direct post to TikTok outputRawFormat: json outputParameters: - name: result type: object value: $. body: type: json data: source_info: source: '{{tools.source}}' video_url: '{{tools.video_url}}' chunk_size: '{{tools.chunk_size}}' total_chunk_count: '{{tools.total_chunk_count}}' post_info: title: '{{tools.title}}' privacy_level: '{{tools.privacy_level}}' disable_duet: '{{tools.disable_duet}}' disable_comment: '{{tools.disable_comment}}' disable_stitch: '{{tools.disable_stitch}}' - name: get-publish-status method: POST description: Poll the status of a video publish job outputRawFormat: json outputParameters: - name: result type: object value: $. body: type: json data: publish_id: '{{tools.publish_id}}' - name: query-creator-info method: POST description: Retrieve creator content posting settings outputRawFormat: json outputParameters: - name: result type: object value: $. exposes: - type: rest port: 8080 namespace: tiktok-content-creation-api description: Unified REST API for TikTok content creation workflows. resources: - path: /v1/users/me name: current-user description: Current user profile operations: - method: GET name: get-user-info description: Get authenticated user's TikTok profile call: tiktok-display.get-user-info with: fields: rest.fields outputParameters: - type: object mapping: $. - path: /v1/videos name: videos description: User video listings operations: - method: GET name: list-videos description: List user's recent TikTok videos call: tiktok-display.list-videos with: fields: rest.fields outputParameters: - type: object mapping: $. - path: /v1/videos/query name: video-query description: Query specific videos by ID operations: - method: POST name: query-videos description: Query TikTok video metadata by video IDs call: tiktok-display.query-videos outputParameters: - type: object mapping: $. - path: /v1/posts/creator-info name: creator-info description: Creator posting configuration operations: - method: GET name: query-creator-info description: Get creator's content posting settings call: tiktok-posting.query-creator-info outputParameters: - type: object mapping: $. - path: /v1/posts/init name: post-init description: Initiate video post operations: - method: POST name: init-video-publish description: Initiate a TikTok video upload or direct post call: tiktok-posting.init-video-publish outputParameters: - type: object mapping: $. - path: /v1/posts/status name: post-status description: Video publish status operations: - method: POST name: get-publish-status description: Check the status of a video publish job call: tiktok-posting.get-publish-status with: publish_id: rest.publish_id outputParameters: - type: object mapping: $. - type: mcp port: 9090 namespace: tiktok-content-creation-mcp transport: http description: MCP server for AI-assisted TikTok content creation. tools: - name: get-user-info description: Retrieve authenticated user's TikTok profile information hints: readOnly: true idempotent: true call: tiktok-display.get-user-info with: fields: tools.fields outputParameters: - type: object mapping: $. - name: list-videos description: List a user's most recent TikTok videos hints: readOnly: true idempotent: true call: tiktok-display.list-videos with: fields: tools.fields outputParameters: - type: object mapping: $. - name: query-videos description: Query TikTok video metadata by specific video IDs hints: readOnly: true idempotent: true call: tiktok-display.query-videos outputParameters: - type: object mapping: $. - name: query-creator-info description: Get TikTok creator's content posting settings and permissions hints: readOnly: true idempotent: true call: tiktok-posting.query-creator-info outputParameters: - type: object mapping: $. - name: init-video-publish description: Initiate a TikTok video upload or direct post to a user's account hints: readOnly: false destructive: false call: tiktok-posting.init-video-publish outputParameters: - type: object mapping: $. - name: get-publish-status description: Check the current status of a TikTok video publish job hints: readOnly: true idempotent: true call: tiktok-posting.get-publish-status with: publish_id: tools.publish_id outputParameters: - type: object mapping: $.