TikTok MCP Server
Connect your AI agents to HasData's TikTok MCP server. Scrape follower counts, video engagement, and comment threads in structured JSON over streamable HTTP.
https://mcp.hasdata.com/api/mcp?apis=tiktok - Transport
- Streamable HTTP
- Auth
- OAuth or API key
- Tools
- 4 TikTok tools
- Price
- 10 credits / call


See the TikTok MCP server in action
Select a sample prompt to inspect the tool it chooses and the JSON payload your agent receives.
How big is @nasa on TikTok?
What has @nasa posted on TikTok recently?
Who else is posting about space launches on TikTok?
What are people saying under @nasa's video about the President's call?
The TikTok tools your agent can call
4 toolsTyped parameters, required flags, and structured JSON fields for each tool. Three of the four page with a nextPageToken, so an agent walks an account or a comment thread instead of taking one screenful.
+ hasdata_tiktok_profile_getTikTokProfile One public profile by handle 1 param 10 credits
Try| Parameter | Type | Required | Example |
|---|---|---|---|
| handle | string | required | "@nasa" |
- id
- username
- nickname
- biography
- verified
- followers
- follows
- likes
- videos
+ hasdata_tiktok_posts_getTikTokPosts An account's videos, page by page 2 params 10 credits
Try| Parameter | Type | Required | Example |
|---|---|---|---|
| handle | string | required | "@nasa" |
| nextPageToken | string | optional | "eyJjdXJzb3I…" |
- id
- description
- createTime
- url
- duration
- coverUrl
- playUrl
+ hasdata_tiktok_search_getTikTokSearch Keyword search for videos or users 3 params 10 credits
Try| Parameter | Type | Required | Example |
|---|---|---|---|
| keyword | string | required | "space launch" |
| type | enum | optional | "video" |
| nextPageToken | string | optional | "eyJjdXJzb3I…" |
- id
- description
- createTime
- duration
- hashtags
- mentions
- url
+ hasdata_tiktok_comments_getTikTokComments Comments on a video, or replies to one 3 params 10 credits
Try| Parameter | Type | Required | Example |
|---|---|---|---|
| videoId | string | required | "7401234567890123456" |
| commentId | string | optional | "7401299887766554433" |
| nextPageToken | string | optional | "eyJjdXJzb3I…" |
- id
- text
- createTime
- likes
- replyCount
- author
Every call is 10 credits. Failed calls are not billed.
One endpoint, any MCP client
Config blocks for Claude Desktop, Cursor, VS Code, Windsurf and Claude Code, in each one’s native format. Authenticate with browser OAuth or an x-api-key header.
Claude Code
hasdata-tiktok · connected · 4 toolsCursor
hasdata-tiktok · 4 tools enabledClaude Desktop
hasdata-tiktok · connected · 4 toolsVS Code / Copilot
hasdata-tiktok · running · 4 toolsWindsurf
hasdata-tiktok · 4 toolsCodex CLI
hasdata-tiktok · 4 toolsRaw HTTP / curl
{ "tools": [ … 4 items ] }TikTok plus whatever else you need
Name the services in the query string and the server exposes only their tools. Every one draws from the same key and the same balance.
Free on GitHub, paid in hours
Anyone can clone a free MCP to scrape TikTok. Whether that stays free depends on the shape of your project.
A script I run once
A weekly report
A pipeline in production
A feature in my product
One balance, every interface
A flat monthly price against a known credit ceiling. Move up a plan when you outgrow it.
Free
Startup
Basic
RecommendedGrowth
Monthly tool call volume
Custom price based on required volume
Past 20M credits a month, or terms the self-serve plans do not cover. We shape the contract around your workload.
The same data, without the agent.
Before you wire it in
Do I need a TikTok account or developer access?
No. The only credential is your HasData key. Every tool reads the public pages a signed-out visitor sees, so there is no developer programme to apply for.
How is this different from TikTok's own APIs?
The Research API is application-gated to approved researchers in eligible regions, and the Display API only reaches an account that has authorised you. Neither is a self-serve way to read public profiles and videos at large, which is what these four tools do.
How do I read a whole account rather than one page?
The posts tool returns a <code>nextPageToken</code>. Hand it back on the next call and you get the following page. Search and comments page the same way, so an agent can walk history without guessing an offset.
Can I get replies to a specific comment?
Yes. Pass that comment’s id as <code>commentId</code> and the comments tool returns its replies instead of the video’s top level.
How fresh is the data? Is anything cached?
Every tool call fetches the page at that moment, so play and like counts are the ones on screen right now. Nothing is served from a cache.
What about personal data?
A profile and a comment are personal data even when they are public. HasData reads publicly available pages only, and you are responsible for having a lawful basis for what you collect and store under GDPR, CCPA or the equivalent rules where you operate.
How many calls can run in parallel?
One on the free tier, five on Startup, fifteen on Basic, and fifty on Growth. The larger Growth volumes raise it to 200, 300 and 500.
What happens when I run out of credits?
Nothing is charged on top of the plan. Calls stop until the billing cycle renews.
Does it work with Claude Desktop, Cursor, VS Code and Claude Code?
Yes, all four, plus anything else that speaks MCP over streamable HTTP. Claude Desktop connects through OAuth, and the rest take the URL and an API key header.
Is HasData affiliated with TikTok?
No. HasData is an independent service and is not affiliated with, endorsed by, or sponsored by TikTok Ltd. TikTok is a trademark of its respective owner.