tiktok-studio-mcp
Allows publishing videos to your own TikTok account and reading back performance metrics through TikTok's official Content Posting and Display APIs.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@tiktok-studio-mcpupload the latest video as a draft"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
tiktok-studio-mcp
MCP server for TikTok. Publishes videos to your own TikTok account and reads back how they performed, through TikTok's official Content Posting and Display APIs.
Built as the TikTok counterpart to
yt-studio-mcp.
What it can and cannot do
TikTok's creator APIs are narrower than YouTube's. Rather than advertise tools that cannot work, this server exposes only what the platform actually supports:
capability | supported |
Upload video (drafts or direct post) | yes |
View / like / comment / share counts | yes |
List your videos | yes |
List or moderate comments | no — TikTok offers this only through the Research API, which is gated to academic institutions |
Playlists, captions, thumbnails | no — no API surface |
Related MCP server: douyin-mcp-server
Posting modes
TikTok gates direct publishing behind an app audit, so there are two modes,
selected with TIKTOK_MCP_MODE:
upload(default) — the video lands in your TikTok inbox/drafts and you finish posting it in the app. Works without an audit.publish— posts directly. Requires thevideo.publishscope, which needs TikTok's full app audit (2–4 weeks, demo video, privacy policy, domain verification).
Until the app is audited, TikTok forces everything an unaudited client posts
to private, whatever privacy_level you ask for. post_video says so in its
result rather than letting you assume something published.
Install
claude mcp add tiktok -s user -- uvx tiktok-studio-mcpAuthenticate
Register an app at developers.tiktok.com with
Login Kit, Content Posting API and Display API, requesting the scopes
user.info.basic, video.upload, video.list, video.publish. Set the
Desktop redirect URI to http://localhost:8902/.
export TIKTOK_MCP_CLIENT_KEY=...
export TIKTOK_MCP_CLIENT_SECRET=...
tiktok-studio-mcp authPrefer the environment over --client-key / --client-secret: command-line
arguments are visible to any user on the box via ps and land in shell history.
The flags still work as a fallback.
The flow is headless-friendly: it binds a fixed port and prints the consent URL rather than launching a browser. On a machine with a browser:
ssh -N -L 8902:localhost:8902 user@your-hostthen open the printed URL.
Tools
tool | purpose |
| credentials refresh, account reachable, granted scopes, active mode |
| nickname, allowed privacy levels, duration cap, interaction toggles |
| upload a file; returns |
| poll a |
| your videos, with statistics |
| counts for specific video ids |
post_video calls creator_info first and validates privacy_level against
what the account actually allows, because TikTok rejects mismatches with an
unhelpful error.
Secrets
TIKTOK_MCP_SECRETS selects the backend: file (default,
~/.config/tiktok-studio-mcp/credentials.json, mode 600), env, or vaultproxy.
TikTok rotates refresh tokens — every refresh returns a new one and invalidates the old. This server writes the new token back on every refresh; if it did not, authentication would work for 24 hours and then fail with no obvious cause.
Limits
Enforced by TikTok, surfaced by this server:
6 requests per minute per access token on the init endpoints
5 pending shares per 24 hours
chunked upload: files under 5 MB go whole; otherwise chunks are 5–64 MB, the final chunk may reach 128 MB, 1–1000 chunks, 4 GB maximum
Development
pip install -e '.[dev]'
ruff check src tests
pytestTests use an injected transport and need no TikTok credentials.
License
MIT
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseBquality-maintenanceA comprehensive MCP server that enables AI assistants to search, download, and analyze TikTok content while also performing active tasks like publishing videos and interacting with posts. It provides full automation capabilities for TikTok through browser session management and anti-detection features.Last updated122
- Alicense-qualityDmaintenanceAn MCP server that enables LLMs to automatically upload videos to the Douyin (TikTok China) creator platform with features like automated login, smart upload, SMS verification, and flexible publishing.Last updated461MIT
- FlicenseBqualityCmaintenanceMCP server for TikTok that enables searching videos, users, hashtags, and fetching trending content, user profiles, and video details via official API or public scraping.Last updated8
- Flicense-qualityCmaintenanceMCP server wrapping social-auto-upload CLI for AI clients to verify cookies and publish videos/notes to Chinese social platforms (Douyin, Kuaishou, Xiaohongshu, Bilibili).Last updated
Related MCP Connectors
MCP server for ByteDance Seedance AI video generation
MCP server for Kling AI video generation
Social media MCP: publish, schedule & analyze posts on TikTok, Instagram, YouTube, LinkedIn & X
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/aaronckj/tiktok-studio-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server