Skip to main content
Glama

AppTrack Ninja

Server Details

App Store intelligence for AI assistants: search and inspect iOS apps, read top free, paid and grossing charts per storefront, browse publisher portfolios, and manage an ASO keyword tracker with daily rank history. Requires an AppTrack Ninja Pro key (Authorization: Bearer).

Ownership verified
Status
Healthy
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL

TDQS

B3.2/5.0

Scored across 12 tools

Disambiguation4/5

Most tools target distinct resources or actions (tracked apps, keywords, catalog, publisher, account). Minor overlap exists between find_apps (structured filter) and search_apps (natural-language search), and between get_app (metadata by language) and get_app_market (storefront metrics), but descriptions clarify the boundaries.

Naming Consistency4/5

Nearly all names use consistent snake_case and clear verb_noun or noun forms (add_tracked_app, get_app, list_tracked_apps). Exceptions like trending_apps (no verb) and whoami (no underscore) are minor deviations but still readable.

Tool Count5/5

12 tools is well within the ideal 3–15 range for an App Store tracking and discovery API. Each tool covers a distinct capability (tracking, keyword data, catalog search, charts, publisher lookup, account info) without obvious redundancy.

Completeness3/5

Core create/read operations are present (add_tracked_app, add_tracked_keywords, list_tracked_apps, get_tracked_keywords, get_keyword_history). However, there are no update or delete operations for tracked apps or keywords, which are notable lifecycle gaps that could force agents to work around missing functionality.

Available Tools

12 tools
add_tracked_appBInspect

Track an App Store app in one country. Country is a two-letter storefront. A free account can track one app.

ParametersJSON Schema
NameRequiredDescriptionDefault
appIdYes
countryYes

TDQS

B3.3/5.0
Behavior3/5

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

With no annotations, the description carries the full behavioral burden. It does disclose two useful traits beyond the schema: the two-letter storefront format and the free-tier cap of one tracked app. However, it says nothing about what happens when an app is already tracked (idempotency/duplication), what data is fetched, or what the response contains.

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, front-loaded sentences with no filler; the core action comes first, followed by the two constraints an agent most needs. Every sentence earns its place given the 0% schema coverage.

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

Completeness3/5

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

For a simple two-parameter tool with no output schema this is close to adequate, covering purpose, format, and a quota limit. It still omits the side-effect/duplicate behavior and any auth expectation, which matters because there are no annotations to cover them.

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 0%, so the description must compensate. It adds real meaning for 'country' ('a two-letter storefront') beyond the regex pattern, but 'appId' is never explained and its numeric-string nature is only implied by the pattern. Partial compensation justifies a middle score.

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 description states a specific verb and resource ('Track an App Store app') and adds scope ('in one country'), so an agent can distinguish it from add_tracked_keywords. It does not explicitly name any sibling or contrast itself with list_tracked_apps, so it falls short of a 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/5

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

There is no when-to-use guidance, no mention of prerequisites (e.g., that an account is required) beyond the passing 'a free account can track one app' limit, and no routing to alternatives such as add_tracked_keywords. The usage context is only implied.

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

add_tracked_keywordsAInspect

Add up to 1000 keywords to a tracked app row (one country). A free account can track five keywords. Rank data is filled in after the keywords are saved.

ParametersJSON Schema
NameRequiredDescriptionDefault
termsYes
trackedAppIdYes

TDQS

A3.8/5.0
Behavior4/5

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

With no annotations, the description carries the full burden and does add real behavioral context: a hard cap of 1000 keywords, a free-account cap of five, and the fact that rank data is populated asynchronously after saving. It omits auth/permission requirements and duplicate-keyword handling, so it falls short of complete disclosure.

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, no filler, with the resource and scope front-loaded and the async behavior noted last where it is least critical for invocation.

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 simple two-parameter tool with no output schema, the description covers the important operational facts: volume limits, the free-tier quota, and delayed rank data. The missing prerequisite that the tracked app row must exist is the main gap.

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 coverage is 0% and both parameters are required, so the description must compensate. It explains the 'up to 1000' bound on terms and clarifies that trackedAppId refers to a single-country row, but it doesn't explain term format, uniqueness, or validation beyond what the schema's maxLength already encodes.

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?

States a specific verb ('Add') and resource ('keywords to a tracked app row'), plus scope constraints (one country, up to 1000). It is distinguishable from sibling add_tracked_app, though it never explicitly contrasts itself with the app-creation tool it depends on.

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?

The description implies context via 'tracked app row (one country)' and free-account quota, but it never says when to use this versus add_tracked_app or get_tracked_keywords, nor states the prerequisite that the tracked app row must already exist.

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

find_appsCInspect

Structured catalog filter for a Pro account. Dates are YYYY-MM-DD. upcoming=false drops pre-orders. Pass the previous response next value as cursor to continue. limit defaults to 50 and caps at 5000.

ParametersJSON Schema
NameRequiredDescriptionDefault
qNo
sortNo
limitNo
orderNo
cursorNo
countryNo
languageNo
upcomingNo
minRatingNo
monetizationNo
updatedAfterNo
releasedAfterNo
updatedBeforeNo
minRatingCountNo
releasedBeforeNo

TDQS

C2.7/5.0
Behavior3/5

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

With no annotations, the description carries the full burden, and it does disclose real behavior: cursor-based pagination via a returned 'next' value, a default limit of 50 with a 5000 cap, and that upcoming=false drops pre-orders. It still omits return shape, ordering semantics, rate limits, and error behavior.

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?

Five short, information-dense sentences with no filler; pagination and defaults are each given one clause. The opening purpose clause is the weakest part because it is a noun phrase rather than an actionable statement.

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

Completeness2/5

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

For a 15-parameter tool with no annotations and no output schema, the definition omits much of what an agent needs: what a result row contains, how sort/order interact, and the meaning of most filter fields. The pagination note is the one genuinely complete piece of context.

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

Parameters2/5

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

Schema description coverage is 0% across 15 parameters, so the description must compensate, and it only touches limit, cursor, upcoming, and date format (which the schema pattern already encodes). Roughly nine parameters — q, sort, order, country, language, minRating, minRatingCount, monetization — are undocumented in either place.

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

Purpose3/5

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

The phrase 'Structured catalog filter' names the resource domain (app catalog) and implies a list/filter operation, so the gist is recoverable. However, there is no clear verb and no differentiation from siblings like search_apps, trending_apps, or get_app, which an agent must disambiguate on its own.

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

Usage Guidelines2/5

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

The description states it is for 'a Pro account' (a prerequisite of sorts) but never says when to choose this over search_apps or the other catalog-listing tools. No exclusion criteria, no guidance on which parameters combine to answer which question.

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

get_appCInspect

Title, description, version and screenshot URLs stored for one app and language.

ParametersJSON Schema
NameRequiredDescriptionDefault
appIdYes
versionNo
languageNo

TDQS

C2.7/5.0
Behavior3/5

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

With no annotations and no output schema, the description carries the full behavioral burden. It does disclose the shape of the return payload (title, description, version, screenshot URLs) and that data is scoped to one app and one language, which is genuinely useful given the missing output schema. It says nothing about permissions, error behavior when the app or version is not found, or what happens when language is omitted.

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?

A single compact sentence with no filler or redundancy. It is efficient, though as a verbless fragment it is not ideally front-loaded for an action tool.

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

Completeness2/5

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

For a three-parameter tool with zero annotation coverage, no output schema, and no parameter documentation, the description is too thin. It also leaves the role of the 'version' input unresolved, so an agent cannot confidently construct a call.

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

Parameters2/5

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

Schema description coverage is 0% across three parameters, so the description must compensate, and it does not. It mentions 'app' and 'language', loosely mapping to appId and language, but omits the numeric-ID constraint, the two-letter language code format, and never clarifies whether 'version' is an input selector or only a returned field. That ambiguity is actively confusing.

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

Purpose3/5

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

The description names the resource scope ('one app and language') and enumerates the returned fields (title, description, version, screenshot URLs), so the intent is inferable. However, it is a noun phrase with no verb, and it never distinguishes this from siblings like get_app_market, find_apps, or search_apps, which also deal with app data. That leaves the agent guessing about the exact operation.

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

Usage Guidelines2/5

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

There is no statement of when to use this tool, no prerequisites, and no mention of alternatives such as get_app_market or find_apps. The agent must infer usage purely from the tool name. No guidance is provided at all.

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

get_app_marketCInspect

Price, rating and version for one app in one storefront.

ParametersJSON Schema
NameRequiredDescriptionDefault
appIdYes
countryYes

TDQS

C2.9/5.0
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 behavioral burden, yet it discloses nothing beyond the returned fields. It does not state that this is a read-only lookup, whether auth is required, what happens for an unknown appId or unsupported country, or whether results are cached/rate-limited.

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?

A single front-loaded sentence fragment with no filler; the returned fields come first. It is efficient, though the extreme terseness edges toward under-specification rather than optimal brevity.

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

Completeness3/5

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

For a simple two-parameter read tool with no output schema, the description covers the essential 'what you get' but omits usage routing, failure behavior, and parameter meaning. Adequate at a minimum-viable level, with clear gaps.

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 0% for two required params, so the description must compensate; it partially does by framing country as 'storefront' and scoping to a single app. It still adds no format detail (the regex constraints live only in the schema) and never mentions the parameters by name.

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 description names the resource (one app in one storefront) and enumerates exactly what is returned (price, rating, version), so the agent knows the shape of the data. It does not, however, distinguish itself from the close sibling get_app or explain how 'market' differs from general app data.

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

Usage Guidelines2/5

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

There is no guidance on when to call this versus get_app, find_apps, or search_apps, and no prerequisites are stated. The only implied usage is 'you want price/rating/version for a known app in a known storefront,' which the agent must infer.

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

get_keyword_historyCInspect

Daily rank history for one tracked keyword.

ParametersJSON Schema
NameRequiredDescriptionDefault
keywordIdYes

TDQS

C2.6/5.0
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, and it does not state the date range covered, how much history is returned, pagination behavior, or what happens for a keyword with no data. Only the 'daily' granularity is communicated.

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 description is a single front-loaded fragment with zero redundancy, which is structurally clean, but it is under-specified rather than genuinely concise given the unanswered questions about output and parameters.

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

Completeness2/5

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

With no output schema and no annotations, the description must explain returns and constraints, and it does not — no time window, no history length, no error behavior. For even a simple one-parameter tool this leaves meaningful gaps.

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

Parameters2/5

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

Schema description coverage is 0% for the single required keywordId, and the description adds almost nothing — 'one tracked keyword' only vaguely hints that the ID comes from tracked keywords. There is no explanation of format, valid source, or behavior for an unknown ID.

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 phrase 'Daily rank history for one tracked keyword' names a specific resource (rank history), its granularity (daily), and its scope (one tracked keyword), so an agent knows what it retrieves. It lacks an explicit verb and never references sibling tools such as get_tracked_keywords, which keeps it from a 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/5

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

There is no guidance on when to call this tool, what prerequisites exist (e.g. obtaining a keywordId from get_tracked_keywords), or how it relates to the other keyword/app tools. The agent must infer everything from the one-line summary.

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

get_publisherCInspect

Publisher identity and a short list of their apps.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo
publisherIdYes

TDQS

C2.4/5.0
Behavior2/5

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

With no annotations, the description carries the full burden and only hints that a list is returned ('short list of their apps'). It says nothing about read-only nature, permissions, how the list is scoped or paginated, or what the response contains beyond 'identity'.

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?

A single compact sentence with the key content front-loaded. It is efficient, though efficiency here shades into under-specification rather than disciplined brevity.

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

Completeness2/5

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

There is no output schema and no annotations, and the description does not compensate: it leaves the limit parameter, id expectations, and return shape unexplained. For a 2-parameter lookup tool with zero structured support, more detail was needed.

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

Parameters2/5

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

Schema coverage is 0%, so publisherId and limit are undocumented in structured fields. The phrase 'short list of their apps' weakly implies the limit parameter caps that list, but neither the id format (maxLength 120) nor the limit range (1-200) is clarified in the description.

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

Purpose3/5

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

The description names the resource (publisher) and what it returns (identity plus a short list of apps), which distinguishes it from siblings like get_app and get_app_market. However, it is a noun phrase with no verb, so it never explicitly states that this is a lookup/retrieval operation for a given publisherId.

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

Usage Guidelines2/5

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

No when-to-use guidance, no prerequisites, and no mention of alternatives such as get_app or find_apps. The agent must infer that this is the publisher-level counterpart to get_app from the name alone.

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

get_tracked_keywordsBInspect

Keyword table for one tracked app: popularity, difficulty, position, and the day-over-day change.

ParametersJSON Schema
NameRequiredDescriptionDefault
appIdYes

TDQS

B3.2/5.0
Behavior3/5

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

With no annotations the description carries the full burden, and it does disclose the returned metrics (popularity, difficulty, position, day-over-day change). However it says nothing about ordering, row limits, or behavior for untracked apps, so the disclosure is only partial.

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?

A single compact sentence that front-loads the resource and appends the payload. It earns its place, though being a sentence fragment it is terse to the point of under-specification.

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

Completeness3/5

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

For a one-parameter read tool with no output schema and no annotations, the description gives a reasonable sketch of returned fields but omits error conditions, ordering, and completeness of the keyword set, leaving the agent to guess.

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 0% for the single appId parameter. The description partially compensates by implying the id must refer to a tracked app, but adds no format or lookup detail beyond that.

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 description names a specific resource (keyword table) and scope (one tracked app), plus the metrics returned. It is distinguishable from get_keyword_history and list_tracked_apps by content, though it never explicitly contrasts itself with them.

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

Usage Guidelines2/5

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

Only the phrase 'one tracked app' hints at a precondition; there is no explicit when-to-use, no statement of what happens for an untracked app, and no routing to alternatives like get_keyword_history or add_tracked_keywords.

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

list_tracked_appsAInspect

Apps and storefronts this account tracks for keyword rank. Free accounts see one app and five keywords; a lapsed Pro plan hides anything beyond that.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A3.7/5.0
Behavior3/5

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

With no annotations, the description carries the full behavioral burden. It does add genuinely useful context beyond structured data — free accounts see one app and five keywords, and a lapsed Pro plan hides the rest — which tells the agent results can be silently truncated. It says nothing about auth requirements, pagination, or return shape.

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?

Two sentences, no filler, and the core scope statement is front-loaded ahead of the plan-limit caveat. Every clause earns its place.

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 parameterless list tool with no output schema, the description covers what is returned (tracked apps and storefronts) and the visibility caveat that governs completeness of results. Only the exact return format per app is left unspecified, which is a minor gap.

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

Parameters4/5

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

The tool takes zero parameters, so there is nothing for the description to disambiguate and the baseline of 4 applies. No parameter-level detail is needed or missing.

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 description states a specific resource ('apps and storefronts this account tracks for keyword rank'), which is enough to separate it from add_tracked_app and get_app. The verb is implied rather than stated (the name supplies 'list'), so it falls just short of an explicit verb+resource formulation.

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 by the zero-parameter, read-style shape of the call, but the description never says when to prefer this over the obvious sibling get_tracked_keywords or add_tracked_app. No exclusions or prerequisites are given.

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

search_appsCInspect

Natural-language search of the App Store catalog. Returns compact app cards.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo
queryYes

TDQS

C2.7/5.0
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 does disclose the return shape ('compact app cards'), which is useful given there is no output schema, but says nothing about pagination, result caps, rate limits, or what 'compact' omits.

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?

Two tightly written sentences, with the core purpose front-loaded and the return-format note second. Nothing is padded, though the brevity comes partly at the cost of missing detail.

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

Completeness2/5

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

For a tool with no annotations, no output schema, and completely undescribed parameters, two sentences are insufficient. The agent lacks the alternative-selection guidance and limit semantics it would need to invoke this correctly against its many siblings.

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

Parameters2/5

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

With 0% schema description coverage, the description must compensate for both parameters. It characterizes query as natural-language, but limit — including its 1-200 range and effect on results — is entirely undocumented in both the schema and the description.

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 description names a specific verb (search) and resource (the App Store catalog) and adds the 'natural-language' qualifier. It does not, however, distinguish itself from the sibling find_apps, which by name sounds like an overlapping catalog-search operation.

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

Usage Guidelines2/5

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

There is no indication of when to use this tool versus find_apps or trending_apps, nor any stated preconditions. The agent is left to infer the routing decision entirely from the name.

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

whoamiBInspect

The plan on this key and how many calls remain this minute.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

B3.3/5.0
Behavior3/5

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

With no annotations, the description carries the full burden. It does disclose two behavioral facts an agent cares about: the key's plan and the live rate-limit counter, implying a read-only, identity-scoped call. It does not state that it has no side effects, nor what auth context it assumes.

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?

A single short sentence with no filler, and the most useful fact (plan + quota) is front-loaded. It is slightly clipped as a verbless fragment, which costs a little clarity.

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

Completeness3/5

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

The tool is simple (no params, no nested objects), but with no annotations and no output schema the description should fully describe the response shape and side-effect profile. It names the two returned data points but not their structure or any auth/read-only guarantee.

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

Parameters4/5

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

The schema defines zero parameters, so there is nothing for the description to clarify; the baseline for a no-parameter tool is 4.

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 description names the concrete resource it returns: the plan tied to the current key plus the remaining per-minute call quota. That is specific enough to separate it from all siblings (app/keyword search tools), though it is a noun phrase with no explicit verb like 'returns' or 'reports'.

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

Usage Guidelines2/5

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

There is no guidance on when to call this versus anything else, nor any stated prerequisites (e.g., that a valid key must be configured). The agent must infer usage entirely from the name.

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

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 12 tool updates
    • First observedadd_tracked_app
    • First observedadd_tracked_keywords
    • First observedfind_apps
    • First observedget_app
    • First observedget_app_market
    • First observedget_keyword_history
    • First observedget_publisher
    • First observedget_tracked_keywords
    • First observedlist_tracked_apps
    • First observedsearch_apps
    • First observedtrending_apps
    • First observedwhoami

Related MCP Servers

  • A
    license
    Not graded
    quality
    B
    maintenance
    Perplexity for social: ask what competitors are running across social and get answers grounded in real ad and creative data, not guesses.
    2
    Apache 2.0
  • A
    license
    A
    quality
    C
    maintenance
    Enables brand visibility monitoring across major AI platforms like ChatGPT, Claude, Gemini, and Perplexity. It allows users to track visibility scores, analyze competitor data, and receive actionable insights to improve AI-generated brand recommendations.
    16
    11 npm
    1
    MIT
  • A
    license
    Not graded
    quality
    B
    maintenance
    Browse IndustryLens's published competitive-intelligence reports and head-to-head competitor comparisons from any AI agent — real, source-backed data.
    MIT
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources