Skip to main content
Glama
Upload-Post

Upload-Post

Official

Get hashtag or keyword suggestions

get_suggestions
Read-only

Get hashtags with view counts or related search keywords around a seed word to choose high-reach captions and discover next video topics on TikTok.

Instructions

What to write about: the hashtags or the searches a network suggests around a word. One endpoint for both questions, told apart by type, and one endpoint for every network, chosen with platform. type: 'hashtags' returns { hashtags: [{ name, view_count }] } — pick tags that actually have reach for a caption; type: 'keywords' returns { keywords: [...] }, what people really search around q, useful for the next video topic. Requires the 'profile_analytics' capability on the profile's TikTok account (see the capabilities array in list_users). Keyword suggestions need 'trend_search' instead, granted the same way.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
qNoSeed word to get suggestions around, e.g. 'coffee recipe'. Without the '#'.
typeYesWhich suggestions to ask for: 'hashtags' (with view counts) or 'keywords' (related searches).
userYesUpload-Post profile name.
languageNoLanguage code for the results, e.g. 'es' or 'en'.
platformYesWhich connected network answers the question. Any other value comes back as a 400 `platform_not_supported` listing the ones that do.
countryCodeNoISO 3166-1 alpha-2 country to rank the suggestions for, e.g. 'ES' or 'US'. Sent as `country_code`.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
resultNo

Schema Changelog

Changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. Addedv0.11.1

TDQS

A4.1/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, openWorldHint, and destructiveHint=false, so the safety profile is covered. The description adds valuable behavioral context: that the output shape depends on `type`, that capability requirements differ by type, and that the platform parameter selects the network. It also implicitly acknowledges the platform_not_supported error via the schema, but that is part of the parameter description.

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

Conciseness4/5

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

The description is moderately concise and front-loaded with the core purpose. It contains some redundancy ('One endpoint for both questions' is restated later), but overall it is well-structured and each sentence adds value. Not overly verbose.

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?

Given the tool's complexity (6 params, 2 enums, 3 required) and the existence of an output schema, the description covers the essential behaviors: what it returns for each type, capability prerequisites, and how platform selects the network. It does not mention pagination or limits, but the output schema likely covers those. Overall, it is sufficiently complete for an agent to use correctly.

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?

Schema description coverage is 100%, so the baseline is 3. The description does add a few nuances (e.g., q should not include '#', and the capability requirement per type), but these are minor and the schema already explains all parameters effectively. It does not fully compensate for any gaps because there are none.

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

Purpose5/5

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

The description clearly states it provides hashtag or keyword suggestions, explicitly distinguishes between the two output modes, and clarifies that it works across networks via the platform parameter. It avoids vagueness and is easily distinguishable from sibling tools like get_post_analytics.

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

Usage Guidelines4/5

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

The description explains when to use each type ('pick tags that actually have reach for a caption' for hashtags, 'useful for the next video topic' for keywords) and notes capability requirements (profile_analytics and trend_search), with a pointer to list_users. It does not explicitly name alternatives or state when not to use the tool, but the use cases are clear.

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

Latest Blog Posts

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/Upload-Post/upload-post-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server