Social Data API
Server Details
One API key for TikTok, X, Instagram and Reddit data. TikTok and X are live now.
- Status
- Healthy
- Uptime
- 100.0% over the last 24 hours
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-06-18
- URL
- ChatGPT
- –
- Claude
- –
TDQS
Score is being calculated.
Available Tools
9 toolscheck_balanceCheck API Key BalanceARead-onlyIdempotentInspect
Check this API key's plan, credits remaining and trial status (trial end date, days left, whether the trial has started). Free — costs 0 credits. Use it before a batch of calls if you are unsure what the key has left.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, non-destructive behavior, so the bar is lower. The description adds context not present in structured data: the call is free and costs 0 credits, which materially affects an agent's willingness to call it preemptively, plus it previews the returned trial-state fields.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, both front-loaded: what is returned first, then the decision rule and the zero-cost fact. Nothing is repeated from the title or the annotations.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter, read-only utility with no output schema, the description supplies everything needed: the returned fields, the cost, and the recommended moment to call it. No structural gaps remain.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes no parameters, so the schema-coverage baseline of 4 applies and no parameter explanation is needed. The description correctly spends no words on arguments and instead focuses on what the call yields.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
"Check this API key's plan, credits remaining and trial status" names a specific verb and resource and enumerates the exact fields returned, including trial end date, days left, and whether the trial has started. It is unmistakably distinct from the sibling TikTok/X data-fetching tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
"Use it before a batch of calls if you are unsure what the key has left" gives an explicit trigger condition tied to a concrete decision. It stops short of stating when not to call it or naming an alternative for related questions, but for a zero-parameter utility that gap is minor.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
tiktok_commentsGet TikTok Video CommentsRead-onlyIdempotentInspect
Get the comments on a TikTok video. One call returns up to 20 comments (up to 50 with count): text, author, likes and reply counts. Use this to read buying-intent signals in the buyers' own words, e.g. 'where can I buy this'. Costs 1 credit.
| Name | Required | Description | Default |
|---|---|---|---|
| count | No | Comments to return, 1-50. Default 20. | |
| cursor | No | Pagination cursor. | |
| aweme_id | Yes | Numeric TikTok video id. |
tiktok_profileGet TikTok ProfileARead-onlyIdempotentInspect
Get a TikTok creator's public profile: follower and following counts, total likes, bio, avatar and verified status. One call returns one profile. Costs 1 credit.
| Name | Required | Description | Default |
|---|---|---|---|
| secUid | No | TikTok secUid (stable creator id). Use this if you already have it from a previous call. | |
| uniqueId | No | TikTok username, without @ (e.g. 'tiktok'). |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover the safety profile (readOnly, idempotent, openWorld, non-destructive), so the bar is lower, and the description adds genuinely new operational context: a cost of 1 credit and a one-profile-per-call scope. It stops short of describing failure behavior for unknown users or any rate limiting, which keeps it out of the top band.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences with zero filler: the return contents are front-loaded and the cost/scope constraint follows. Every clause carries information an agent would otherwise have to guess.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description usefully compensates by listing what comes back, and it discloses the credit cost. The remaining gap is that it does not mention the anyOf identifier requirement (uniqueId or secUid) or what happens when a profile is not found, though the schema enforces the identifier constraint itself.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and both parameters (secUid, uniqueId) are documented in the schema itself, including the 'no @' formatting and reuse-from-previous-call hint. The description adds no parameter-level meaning, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Specific verb ('Get') plus a precisely scoped resource ('a TikTok creator's public profile'), followed by an enumeration of the returned fields (followers, following, likes, bio, avatar, verified). This clearly separates it from tiktok_search, tiktok_videos, and the x_profile sibling, which covers a different platform.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
'One call returns one profile' implies a single-entity lookup and implicitly warns against expecting bulk results, but there is no explicit when-to-use or when-not-to-use statement, and no routing to siblings such as tiktok_search for discovery. Usage is inferable rather than stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
tiktok_searchSearch TikTok VideosARead-onlyIdempotentInspect
Search TikTok videos by keyword. One call returns up to 20 videos (up to 50 with count): views, likes, comments, shares, author, caption and hashtags. Costs 1 credit.
| Name | Required | Description | Default |
|---|---|---|---|
| count | No | Videos to return, 1-50. Default 20. | |
| offset | No | Pagination offset. | |
| keyword | Yes | Search term, e.g. 'dear person behind me hoodie'. | |
| sort_type | No | Sort order (0, 1 or 2). Default 0. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, openWorld and non-destructive, so the safety profile is covered. On top of that, the description discloses the credit cost (1 credit) and the shape of the return payload (views, likes, comments, shares, author, caption, hashtags), which are real behavioral facts not present in structured fields.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three short sentences, all front-loaded: purpose first, then result size and returned fields, then cost. Nothing redundant and nothing buried.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only search with no output schema, the description gives the agent enough to call it correctly: page size limits, payload contents, and cost. The only meaningful gap is the unexplained sort_type enum, which is the one thing a caller could get wrong.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so baseline is 3. The description reinforces the count ceiling ('up to 50 with count') and the default of 20, but adds nothing about offset pagination or what sort_type values 0/1/2 actually mean — the least self-explanatory parameter goes unexplained.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('Search TikTok videos by keyword'), which clearly separates it from tiktok_videos (listing a known user's videos) and tiktok_comments. It stops short of explicitly naming a sibling to prefer in an alternative case, so it is clear but not fully differentiated.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The keyword-based framing implies the use case (find videos on a topic rather than fetch a known account's content), but there is no explicit when-to-use/when-not guidance and no mention of alternatives such as tiktok_videos or x_search. The agent must infer the routing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
tiktok_videosList TikTok Creator VideosARead-onlyIdempotentInspect
List a TikTok creator's videos, newest first. One call returns up to 20 videos (up to 50 with count). By username costs 2 credits (one extra profile lookup to resolve the username); by secUid costs 1 credit.
| Name | Required | Description | Default |
|---|---|---|---|
| count | No | Videos to return, 1-50. Default 20. | |
| cursor | No | Pagination cursor. | |
| secUid | No | TikTok secUid. Costs 1 credit. | |
| uniqueId | No | TikTok username, without @. Costs 2 credits (includes the profile lookup). |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare read-only, idempotent, non-destructive, open-world behavior, so the description is free to add value elsewhere and does: it discloses page-size limits (20 default, 50 with count) and per-call credit cost, including the extra credit charged for the username lookup. It does not explain pagination behavior or whether cursors expire, which keeps it short of a 5.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with the primary action and ordering, followed by the two facts an agent most needs before calling: result cap and credit cost. No redundant restatement of the title or schema.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only list tool with full schema coverage and no output schema, the description covers ordering, page size, identifier choice, and cost. It stops short of saying what a returned video record contains, which would matter slightly given the absence of an output schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the schema already documents count, cursor, secUid, and uniqueId. The description only restates the credit differential that the schema also carries, adding no new syntax or format detail; baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
"List a TikTok creator's videos, newest first" gives a specific verb, resource, and ordering, which distinguishes it from tiktok_comments and tiktok_profile by resource type. It never names tiktok_search as the boundary case, so an agent wanting video content still has to infer which of the two list-like tools to pick.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied by the requirement of either a username or secUid, and the credit-cost sentence effectively guides the choice between the two identifier paths. There is no explicit when-to-use/when-not guidance against siblings such as tiktok_search or tiktok_profile.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
x_commentsGet X Post RepliesRead-onlyIdempotentInspect
Get the replies to an X post. One call returns up to 20 replies: text, author and engagement. Costs 1 credit. Paid plans and pay-as-you-go only — trial keys get an error (the trial is TikTok only).
| Name | Required | Description | Default |
|---|---|---|---|
| cursor | No | Pagination cursor from a previous call. | |
| tweet_id | Yes | Numeric tweet id. |
x_postsList X User PostsRead-onlyIdempotentInspect
List an X user's posts, newest first. One call returns up to 20 posts. Costs 1 credit. Paid plans and pay-as-you-go only — trial keys get an error (the trial is TikTok only).
| Name | Required | Description | Default |
|---|---|---|---|
| cursor | No | Pagination cursor from a previous call. | |
| user_id | No | Numeric X user id. | |
| username | No | X handle, without @ (e.g. 'elonmusk'). |
x_profileGet X ProfileARead-onlyIdempotentInspect
Get an X (Twitter) user's public profile: followers, following, bio and verified status. One call returns one profile. Costs 1 credit. Paid plans and pay-as-you-go only — trial keys get an error (the trial is TikTok only).
| Name | Required | Description | Default |
|---|---|---|---|
| user_id | No | Numeric X user id. | |
| username | No | X handle, without @ (e.g. 'elonmusk'). |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover the safety profile (readOnly, idempotent, non-destructive, open-world), and the description adds genuinely new operational facts: 1 credit per call, one profile per call, and a hard plan-gating rule that produces an error for trial keys. That billing and access information is exactly the kind of context annotations cannot express.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three short sentences, front-loaded with the core action and return fields, then cost, then access restriction. Every sentence carries distinct information with no redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description compensates by enumerating the returned fields, and it also states cardinality (one call, one profile), cost, and plan gating. For a two-parameter read tool, an agent has everything needed to decide and invoke correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and both parameters (username, user_id) are already documented with format examples in the schema. The description adds no meaning about the anyOf either/or requirement or when to prefer user_id over username, so it stays at the baseline for a fully-documented two-parameter schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with a specific verb and resource ("Get an X (Twitter) user's public profile") and immediately enumerates the returned fields (followers, following, bio, verified status). It also implicitly distinguishes itself from the tiktok_profile sibling by naming the platform scope and noting the trial tier is TikTok-only.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It gives a clear eligibility condition for use: paid plans and pay-as-you-go only, with trial keys receiving an error. It does not, however, route the agent between x_profile and x_search (e.g., search by keyword vs. fetch a known handle), so alternative selection is left to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
x_searchSearch X PostsRead-onlyIdempotentInspect
Search X posts by keyword. One call returns up to 20 posts: text, author, likes, reposts, replies and timestamps. Costs 1 credit. Paid plans and pay-as-you-go only — trial keys get an error (the trial is TikTok only).
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | Search term, e.g. 'dear person behind me hoodie'. | |
| cursor | No | Pagination cursor from a previous call. | |
| search_type | No | Result type, e.g. 'Top' or 'Latest'. Default 'Top'. | Top |
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
9 tool updates
- First observed
check_balance - First observed
tiktok_comments - First observed
tiktok_profile - First observed
tiktok_search - First observed
tiktok_videos - First observed
x_comments - First observed
x_posts - First observed
x_profile - First observed
x_search
Related MCP Connectors
Live public data from TikTok, LinkedIn, YouTube, X, Reddit and 17 more networks, via one key.
Give your AI agent live public data from 70+ platforms: from TikTok, Instagram, YouTube, LinkedIn, X, Reddit, Amazon, Google and more, One key, one response format, 1,000 free credits every month.
YouTube, TikTok, Instagram, X, Reddit, LinkedIn and Threads: public data in one schema.
Twitter/X, Instagram, Reddit & TikTok data for AI agents. Billions of posts. No API keys.
Related MCP Servers
- -licenseNot gradedqualityCmaintenanceTwitter/X, YouTube, Reddit, Google and more - 100+ endpoints in total. No account, no OAuth, no subscription. Pay per call in USDC, or top up once and spend one balance across all of them.2-

insightsocialofficial
AlicenseNot gradedqualityBmaintenanceEnables AI agents to search, describe and call 239 social data endpoints across Instagram, TikTok, LinkedIn, Facebook, YouTube, X, Reddit, Threads and Pinterest through a single API key, covering profiles, posts, comments, followers, hashtags, ads and transcripts with one unified schema. Full responses are saved server-side and can be re-sliced for free with jq, fields or size outlines, so agents pull only the data they need into context.236 npmMIT
SocialCrawlofficial
AlicenseAqualityCmaintenanceSocialCrawl provides the "best" quality public web data on the internet. Access 65+ real-time social media, e-commerce and public web data from a single API with a single schema.5202 npm28MIT- AlicenseAqualityCmaintenanceReal-time LinkedIn, X (Twitter) and Reddit data for AI agents: profiles, companies, people search, tweets, subreddits, and search. Free start: self-mint a key in one call, no signup, no card.17MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.