Skip to main content
Glama

Suggest keywords for an app (AI)

generate_keywords
Read-only

Generate a keyword list for an app from its own store listing, each scored with its popularity (SAP) and the app's current rank where it has one. Use it to propose new keywords to target; keyword_app_suggestions reports what the app already ranks for. Costs 12 credits.

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": {
      "store": "<store>",
      "country": "<country>",
      "package": "<package>"
    },
    "name": "generate_keywords"
  }
}

Input Schema

NameRequiredDescriptionDefault
limitNoHow many rows to return, up to 50.
storeYesWhich app store: "android" (Google Play) or "ios" (App Store).
countryYesTwo-letter ISO country code, e.g. "US", "GB", "DE".
packageYesApp package / bundle id, e.g. "com.discord" (Android) or a numeric App Store id. If you only have the app name, call app_search first to resolve it.
languageNoLanguage code for the generated or localised text, e.g. "en".

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changed
    • changedInput schema / properties / limit / description
      Previous value: -"How many rows to return, up to 100."New value: +"How many rows to return, up to 50."
    • changedInput schema / properties / limit / maximum
      Previous value: -100New value: +50
  2. First observed

TDQS

A4.5/5.0
Behavior4/5

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

Annotations already declare this is a read-only, open-world operation, so the description need only add non-obvious traits — and it does, disclosing a concrete cost of 12 credits per call, which an agent must weigh before invoking. It also sketches the response shape (keywords with SAP scores and optional rank). It stops short of covering pagination or any failure conditions for apps without a listing.

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

Conciseness5/5

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

Three short sentences, front-loaded with what is produced, followed by when to use it, followed by cost. Every clause carries information — output contents, sibling routing, and price — with no restatement of the title or schema.

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

Completeness5/5

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

For a five-parameter read-only tool with no output schema, the description covers the essentials: what is generated, what each row contains (SAP and rank), how it differs from the nearest sibling, and the credit cost. Remaining details live in the fully documented schema, so nothing critical is missing.

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% and every parameter (store, country, package, language, limit) is already explained in the schema, including enum values and the app_search fallback. The description adds no parameter-level meaning such as how 'language' interacts with the app's listing or how 'limit' affects scoring, so the baseline of 3 applies.

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?

States a specific verb and resource ('Generate a keyword list for an app') plus the source ('from its own store listing') and the return content (popularity SAP score and current rank). It explicitly differentiates itself from the sibling keyword_app_suggestions, so an agent can pick between them without opening either schema.

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

Usage Guidelines5/5

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

Gives a concrete use case ('propose new keywords to target') and names the alternative tool with its distinguishing behaviour ('keyword_app_suggestions reports what the app already ranks for'). The prerequisite for resolving a package id via app_search is documented in the package parameter, so selection guidance is complete.

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.