MCP Server

MCP Server TikTok Để mọi tác nhân AI đăng lên TikTok

Để AI agent đăng video, carousel ảnh và bản nháp lên TikTok, đặt quyền riêng tư và nhãn AI, kiểm tra trạng thái xử lý và lấy số liệu hiệu suất, chỉ từ một prompt.

mcp.json
{
  "mcpServers": {
    "upload-post": {
      "url": "https://mcp.upload-post.com/mcp",
      "headers": {
        "Authorization": "ApiKey YOUR_API_KEY"
      }
    }
  }
}

Các công cụ TikTok mà tác nhân có thể gọi

Một phần của MCP server Upload-Post. Agent tự chọn đúng tool dựa trên prompt của bạn.

Công cụ Chức năng
upload_video Đăng video lên TikTok với caption, quyền riêng tư và tùy chọn lên lịch
upload_photos Đăng carousel ảnh lên TikTok, tối đa 35 ảnh
tiktok_publishing_settings Xem tài khoản cho phép những mức quyền riêng tư nào, độ dài video tối đa và trạng thái bật/tắt bình luận, Duet, Stitch
tiktok_music_trending / tiktok_music_search / tiktok_location_search Tìm một bản nhạc trong Commercial Music Library hoặc một địa điểm để gắn vào bài đăng
get_status Theo dõi trạng thái tải lên và xử lý
get_post_comments / create_comment / comment_action Đọc, trả lời, thích, ghim hoặc ẩn bình luận trên video của bạn
list_scheduled / edit_scheduled / cancel_scheduled Quản lý các bài TikTok đã lên lịch
get_analytics / get_post_analytics Lấy lượt xem, lượt thích và tương tác theo từng bài hoặc theo tài khoản
submit_ffmpeg_job Cắt hoặc mã hóa lại clip trước khi đăng

Bạn cần API trực tiếp thay vì MCP? Xem trang API TikTok.

Thêm MCP server TikTok vào Claude hoặc Cursor

Một server host sẵn tại mcp.upload-post.com/mcp. Đăng nhập bằng OAuth hoặc dán API key Upload-Post, tùy client của bạn hỗ trợ cách nào.

Claude Desktop

Mở file từ Settings > Developer > Edit Config, dán đoạn cấu hình vào rồi khởi động lại Claude Desktop. Cấu hình này chạy package npm mã nguồn mở @upload-post/mcp ngay trên máy bạn và cần Node.js 18 trở lên.

Không muốn dùng file? Trên claude.ai hoặc Claude Desktop, thêm connector chính thức của Upload-Post từ thư mục của Claude (claude.ai/directory/upload-post, hoặc Customize > Connectors rồi tìm Upload-Post), nhấn Connect rồi đăng nhập bằng tài khoản Upload-Post (OAuth).

claude_desktop_config.json
{
  "mcpServers": {
    "upload-post": {
      "command": "npx",
      "args": ["-y", "@upload-post/mcp"],
      "env": { "UPLOAD_POST_API_KEY": "YOUR_API_KEY" }
    }
  }
}

Claude Code

Muốn dùng OAuth? Bỏ dòng --header, sau đó chạy /mcp trong Claude Code và đăng nhập. Thêm --scope user để dùng server ở mọi project.

Terminal
claude mcp add --transport http upload-post https://mcp.upload-post.com/mcp \
  --header "Authorization: ApiKey YOUR_API_KEY"

Cursor

Đặt file ở .cursor/mcp.json nếu chỉ dùng cho một project, hoặc ~/.cursor/mcp.json để dùng cho mọi project, rồi tải lại Cursor.

.cursor/mcp.json
{
  "mcpServers": {
    "upload-post": {
      "url": "https://mcp.upload-post.com/mcp",
      "headers": {
        "Authorization": "ApiKey YOUR_API_KEY"
      }
    }
  }
}

API key của bạn nằm ở mục API Keys trong app.upload-post.com. Trước bài đăng đầu tiên, hãy kết nối TikTok với một profile trong dashboard: agent sẽ truyền tên profile đó vào tham số user. Trên ChatGPT, tìm Upload-Post trong mục Apps và bấm Connect, không cần file cấu hình.

Ví dụ: đăng clip làm bằng AI với đúng nhãn

Ví dụ minh họa với tên, ID và URL giả định, không phải hội thoại thật của khách hàng. Tên tool và tham số là đúng những gì server cung cấp.

Bạn

Đăng https://example.com/clips/launch.mp4 lên TikTok bằng profile "studio" của tôi. Caption: "Trình chỉnh sửa mới của chúng tôi trong 30 giây". Video làm bằng AI nên hãy gắn nhãn, và tắt Duet.

  1. Gọi tool lần 1

    tiktok_publishing_settings

    Kiểm tra tài khoản này cho phép những mức quyền riêng tư nào trước khi đăng.

    arguments
    {
      "profile": "studio"
    }
    kết quả (rút gọn)
    {
      "success": true,
      "privacy_level_options": [
        "PUBLIC_TO_EVERYONE",
        "MUTUAL_FOLLOW_FRIENDS",
        "FOLLOWER_OF_CREATOR",
        "SELF_ONLY"
      ],
      "max_video_post_duration_sec": 600,
      "comment_disabled": false,
      "duet_disabled": false,
      "stitch_disabled": false
    }
  2. Gọi tool lần 2

    upload_video

    Đăng ở chế độ nền và trả về request_id để theo dõi.

    arguments
    {
      "videoPathOrUrl": "https://example.com/clips/launch.mp4",
      "user": "studio",
      "platforms": [
        "tiktok"
      ],
      "title": "Trình chỉnh sửa mới của chúng tôi trong 30 giây",
      "asyncUpload": true,
      "platformOptions": {
        "tiktokPrivacyLevel": "PUBLIC_TO_EVERYONE",
        "tiktokDisableDuet": true,
        "tiktokIsAigc": true
      }
    }
    kết quả (rút gọn)
    {
      "success": true,
      "message": "Upload initiated successfully in background.",
      "request_id": "9f3c1a7e-5b2d-4c8e-a1f0-2d7b6e4c9a10",
      "total_platforms": 1
    }
  3. Gọi tool lần 3

    get_status

    Kiểm tra lại trạng thái cho đến khi TikTok xác nhận bài đăng.

    arguments
    {
      "requestId": "9f3c1a7e-5b2d-4c8e-a1f0-2d7b6e4c9a10"
    }
    kết quả (rút gọn)
    {
      "request_id": "9f3c1a7e-5b2d-4c8e-a1f0-2d7b6e4c9a10",
      "status": "completed",
      "completed": 1,
      "total": 1,
      "results": [
        {
          "platform": "tiktok",
          "success": true
        }
      ]
    }

Trợ lý

Đã đăng lên TikTok bằng profile "studio", có nhãn nội dung do AI tạo và đã tắt Duet.

  • Nếu TikTok từ chối chính file đó (định dạng, độ dài, tốc độ khung hình), get_status sẽ báo tiktok_media_rejected; thử lại cùng file vẫn sẽ lỗi. Còn tiktok_publish_failed thì đáng để thử lại.
  • Video phải nằm ở một URL công khai. MCP server host sẵn không đọc được file trên máy tính của bạn.

Bản nháp và carousel ảnh

upload_video: Gửi clip vào mục bản nháp TikTok (hộp thư) để bạn thêm âm thanh và đăng từ app. Ở chế độ nháp, TikTok bỏ qua caption và quyền riêng tư gửi qua API.

{
  "videoPathOrUrl": "https://example.com/clips/launch.mp4",
  "user": "studio",
  "platforms": [
    "tiktok"
  ],
  "platformOptions": {
    "tiktokPostMode": "MEDIA_UPLOAD"
  }
}

upload_photos: Carousel ảnh lấy ảnh đầu tiên làm ảnh bìa và tự động thêm nhạc.

{
  "photosPathsOrUrls": [
    "https://example.com/slides/1.jpg",
    "https://example.com/slides/2.jpg",
    "https://example.com/slides/3.jpg"
  ],
  "user": "studio",
  "platforms": [
    "tiktok"
  ],
  "title": "3 lỗi edit video hay gặp",
  "description": "Vuốt để xem cách sửa từng lỗi.",
  "platformOptions": {
    "tiktokPrivacyLevel": "PUBLIC_TO_EVERYONE",
    "tiktokPhotoCoverIndex": 0,
    "tiktokAutoAddMusic": true
  }
}

API chính thức của TikTok, qua một ứng dụng đã được duyệt

MCP server TikTok truy cập tài khoản của bạn như thế nào.

Mọi bài đăng đều đi qua Content Posting API của TikTok bằng ứng dụng TikTok đã được duyệt của Upload-Post. Bạn kết nối tài khoản TikTok một lần trong dashboard Upload-Post, ngay trên màn hình cấp quyền của TikTok. Không chia sẻ mật khẩu, không tự động hóa ứng dụng TikTok.

Việc được duyệt này quan trọng nếu bạn từng tính tự build. TikTok giới hạn mọi nội dung đăng từ API client chưa qua audit ở chế độ riêng tư, cho đến khi client đó vượt qua audit. Với server host sẵn, bạn bỏ qua được bước tạo developer app, audit và xử lý token.

TikTok quyết định theo từng tài khoản những mức quyền riêng tư nào được phép. Ví dụ, tài khoản riêng tư không có PUBLIC_TO_EVERYONE. Agent có thể gọi tiktok_publishing_settings trước và chọn mức mà tài khoản thực sự có, thay vì bị lỗi tiktok_privacy_unavailable.

Nhạc, gắn địa điểm, ảnh bìa tùy chỉnh và bình luận phụ thuộc vào các quyền được cấp khi kết nối tài khoản. list_users hiển thị chúng trong mảng capabilities của tài khoản TikTok, và kết nối lại TikTok sẽ nhận thêm các quyền mới.

Nguồn: TikTok Content Posting API, Hướng dẫn TikTok của Upload-Post, upload-post-mcp trên GitHub.

Các giới hạn TikTok mà agent tuân theo

Những gì TikTok và Upload-Post chấp nhận cho mỗi bài đăng, kiểm tra vào tháng 9 năm 2026.

Hạng mục Giới hạn Nguồn
Caption video 2.200 ký tự (một emoji tính là 2) Giới hạn ký tự của Upload-Post
Nội dung bài ảnh Tiêu đề tối đa 90 ký tự, mô tả tối đa 4.000 ký tự Giới hạn ký tự của Upload-Post
Video MP4, MOV hoặc WebM; từ 3 giây đến 10 phút khi đăng qua API; 23 đến 60 fps; mỗi cạnh tối thiểu 360 px. Upload-Post từ chối file lớn hơn 3 GB. Yêu cầu video của Upload-Post
Ảnh JPG, JPEG hoặc WebP, tối đa 35 ảnh mỗi bài và 20 MB mỗi ảnh. Ảnh lớn hơn 1080 x 1920 được tự động thu nhỏ. Yêu cầu ảnh của Upload-Post
Quyền riêng tư PUBLIC_TO_EVERYONE, MUTUAL_FOLLOW_FRIENDS, FOLLOWER_OF_CREATOR hoặc SELF_ONLY, tùy mức TikTok cho phép với từng tài khoản Hướng dẫn TikTok của Upload-Post
Tần suất đăng (TikTok) 6 bài mỗi phút và 15 bài mỗi 24 giờ cho mỗi tài khoản TikTok Yêu cầu video của Upload-Post

Hoạt động với mọi MCP client

Cùng một server, cùng bộ công cụ. Chọn AI client của bạn và làm theo hướng dẫn 3 bước tương ứng.

Thử các prompt TikTok này

Không cần nhớ lệnh. Chỉ cần mô tả điều bạn muốn.

“Đăng video này lên TikTok bằng profile "marketing", caption: "Spring launch 🌱".”
“Cắt clip này còn 30 giây đầu và đăng lên TikTok.”
“Lên lịch video TikTok này vào thứ Sáu lúc 18:00 giờ Madrid.”
“5 video TikTok gần nhất của tôi hiệu quả thế nào? So sánh lượt xem và tỷ lệ xem hết.”

Câu hỏi thường gặp

TikTok + tác nhân AI, đã có lời giải đáp. Cập nhật lần cuối: tháng 9 năm 2026.

MCP server TikTok là gì?

MCP server TikTok là một server Model Context Protocol đưa việc đăng bài lên TikTok thành các tool mà AI agent có thể gọi. MCP server của Upload-Post cho phép ChatGPT, Claude, Gemini hoặc bất kỳ MCP client nào tải video và carousel ảnh lên TikTok, lên lịch bài đăng và lấy số liệu analytics, không cần viết code.

AI agent có thể đăng video lên TikTok không?

Có. Kết nối tài khoản TikTok với Upload-Post một lần, thêm MCP server vào AI client, và agent có thể đăng video kèm caption, cài đặt quyền riêng tư và lịch đăng chỉ từ một prompt viết bằng ngôn ngữ tự nhiên.

TikTok chấp nhận những định dạng video nào?

Qua API, TikTok nhận MP4, MOV hoặc WebM dài từ 3 giây đến 10 phút, 23 đến 60 fps và mỗi cạnh tối thiểu 360 px. Ảnh lớn hơn 1080 x 1920 được tự động thu nhỏ. Nếu clip quá dài hoặc sai định dạng, agent có thể cắt hoặc mã hóa lại trước bằng submit_ffmpeg_job.

MCP server TikTok có miễn phí không?

Code của server miễn phí và mã nguồn mở (MIT). Bạn kết nối nó bằng API key của Upload-Post, và có thể tạo tài khoản miễn phí.

Khác gì so với TikTok Ads MCP?

Hai bên làm việc khác nhau. MCP server TikTok for Business của chính TikTok làm việc ở mảng quảng cáo: chiến dịch, nhóm quảng cáo, đối tượng, danh mục sản phẩm và báo cáo quảng cáo. MCP TikTok của Upload-Post làm việc trên tài khoản tự nhiên (organic) của bạn: đăng video và carousel ảnh, gửi clip vào bản nháp, trả lời bình luận và xem số liệu bài đăng, tất cả qua API chính thức dành cho nhà phát triển của TikTok. Nếu bạn vừa chạy quảng cáo vừa đăng bài tự nhiên, bạn có thể kết nối cả hai vào cùng một AI client.

Đây có phải công cụ scraping TikTok không?

Không. Nó chỉ làm việc với các tài khoản TikTok mà bạn kết nối và sở hữu, qua API chính thức của TikTok. Nó không tải video của nhà sáng tạo khác, không tìm hashtag và không thu thập dữ liệu hồ sơ, vốn là việc mà các MCP server scraping dành cho TikTok làm.

Agent có thể gửi video vào bản nháp TikTok thay vì đăng luôn không?

Có. Đặt tiktokPostMode thành MEDIA_UPLOAD (hoặc tiktokUploadToDraft thành true) trong platformOptions, video sẽ vào hộp thư TikTok để bạn hoàn thiện và đăng trong app. Ở chế độ nháp, TikTok bỏ qua caption và quyền riêng tư gửi qua API.

Nó có đăng được carousel ảnh TikTok không?

Có. upload_photos với platforms ["tiktok"] đăng một bài ảnh gồm tối đa 35 ảnh JPG, JPEG hoặc WebP. tiktokPhotoCoverIndex chọn ảnh bìa và tiktokAutoAddMusic thêm nhạc nền.

Làm sao để gắn nhãn video do AI tạo?

Truyền tiktokIsAigc: true trong platformOptions. TikTok sẽ hiển thị video kèm nhãn nội dung do AI tạo mà nhà sáng tạo đã đánh dấu.

Agent có thể đăng bao nhiêu bài TikTok mỗi ngày?

Tối đa 15 bài cho mỗi tài khoản TikTok trong 24 giờ trượt, và không quá 6 bài mỗi phút. Đó là giới hạn của chính TikTok.

Để tác nhân AI của bạn vận hành TikTok

Miễn phí để bắt đầu, không cần thẻ tín dụng. Kết nối TikTok một lần và đăng từ bất kỳ MCP client nào.