DocsPublishingAccounts and posts
Publishing

Work with publishing accounts and posts

Select an account that can publish, create a TikTok draft from reviewed HTTPS media, and inspect or update it before scheduling.

On this page

Publishing starts with a connected account and a draft. MCP currently creates TikTok drafts with VIDEO, IMAGE, or CAROUSEL content and HTTPS media URLs. Creating or updating a draft does not schedule or publish it.

Always read can_publish and publish_unavailable_reason from account discovery. For an existing post, use the compact list to find it and then load its full detail before changing captions, media, or account selection.

01

Find an account that can publish

List accounts before creating a post for an unfamiliar account. Proceed only when the selected account returns can_publish: true; otherwise show publish_unavailable_reason and stop.

{
  "tool": "list_console_publishing_accounts",
  "arguments": {}
}
Publishable account summary
{
  "accounts": [
    {
      "id": "33333333-3333-4333-8333-333333333333",
      "platform": "TIKTOK",
      "username": "brandstudio",
      "is_active": true,
      "is_verified": true,
      "can_publish": true,
      "publish_unavailable_reason": null
    }
  ],
  "count": 1
}
02

Create a draft from reviewed media

TIKTOK

Current draft creation platform.

VIDEO, IMAGE, CAROUSEL

Supported draft content types.

HTTPS media

Supply at least one externally reachable media URL.

{
  "tool": "create_console_publishing_post",
  "arguments": {
    "account_id": "33333333-3333-4333-8333-333333333333",
    "platform": "TIKTOK",
    "content_type": "VIDEO",
    "media_urls": [
      "https://cdn.example.com/product-reveal.mp4"
    ],
    "caption": "A closer look at the new release.",
    "hashtags": [
      "launch",
      "product"
    ]
  }
}
Created draft
{
  "post": {
    "id": "22222222-2222-4222-8222-222222222222",
    "platform": "TIKTOK",
    "content_type": "VIDEO",
    "status": "DRAFT",
    "media_urls": [
      "https://cdn.example.com/product-reveal.mp4"
    ],
    "caption": "A closer look at the new release."
  },
  "next": "Use schedule_console_publishing_post when the draft is approved."
}
03

Inspect and update the draft

Get the full post before changing it. Omitted patch fields stay unchanged, while explicit null clears nullable fields. Re-read after the write and before repeating an uncertain mutation.

{
  "tool": "get_console_publishing_post",
  "arguments": {
    "post_id": "22222222-2222-4222-8222-222222222222"
  }
}
04

Understand post status

DRAFT, PENDING_REVIEW, APPROVEDPreparationReview the full post and account availability before scheduling.
SCHEDULED, QUEUED, PUBLISHINGActiveRead the current post and scheduled action; do not schedule it again.
PUBLISHEDCompleteRead the post and analytics; no further scheduling action is needed.
FAILEDFailedInspect the post and error before deciding whether new scheduling is intended.
ARCHIVEDTerminalDo not schedule an archived post.