Skip to main content
Glama

SiteCheck Shop & Social

One public TikTok video by URL from the video page's

social_tiktok
Read-only

One public TikTok video by URL from the video page's embedded data: caption, hashtags, creation date, duration, size, cover image, region, language, ad flag, exact play, like, comment, share, save and repost counts, the author (ID, username, nickname, verified, follower and like totals) and the sound. Keyword, hashtag and profile video lists are not available anonymously. Deleted or private videos return 404. Takes about 13 s; allow a 30 s timeout. Related tools on this server, for a different need: social_snapchat when you need Public Snapchat profile from its web profile page; social_carsandbids when you need Live Cars & Bids auctions from the site's public RSS feed. Price: $0.002 in USDC per successful call, paid with x402 (Base, Solana or Arc); failed calls are not charged.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "url": "<url>"
    },
    "name": "social_tiktok"
  }
}

Input Schema

NameRequiredDescriptionDefault
urlYesTikTok video URL https://www.tiktok.com/@<user>/video/<id>

Output Schema

NameRequiredDescriptionDefault
idNo
urlNo
isAdNo
coverNo
soundNo
statsNo
widthNo
authorNo
heightNo
regionNo
sourceNo
captionNo
hashtagsNo
languageNo
checkedAtNo
createdAtNo
durationSecondsNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A3.8/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Beyond readOnlyHint/openWorldHint, the description discloses failure semantics (deleted or private videos return 404), expected latency (~13 s) with a recommended 30 s timeout, and the billing model including that failed calls are not charged. Those are exactly the operational facts an agent cannot get from annotations or schema, and none of them contradict the declared read-only, open-world profile.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The purpose and payload are front-loaded, and the error/timeout/price sentences earn their place. But the middle of the description is a comma-spliced field inventory long enough to bury the operational facts, and the 'Related tools on this server' cross-sells to Snapchat and Cars & Bids are padding that consumes attention without helping the caller.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a one-parameter, read-only fetch with an output schema, the description covers the missing pieces: error case, latency budget, payment and cost. The only redundancy is re-listing return fields that the output schema already defines, which is harmless but not additive.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

There is one parameter at 100% schema coverage, and the schema already documents the accepted URL shape https://www.tiktok.com/@<user>/video/<id>. The description adds no format, validation, or fallback guidance beyond that, so it earns the baseline 3 rather than more.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The opening clause names a specific resource and scope: one public TikTok video retrieved by URL from the page's embedded data, and the enumerated field list makes the payload concrete. It partially differentiates from same-domain siblings by stating that 'Keyword, hashtag and profile video lists are not available anonymously', though it never names social_tiktok_profile or social_tiktok_comments as the tools that would serve those needs.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Usage is implied rather than stated: the agent can infer 'call this when you have a single video URL', and the exclusion of keyword/hashtag/profile list scenarios is a real boundary signal. However, the only explicit alternative-routing guidance points at social_snapchat and social_carsandbids, which serve unrelated platforms and do nothing to route between this tool and its actual TikTok siblings.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources