Skip to main content
Glama
iran-apps-mcp

iran-apps-mcp

by sepehr071

Search apps

ap_search
Read-onlyIdempotent

Find apps and games by name across Cafe Bazaar and Myket, returning package names, ratings, and store URLs so you can locate a package before further lookup.

Instructions

Search Cafe Bazaar and/or Myket for apps and games by name; returns package names, ratings and store URLs.

Use first to find a package name. Bazaar cards carry rating, category, installs and price when paid; Myket cards only name and tagline.

Input Schema

NameRequiredDescriptionDefault
pageNo1-based (Bazaar 24 per page, Myket 20).
limitNoMax apps per store.
queryYesPersian or English, e.g. 'تاکسی'.
storeNo'bazaar', 'myket' or 'both'.both

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed4 schema fields changedv0.2.0
    • changedInput schema / properties / limit / description
      Previous value: -"Max apps returned per store."New value: +"Max apps per store."
    • changedInput schema / properties / page / description
      Previous value: -"1-based result page (Bazaar 24 per page, Myket 20)."New value: +"1-based (Bazaar 24 per page, Myket 20)."
    • changedInput schema / properties / query / description
      Previous value: -"Search text, Persian or English, e.g. 'تاکسی' or 'snapp'."New value: +"Persian or English, e.g. 'تاکسی'."
    • changedInput schema / properties / store / description
      Previous value: -"'bazaar' (Cafe Bazaar), 'myket' or 'both' (default, results side by side)."New value: +"'bazaar', 'myket' or 'both'."
  2. First observedv0.1.0

TDQS

A4.1/5.0
Behavior4/5

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

Annotations already declare readOnly, idempotent, openWorld and non-destructive, so safety is covered. The description goes beyond them by disclosing a real asymmetry in results: Bazaar entries carry rating, category, installs and price when paid, while Myket entries only carry name and tagline. It does not mention throttling, empty-result behavior, or partial failure when one store errors.

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 tight sentences with no filler: what it does and returns, then how to use it, then a caveat about differing card contents. The line break mid-sentence and the colloquial 'cards' term slightly blunt readability, but nothing is wasted.

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?

With no output schema, the description correctly takes on the job of describing return fields and their per-store variance, which is the main thing an agent needs here. What remains thin is failure and edge behavior — zero-hit queries, one store failing while 'both' is selected — for an openWorld search tool.

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%, with page size, limits, language and the store enum all documented inline, so the schema does the parameter work. The description adds only indirect meaning — that the 'store' choice changes which fields appear in results — and nothing about pagination depth or per-store page sizes. Baseline 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 (search) plus the exact resource (apps and games across Cafe Bazaar and/or Myket) and names what comes back (package names, ratings, store URLs). That is enough for an agent to separate it from ap_app (lookup), ap_top (rankings), ap_similar (related) and ap_compare without opening any schema.

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?

'Use first to find a package name' gives a concrete sequencing rule that ties this tool to the downstream ap_app/ap_compare workflow. It stops short of stating when NOT to use it (e.g. when the package name is already known), so it falls one step shy of the top mark.

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