TikTok MCP Server
Server Quality Checklist
Latest release: v1.0.0
- Disambiguation4/5
Most tools have distinct purposes, but there is some overlap between tiktok_feed and tiktok_trending (both fetch trending/For You Page content) and between tiktok_search and tiktok_hashtag (both search-related). Descriptions help differentiate them, but an agent might occasionally misselect between these pairs.
Naming Consistency5/5All tools follow a consistent tiktok_verb_noun naming pattern, using snake_case throughout. This predictability makes it easy for an agent to understand and navigate the toolset.
Tool Count5/5With 12 tools, this server is well-scoped for TikTok operations, covering analysis, downloading, interaction, publishing, and session management. Each tool serves a clear purpose without feeling excessive or insufficient.
Completeness4/5The toolset provides comprehensive coverage for TikTok interactions, including CRUD-like operations (e.g., publish, interact, download) and data retrieval. A minor gap is the lack of tools for managing user profiles or direct messaging, but core workflows are well-supported.
Average 3/5 across 12 of 12 tools scored.
See the Tool Scores section below for per-tool breakdowns.
Add a LICENSE file by following GitHub's guide. Once GitHub recognizes the license, the system will automatically detect it within a few hours.
If the license does not appear after some time, you can manually trigger a new scan using the MCP server admin interface.
MCP servers without a LICENSE cannot be installed.
This repository includes a README.md file.
No tool usage detected in the last 30 days. Usage tracking helps demonstrate server value.
Tip: use the "Try in Browser" feature on the server page to seed initial usage.
Add a glama.json file to provide metadata about your server.
If you are the author, simply .
If the server belongs to an organization, first add
glama.jsonto the root of your repository:{ "$schema": "https://glama.ai/mcp/schemas/server.json", "maintainers": [ "your-github-username" ] }Then . Browse examples.
Add related servers to improve discoverability.
How to sync the server with GitHub?
Servers are automatically synced at least once per day, but you can also sync manually at any time to instantly update the server profile.
To manually sync the server, click the "Sync Server" button in the MCP server admin interface.
How is the quality score calculated?
The overall quality score combines two components: Tool Definition Quality (70%) and Server Coherence (30%).
Tool Definition Quality measures how well each tool describes itself to AI agents. Every tool is scored 1–5 across six dimensions: Purpose Clarity (25%), Usage Guidelines (20%), Behavioral Transparency (20%), Parameter Semantics (15%), Conciseness & Structure (10%), and Contextual Completeness (10%). The server-level definition quality score is calculated as 60% mean TDQS + 40% minimum TDQS, so a single poorly described tool pulls the score down.
Server Coherence evaluates how well the tools work together as a set, scoring four dimensions equally: Disambiguation (can agents tell tools apart?), Naming Consistency, Tool Count Appropriateness, and Completeness (are there gaps in the tool surface?).
Tiers are derived from the overall score: A (≥3.5), B (≥3.0), C (≥2.0), D (≥1.0), F (<1.0). B and above is considered passing.
Tool Scores
- Behavior2/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It mentions 'aggregate stats' but doesn't specify what stats are included, how data is sourced (e.g., from recent videos or historical trends), rate limits, or authentication needs. For a tool that likely involves data collection and analysis, this lack of detail leaves key behavioral traits unclear, making it inadequate for informed use.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness4/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise and front-loaded, stating the core purpose in the first clause. It uses a single sentence to outline key actions without unnecessary elaboration. However, it could be slightly more structured by separating the analysis goal from the methods, but overall, it avoids waste and is efficiently phrased.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness2/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity of trend analysis and the absence of annotations and output schema, the description is incomplete. It doesn't explain what the aggregated stats include, how results are formatted, or any limitations (e.g., data recency, accuracy). For a tool with 2 parameters and no structured output, more detail on behavioral aspects and return values is needed to ensure effective use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% description coverage, clearly documenting both parameters (keywords and count_per_keyword). The description adds minimal value beyond the schema, as it only implies keyword usage without detailing semantics like keyword selection strategies or how count_per_keyword affects analysis depth. Since the schema does the heavy lifting, a baseline score of 3 is appropriate, but the description doesn't compensate with additional insights.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Analyze trends for a niche' with specific actions like 'search multiple keywords, aggregate stats on popular sounds, hashtags, posting patterns.' It distinguishes itself from siblings like tiktok_search (general search) and tiktok_trending (likely shows trending content) by focusing on analytical aggregation. However, it doesn't explicitly contrast with all siblings, such as tiktok_hashtag or tiktok_sounds, which might overlap in functionality.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines2/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It mentions analyzing trends for a niche but doesn't specify prerequisites, ideal scenarios, or exclusions. For example, it doesn't clarify if this is for market research, content strategy, or how it differs from tiktok_search or tiktok_trending in practice. Without such context, users must infer usage from the purpose alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior2/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It mentions 'without watermark when possible,' which hints at a best-effort behavior, but doesn't cover critical aspects like file format, download location defaults, error handling, rate limits, or authentication needs. For a download tool that likely involves external network calls, this is insufficient.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence with zero waste. It's front-loaded with the core action and includes a useful qualifier. Every word earns its place, making it highly concise and well-structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness2/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity of a download operation (network-dependent, file I/O) with no annotations and no output schema, the description is incomplete. It lacks details on return values (e.g., success/failure indicators, file path), error conditions, or behavioral constraints. The 'without watermark when possible' hint is helpful but doesn't compensate for the overall gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents both parameters (video_url and output_path). The description doesn't add any parameter-specific details beyond what's in the schema, such as URL format examples or auto-generation rules for output_path. Baseline 3 is appropriate when the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb ('Download') and resource ('a TikTok video'), with the additional qualifier 'without watermark when possible' providing useful context. It distinguishes from siblings like tiktok_video_info (which likely provides metadata) and tiktok_publish (which uploads content), though it doesn't explicitly name these alternatives.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines2/5Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives. For example, it doesn't clarify whether this should be used instead of tiktok_video_info for downloading versus just getting metadata, or whether there are prerequisites like having a valid URL format. The description only states what it does, not when to choose it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior2/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It mentions 'like a real user,' hinting at realistic behavior, but lacks details on rate limits, authentication needs, data freshness, or potential side effects (e.g., if scrolling affects user sessions). This leaves significant gaps in understanding the tool's behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that directly states the action and outcome without unnecessary words. It's front-loaded and wastes no space, making it highly concise and well-structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness2/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity of simulating user scrolling and collecting metadata, with no annotations and no output schema, the description is insufficient. It doesn't explain what 'video metadata' includes, how data is returned, or any constraints like pagination or errors, leaving the agent with incomplete context for effective use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema description coverage is 100%, with the parameter 'count' well-documented in the schema. The description adds no additional parameter semantics beyond implying collection of video metadata, which is already covered by the tool's purpose. This meets the baseline for high schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Scroll the For You Page') and the outcome ('collect video metadata'), making the purpose understandable. However, it doesn't explicitly differentiate this tool from siblings like 'tiktok_trending' or 'tiktok_search', which might also collect video metadata in different contexts, so it's not a perfect 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines2/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. With siblings like 'tiktok_trending' (likely for trending videos) and 'tiktok_search' (for search-based collection), there's no indication of when this tool is preferred, such as for personalized feeds or real-time scrolling.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior2/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It mentions 'popular videos and stats,' which hints at read-only behavior, but doesn't clarify permissions, rate limits, data freshness, or what 'stats' includes (e.g., view counts, engagement metrics). For a tool with no annotation coverage, this leaves significant gaps in understanding its operational traits.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness4/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence: 'Explore a TikTok hashtag — popular videos and stats.' It's front-loaded with the core purpose and avoids redundancy. However, it could be slightly more structured by separating purpose from output details for clarity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness3/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no annotations and no output schema, the description is minimally adequate. It covers the basic purpose and hints at outputs (videos and stats), but doesn't detail return formats, error conditions, or limitations. For a tool with 2 parameters and no structured output documentation, it should provide more context about what to expect from the operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema fully documents both parameters (hashtag and count). The description adds no additional parameter semantics beyond implying hashtag exploration and stats retrieval. It doesn't explain format constraints, validation rules, or practical usage tips, so it meets the baseline for high schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Explore a TikTok hashtag — popular videos and stats.' It specifies the verb 'explore' and the resource 'TikTok hashtag,' and distinguishes it from siblings by focusing on hashtag-specific exploration rather than general search, trending, or user content. However, it doesn't explicitly differentiate from all siblings (e.g., tiktok_search might overlap).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines2/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It doesn't mention when to prefer tiktok_hashtag over tiktok_search, tiktok_trending, or tiktok_feed, nor does it specify prerequisites or exclusions. The agent must infer usage from the name and description alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior2/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden but offers minimal behavioral insight. It mentions three actions but doesn't disclose whether these require user authentication, have rate limits, affect account status, or return confirmation data. For a tool that performs social media interactions (potentially with platform restrictions), this lack of transparency is a significant gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that front-loads the core purpose ('Interact with a TikTok video') and immediately enumerates the three actions. There is zero wasted verbiage or redundancy, making it highly scannable and actionable.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness2/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity of social media interaction tools (which often require authentication, have usage limits, and return varied outcomes), the description is incomplete. With no annotations, no output schema, and minimal behavioral context, an AI agent lacks critical information about prerequisites, side effects, and response formats. The description does not compensate for these gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all parameters (action, video_url, text) with descriptions and constraints. The description adds no additional parameter semantics beyond implying that 'text' is comment-specific. Since the schema does the heavy lifting, the baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'interact' and resource 'TikTok video', specifying three concrete actions (like, comment, follow). It distinguishes from siblings like tiktok_download or tiktok_search by focusing on user engagement rather than content retrieval or analysis. However, it doesn't explicitly contrast with tiktok_publish (which creates content) or tiktok_session (which might manage authentication).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines2/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. For example, it doesn't clarify if tiktok_interact should be used for engagement metrics vs. tiktok_analyze_trend for trend analysis, or if authentication via tiktok_session is required first. There's no mention of prerequisites, rate limits, or use-case scenarios.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior2/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It states the action ('Get trending sounds/music') but doesn't cover critical aspects like rate limits, authentication needs, data freshness, or what 'trending' means (e.g., time frame, region). This leaves significant gaps for a tool that likely involves external API calls.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence with zero wasted words. It's front-loaded with the core purpose, making it easy for an agent to parse quickly without unnecessary elaboration.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness2/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the lack of annotations and output schema, the description is incomplete. It doesn't explain what 'trending' entails, return format (e.g., list of sound objects with metadata), or error handling. For a tool with no structured behavioral hints, this leaves too much undefined for reliable agent use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description adds no parameter-specific information beyond what the schema provides (100% coverage). The schema fully documents the 'count' parameter with type, description, and default. Since schema coverage is high, the baseline score of 3 is appropriate, as the description doesn't need to compensate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose with a specific verb ('Get') and resource ('trending sounds/music on TikTok'). It distinguishes itself from siblings like 'tiktok_trending' (likely general trends) and 'tiktok_search' (search functionality), though it doesn't explicitly mention these distinctions.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines2/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives like 'tiktok_trending' or 'tiktok_search'. It lacks context about prerequisites, timing, or exclusions, leaving the agent to infer usage based on the name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior2/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It mentions 'Get trending/For You videos' but doesn't specify if this is a read-only operation, requires authentication, has rate limits, or what the output format might be. For a tool with no annotations, this leaves significant gaps in understanding its behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise and front-loaded with a single, clear sentence that directly states the tool's purpose without any wasted words. It efficiently communicates the core function, earning a top score for brevity and structure.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness2/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the lack of annotations and output schema, the description is incomplete for a tool that likely returns video data. It doesn't explain what information is returned (e.g., video URLs, metadata, trends), how results are formatted, or any behavioral constraints, making it inadequate for full contextual understanding.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description doesn't add any parameter-specific information beyond what's in the input schema, which has 100% coverage for the single parameter 'count'. Since the schema already fully documents the parameter, the baseline score of 3 is appropriate, as the description doesn't compensate or provide extra meaning.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose with a specific verb ('Get') and resource ('trending/For You videos from TikTok feed'), making it easy to understand what the tool does. However, it doesn't explicitly differentiate from sibling tools like 'tiktok_feed' or 'tiktok_hashtag', which might offer similar content retrieval, so it doesn't reach the highest score.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines2/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. With many sibling tools available (e.g., 'tiktok_feed', 'tiktok_search', 'tiktok_user_videos'), there's no indication of context, prerequisites, or exclusions, leaving the agent to guess based on tool names alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior2/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It states the tool 'Get[s] videos,' implying a read-only operation, but doesn't disclose any behavioral traits such as rate limits, authentication requirements, pagination, or what happens if the user doesn't exist. For a tool with no annotations, this leaves significant gaps in understanding how it behaves.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence: 'Get videos from a specific TikTok user's profile.' It is front-loaded with the core purpose, has zero wasted words, and is appropriately sized for a simple tool. Every part of the sentence earns its place by specifying the action and target.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness2/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity (a tool to retrieve user videos) and the lack of annotations and output schema, the description is incomplete. It doesn't explain what the tool returns (e.g., video metadata, URLs, or full data), any limitations (e.g., max count, privacy restrictions), or error handling. For a tool with no structured output information, the description should provide more context to be fully helpful.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% description coverage, with clear documentation for 'username' and 'count' parameters. The description doesn't add any meaning beyond what the schema provides (e.g., it doesn't explain parameter interactions or constraints). Since schema coverage is high, the baseline score of 3 is appropriate, as the description doesn't compensate but also doesn't detract.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Get videos from a specific TikTok user's profile.' It specifies the verb ('Get') and resource ('videos from a specific TikTok user's profile'), making it easy to understand what the tool does. However, it doesn't explicitly differentiate from sibling tools like 'tiktok_feed' or 'tiktok_search', which might also retrieve videos but from different sources.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines2/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It doesn't mention sibling tools like 'tiktok_feed' (which might get videos from a personalized feed) or 'tiktok_search' (which might search for videos), leaving the agent to infer usage based on tool names alone. There are no explicit when-to-use or when-not-to-use instructions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior2/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. While it states this is a 'Get' operation (implying read-only), it doesn't mention any behavioral traits such as rate limits, authentication requirements, error conditions, or what happens with invalid URLs. For a tool with no annotation coverage, this leaves significant gaps in understanding its operational characteristics.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise and front-loaded in a single sentence that efficiently communicates the core functionality. Every word earns its place with no wasted verbiage or unnecessary elaboration.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness2/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity of video metadata retrieval (which could involve various data points and potential failures) and the absence of both annotations and an output schema, the description is insufficiently complete. It doesn't explain what specific metadata is returned, how errors are handled, or any prerequisites for successful operation, leaving the agent with inadequate context for reliable use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with the single parameter 'video_url' clearly documented in the schema as accepting 'TikTok video URL or video ID'. The description adds no additional parameter semantics beyond what's already in the schema, so it meets the baseline for adequate coverage without adding value.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose with a specific verb ('Get') and resource ('detailed metadata for a specific TikTok video'), and it lists the types of metadata included (stats, audio, hashtags, description). However, it doesn't explicitly differentiate from sibling tools like 'tiktok_user_videos' or 'tiktok_search' which might also provide video metadata in different contexts.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines2/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. With siblings like 'tiktok_search', 'tiktok_user_videos', and 'tiktok_feed' that might overlap in functionality, there's no indication of when this specific metadata retrieval tool is preferred or what distinguishes it from other video-related tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior2/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It discloses the return format ('Returns metadata: author, description, views, URL, hashtags'), which is valuable. However, it doesn't mention behavioral aspects like rate limits, authentication requirements, pagination, or whether results are real-time/historical. For a search tool with zero annotation coverage, this leaves significant gaps in understanding its operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise and front-loaded: two sentences that directly state the action and output. Every word earns its place—no fluff or redundancy. It efficiently communicates core functionality without unnecessary elaboration.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness3/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's moderate complexity (search with two parameters), no annotations, and no output schema, the description is partially complete. It covers the purpose and return metadata but lacks details on authentication, rate limits, error handling, or how results are ordered/filtered. Without an output schema, the description should ideally explain return values more thoroughly, but it does list key metadata fields.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema fully documents both parameters (query and count). The description adds no parameter-specific information beyond what's in the schema. According to scoring rules, with high schema coverage (>80%), the baseline is 3 even with no param info in description, which applies here.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Search TikTok videos by keyword' specifies the verb (search) and resource (TikTok videos). It distinguishes from siblings like 'tiktok_trending' (browse trending) or 'tiktok_user_videos' (user-specific), but doesn't explicitly differentiate from 'tiktok_hashtag' (which might also search). The description is specific but not fully sibling-differentiated.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines2/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. With siblings like 'tiktok_hashtag' (likely hashtag-based search), 'tiktok_trending' (trending content), and 'tiktok_feed' (personalized feed), there's no indication of when keyword search is preferred over other search methods or content discovery tools. Usage is implied but not articulated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior2/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden but offers minimal behavioral insight. It mentions actions but doesn't disclose critical traits like authentication requirements, side effects (e.g., does 'refresh_cookies' invalidate old ones?), rate limits, or error handling. This leaves the agent guessing about operational risks.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise and front-loaded, packing all essential information into one efficient sentence. Every word earns its place without redundancy, making it easy for an agent to parse quickly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness2/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (session management with multiple actions) and lack of both annotations and output schema, the description is insufficient. It doesn't explain what 'export_session' returns, how login status is determined, or the implications of cookie refresh. For a tool with potential authentication and state changes, more context is needed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters4/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema fully documents the single 'action' parameter with its enum values. The description adds marginal value by listing the same actions in a more readable format, but doesn't provide additional semantics like when each action is appropriate or their outcomes. Baseline 3 is adjusted upward due to the single parameter's clarity.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose with specific verbs ('manage', 'check', 'refresh', 'export') and resource ('TikTok session'), making it immediately understandable. However, it doesn't explicitly differentiate from sibling tools like 'tiktok_interact' which might also involve session management, leaving room for ambiguity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines2/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It lists actions but doesn't explain prerequisites (e.g., when a session is needed), timing considerations, or how it relates to siblings like 'tiktok_interact' for session-based interactions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior3/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It adds useful context beyond basic functionality by mentioning authentication requirements and the method ('Uses browser automation via Creator Center'), which hints at potential delays or UI interactions. However, it lacks details on error handling, rate limits, or what happens on success/failure, leaving gaps in transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise and front-loaded, consisting of only two sentences that efficiently convey the core action, prerequisites, and implementation method. Every word earns its place with no redundancy or unnecessary details, making it easy to parse and understand quickly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness3/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity of a publish operation with no annotations and no output schema, the description is somewhat incomplete. It covers authentication and method but omits critical details like return values, error cases, or side effects (e.g., video visibility). For a mutation tool with zero structured metadata, more behavioral context would be needed for full completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the input schema already fully documents the parameters (video_path, caption, hashtags). The description does not add any additional meaning or examples beyond what the schema provides, such as file format constraints for video_path or hashtag formatting tips. This meets the baseline for high schema coverage but offers no extra value.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the specific action ('Publish a video') and the target platform ('to TikTok'), distinguishing it from sibling tools like tiktok_download or tiktok_analyze_trend. It uses a precise verb ('Publish') and identifies the resource ('a video'), making the purpose unambiguous and distinct from alternatives.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines4/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context for when to use this tool by stating 'Requires authenticated session,' which implies it should be used only after authentication is established. However, it does not explicitly mention when not to use it or name specific alternatives among siblings, such as using tiktok_video_info for read-only operations instead.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
GitHub Badge
Glama performs regular codebase and documentation scans to:
- Confirm that the MCP server is working as expected.
- Confirm that there are no obvious security issues.
- Evaluate tool definition quality.
Our badge communicates server capabilities, safety, and installation instructions.
Card Badge
Copy to your README.md:
Score Badge
Copy to your README.md:
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/follox42/tiktok-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server