MagicScreenshots
Server Details
Search real App Store screenshots and preview videos; generate and localize your own.
- Status
- Healthy
- Uptime
- 100.0% over 42 days
- Last Tested
- Transport
- Streamable HTTP · MCP 2024-11-05
- URL
- Repository
- Humanleap/magicscreenshots-mcp
- GitHub Stars
- 0
- Server Listing
- MagicScreenshots
- ChatGPT
- –
- Claude
- –
TDQS
Scored across 19 tools
Several tools return overlapping content: get_screenshots, get_directory_screens, and get_directory_app all surface listing screenshots, and the descriptions only partially disambiguate them (free-tier limits, live vs catalog slug). The three meta tools (get_magicscreenshots_discovery_document, get_magicscreenshots_markdown, get_magicscreenshots_site_summary) also blur together as 'fetch public info'. Category/tag/listing search tools are distinct, and the restyle lifecycle tools (create, approve, get_job_group, list_results) are clearly separated.
All names are snake_case with a verb_noun shape (get_directory_app, list_directory_tags, create_restyle), which is readable and predictable. However, five tools carry a redundant 'magicscreenshots' infix while the rest do not, splitting the set into two naming families for no functional reason.
19 tools across four sub-domains (directory browsing, restyle jobs, localization, meta/discovery docs) is on the heavy side, and roughly five of them are documentation/discovery helpers that add surface area without new capability. Each tool is plausibly justified, but the set feels padded.
Directory browsing and the restyle lifecycle are well covered (search, inspect, create, approve, poll, list outputs). Localization is a notable gap: create_localize exists but there is no dedicated status/list result tool for localization jobs, and there is no cancel or delete operation anywhere. Agents would hit dead ends when tracking localization work or cleaning up.
Available Tools
19 toolsapprove_restyleApprove restyleBInspect
Approve a generated restyle overview and start final screenshot extraction.
| Name | Required | Description | Default |
|---|---|---|---|
| group_id | Yes | ||
| overview_url | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=false, destructiveHint=false, idempotentHint=false, and openWorldHint=true, so the safety profile is covered. The description adds one genuinely valuable behavioral detail beyond the annotations: approving triggers 'final screenshot extraction,' revealing a downstream side effect. It still omits reversibility, whether re-approval is meaningful (non-idempotent), and permission requirements.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, front-loaded sentence with no filler; the action and its consequence are stated immediately. It is efficient, though its brevity borders on under-specification for a tool with meaningful side effects.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a non-readOnly, open-world tool with zero parameter documentation and no output schema, the description omits prerequisites (a generated restyle must exist) and the meaning of both parameters. The agent knows what happens but not what to pass or when the call is valid.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% for two parameters (group_id required, overview_url optional), so the description must carry the burden of explaining them. It mentions neither, leaving the meaning and expected format of group_id and overview_url entirely undocumented.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific verb ('Approve'), a specific resource ('a generated restyle overview'), and the resulting action ('start final screenshot extraction'). It is clear and concrete, but it does not differentiate itself from the sibling create_restyle or otherwise orient the agent among related tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied by 'a generated restyle overview' being the precondition, so an agent can infer this must follow a restyle generation step. However, there is no explicit when-to-use vs. when-not, no mention of prerequisites, and no routing to alternatives like create_restyle.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_api_keyCreate API keyAInspect
Create an agent API key without an account. A short library search is free. The rest of the library needs Library Pro, $19 a month, on a claimed key. Live App Store lookup of the user's own app works with the key. Restyle and localize require the human to open claim_url, sign in, and pay.
| Name | Required | Description | Default |
|---|---|---|---|
| name | No | Optional label for the key, such as the agent or chat name. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Adds substantial context beyond the annotations: no account required, the $19/month Library Pro gate, and a human-in-the-loop claim_url + sign-in + payment step. Annotations already cover the mutation/safety profile (readOnly=false, idempotent=false, openWorld=true), so this is value-add rather than duplication. It stops short of saying the key itself is returned and how it should be stored.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Four dense sentences, front-loaded with the action and scope, then pricing and gating. Each sentence carries information an agent would need to relay to a user, though the pricing figure and tier list run slightly long for a one-parameter tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool whose output is presumably an API key and a claim_url, the description never states what is returned or where claim_url comes from — the reader is told to have a human 'open claim_url' without learning that this call produces it. With no output schema, that missing return-value information is a real gap against otherwise strong gating context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Only one optional parameter, and the schema already documents it at 100% coverage ('Optional label for the key'). The description never mentions the name parameter or any constraint on it, so it neither adds nor detracts from the schema baseline.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('Create an agent API key') plus the distinguishing constraint 'without an account.' That separates it from the key-consuming siblings (create_restyle, create_localize, approve_restyle), though it never names those siblings as downstream consumers explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives concrete when-to-use context: a short library search is free without Pro, live App Store lookup works with the key, and restyle/localize require a paid claimed key. The tier boundaries are clear, but it never says 'call this before X' for the specific sibling tools that need the key.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_localizeCreate localizeCInspect
Create MagicScreenshots localization jobs for source App Store screenshots across one or more target locales.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| source_app | Yes | ||
| target_locales | Yes | Locale IDs such as JPN, DEU, FRA, BRA, or objects with language/country. | |
| source_screenshot_urls | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare this is a non-read-only, non-idempotent, open-world, non-destructive operation, so the mutation profile is covered. The description adds no behavioral detail beyond that fact – nothing about job queuing, latency, cost, or how to follow up on the created job.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence that names the action, resource, and scope with no wasted words. It is appropriately sized, though it errs toward under-specification rather than verbosity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a mutation tool with nested object parameters, two required fields, no output schema, and 25% schema coverage, the description should explain at least minimal input expectations and the async nature of job creation. As written it leaves the agent to guess how to supply source_app and screenshots.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 25% and the description explains none of the four parameters. It never mentions limit (capped at 10), the source_app object's name/query/app_id/app_url/country fields, or source_screenshot_urls, leaving most inputs documented only by bare property names.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (Create) and resource (MagicScreenshots localization jobs) along with the input (source App Store screenshots) and target (one or more locales). It is clear what the tool produces, but it never distinguishes itself from sibling creation tools such as create_restyle.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use guidance, no prerequisites (e.g. which source_app forms are accepted, whether a screenshot URL is required), and no reference to the sibling create_restyle or approval flow. The agent must infer its place in the workflow.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_restyleCreate restyleAInspect
Restyle the user's App Store screenshots to match a directory inspiration set. Prefer inspiration_slug from list_directory_apps (duolingo, monzo, doordash, …). Requires an API key; the human must claim the key and pay before generation runs.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| source_app | Yes | The user's app. Use query, app_url, or app_id from get_screenshots. | |
| inspiration_app | No | ||
| inspiration_slug | No | Directory slug from list_directory_apps / get_directory_app. Preferred over a free-text inspiration query. | |
| source_screenshot_urls | No | ||
| inspiration_screenshot_urls | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare write/open-world/non-idempotent/non-destructive, so the bar is lower, but the description adds real value the annotations don't: an API-key auth gate and a human claim-and-pay step before the job executes. That cost/authorization constraint is exactly the kind of behavioral context the agent needs. It doesn't describe output or the subsequent approval step.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three tight sentences with the core purpose front-loaded, followed by the preferred parameter and the hard prerequisite. The illustrative slug examples (duolingo, monzo, doordash) are compact and useful rather than padding. No wasted prose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 6-parameter write tool with nested objects and no output schema, the description covers purpose, routing, and the auth/payment gate. It omits the surrounding workflow – notably that a sibling approve_restyle exists, implying a review step – and gives no sense of what the call returns or how jobs are tracked. Adequate but with clear gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 33%, so the description is expected to compensate. It usefully disambiguates inspiration_slug (preferred over a free-text inspiration query) with concrete examples, but says nothing about source_app, inspiration_app, the screenshot URL arrays, or limit. Partial compensation for a low-coverage schema lands at 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource: restyling the user's App Store screenshots against a directory inspiration set. The agent can distinguish it from create_localize and get_screenshots by the 'restyle to match inspiration' framing. It stops short of explicitly naming sibling alternatives, keeping it at 4 rather than 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives a clear routing rule ('Prefer inspiration_slug from list_directory_apps') and a hard prerequisite (API key must be claimed and paid before generation runs). That tells the agent when the tool is usable and which parameter path to prefer. No explicit when-not or exclusion guidance is given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_app_historyGet listing historyARead-onlyIdempotentInspect
Every version of an app's App Store listing we have captured (screenshots and preview videos per date), newest first. Needs Library Pro, $19 a month.
| Name | Required | Description | Default |
|---|---|---|---|
| slug | Yes | Library slug such as instagram. | |
| limit | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already establish read-only, idempotent, non-destructive, closed-world behavior. The description adds useful non-schema context: access requires Library Pro at $19/month, results are newest first, and each version includes screenshots and preview videos by date. It does not discuss pagination or failure modes, but given annotations this is solid.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two compact sentences, front-loaded with what the tool returns; the pricing prerequisite is relevant rather than padding. No structural issues.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a two-parameter read-only history tool with no output schema, the description gives the important return shape: every captured listing version, screenshots and preview videos, newest first. It omits how limit affects the result set, so a minor completeness gap remains.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema documents slug with an example, while limit is only constrained by default/min/max and lacks semantic description. The tool description does not explain what limit controls, so parameter value beyond the schema is minimal. With 50% coverage and one of two params undocumented, a 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States the resource and scope clearly: historical versions of an app's App Store listing, including screenshots and preview videos, ordered newest first. It is more specific than a tautology, though it does not explicitly name sibling tools or clarify current-vs-historical alternatives.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The pricing/plan prerequisite is explicit ('Needs Library Pro, $19 a month'), but there is no explicit when-to-use/when-not guidance or named alternative such as get_screenshots or get_app_videos. The historical framing implies its use, so this is minimum viable rather than strong routing guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_app_videosGet App Store preview videosARead-onlyIdempotentInspect
App Store preview videos for a library app, including 1-hour download links to the mp4 files. Needs Library Pro, $19 a month. Pass slug from list_directory_apps.
| Name | Required | Description | Default |
|---|---|---|---|
| slug | Yes | Library slug such as instagram. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover read-only/idempotent safety, so the description's job is to add entitlement and output-lifetime context — which it does: a $19/month Library Pro requirement and 1-hour expiring download links. Those are non-obvious operational facts an agent cannot get from the schema or annotations. It stops short of saying what happens on a missing subscription or a failed slug.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three short sentences, no filler, with the output content and expiry front-loaded before the prerequisite and the parameter hint. Every sentence carries distinct information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a single-parameter read tool with no output schema, it covers return content, link lifetime, entitlement requirement, and input source — essentially everything needed to call it correctly. Only error/failure behavior on missing entitlement is absent, which is minor here.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3; the description earns above that by telling the agent exactly where the slug value comes from (list_directory_apps), which the schema's 'instagram' example does not.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States the resource precisely (App Store preview videos for a library app) and what comes back (1-hour download links to mp4 files), which is enough to distinguish it from get_screenshots and get_directory_screens at a glance. It doesn't name a sibling explicitly, so it falls short of full differentiation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
"Pass slug from list_directory_apps" gives clear provenance for the single input, and the Library Pro note flags a prerequisite. However, there is no guidance on when to prefer this over get_directory_screens or get_screenshots, so alternatives are left to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_directory_appGet directory appARead-onlyIdempotentInspect
Get one directory app: metadata, ordered listing screenshots, app preview posters, and in-app event photos (as markdown images), related apps in the same genre, and the create_restyle arguments to copy that style. Without Library Pro this returns 3 screenshots. The rest, similar apps, and other countries are $19 a month.
| Name | Required | Description | Default |
|---|---|---|---|
| slug | No | Directory slug such as duolingo, monzo, or doordash. | |
| query | No | App name if you do not have a slug. | |
| app_id | No | Apple numeric app ID. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover the safety profile (readOnly, idempotent, non-destructive, closed-world), so the description adds real value by disclosing the plan-gated behavior: three screenshots without Library Pro, with additional content and other countries behind a $19/month tier. It also describes the return composition, though it does not cover auth or rate limits.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The definition is front-loaded and compact: the first sentence describes what is returned, and the second covers plan limitations. 'The rest' is slightly ambiguous, and the first sentence is dense, but no sentence is wasted.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
There is no output schema, so the description must explain return values, and it does: metadata, ordered screenshots, posters, event photos, related apps, and create_restyle arguments. It also explains the plan gating, leaving only minor gaps around identifier requirements and fallback behavior, which the parameter schema largely covers.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, and each parameter already has a clear description, so the baseline is 3. The tool description does not add syntax, selection logic, or fallback behavior beyond saying it retrieves 'one directory app'.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource ('Get one directory app') and enumerates exactly what comes back: metadata, screenshots, posters, in-app event photos, related apps, and create_restyle arguments. This clearly distinguishes it from sibling list or screenshot-only tools without needing to name them.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies that this tool is for retrieving a single app, but it does not explicitly say when to use it instead of list_directory_apps or get_directory_screens. It also gives plan-gating context but no guidance on choosing among slug, query, or app_id inputs.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_directory_screensGet directory screensARead-onlyIdempotentInspect
Get the ordered App Store listing screenshots for a library app, including markdown images a vision model can inspect. Pass country (jp, de, ...) for that storefront's screenshots and in-app events. Index is 1-based and matches /apps/:slug/screens/:index. Without Library Pro this returns the first 3 US screenshots. Other countries and the rest are $19 a month.
| Name | Required | Description | Default |
|---|---|---|---|
| slug | Yes | Directory slug such as duolingo. | |
| index | No | Optional 1-based screenshot index. | |
| country | No | App Store country for the localized listing, e.g. jp, de, fr, kr, cn, br, es, it, sa. Default us. get_directory_app lists which storefronts exist. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly/idempotent/non-destructive, so the added value here is the access-tier behavior: without Library Pro only the first 3 US screenshots come back, other countries and remaining indexes require the $19/month plan. That is exactly the kind of gate an agent needs before calling, though output format beyond 'markdown images' and any rate limits remain unstated.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences, front-loaded with purpose, then parameter guidance, then the pricing caveat. Every sentence carries information; only the '$19 a month' phrasing leans slightly promotional but still conveys a real constraint.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description does the right work by naming the return format ('ordered', 'markdown images a vision model can inspect') and disclosing the truncation/gating behavior. For a simple 3-parameter read tool this is close to complete, though the exact response envelope is unstated.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so all three parameters are already documented. The description adds two genuinely useful bits — that index is 1-based and mirrors the /apps/:slug/screens/:index route, and that country selects both screenshots and in-app events — but otherwise restates what the schema carries.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('Get the ordered App Store listing screenshots for a library app') plus the return shape (markdown images inspectable by a vision model). It does not explicitly differentiate from the sibling get_screenshots or get_app_videos, so an agent must infer the split from the 'directory'/library-app framing.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage context is implied rather than stated: pass country for localized storefronts, omit index for the ordered list. There is no explicit when-to-use/when-not statement and the close sibling get_screenshots is never named as the alternative for non-directory apps.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_job_groupGet job groupBRead-onlyIdempotentInspect
Check restyle job group status, overview URL, errors, and final output URLs.
| Name | Required | Description | Default |
|---|---|---|---|
| group_id | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, openWorldHint and destructiveHint=false, so the safety profile is fully covered elsewhere. The description contributes the useful detail that the read surfaces errors and final output URLs, but says nothing about polling cadence, terminal states, or how long results persist.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One compact, front-loaded sentence with no filler. It is terse to the point of being telegraphic, but nothing in it is wasted.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description does well to preview the return fields (status, overview URL, errors, output URLs). However, for a status-polling tool the omission of lifecycle semantics and the entirely undocumented group_id leave the definition only minimally complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0% and the single required parameter group_id is neither typed with meaning nor described anywhere. The description does not explain what a group_id is, where it comes from (presumably create_restyle), or its format, so it fails to compensate for the coverage gap.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Check') and names a concrete resource (restyle job group), then lists the fields of interest (status, overview URL, errors, final output URLs). That is enough to separate it from create_restyle and approve_restyle, though it never names a sibling explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no statement of when to call this, when not to, or which alternative to prefer. The polling-after-create workflow is only inferable from the phrase 'restyle job group' and the presence of create_restyle/approve_restyle siblings, not stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_magicscreenshots_discovery_documentGet discovery documentARead-onlyIdempotentInspect
Fetch a known agent discovery document such as API catalog, Agent Skills, MCP, OAuth metadata, OpenAPI, or llms.txt.
| Name | Required | Description | Default |
|---|---|---|---|
| endpoint | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, non-destructive, openWorld, so the safety profile is covered. The description adds that these are 'known' hosted discovery files, implying well-known-path fetching, but says nothing about failure modes (unknown endpoint, 404) or response format. Adds only modest context beyond the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with the verb and resource first, then the enumerations. No filler, nothing redundant.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With one required enumerated parameter, no output schema, and full annotation coverage, the description supplies enough to select the right endpoint and understand what kind of document comes back. It stops short of describing return format or error behavior, but nothing critical to invocation is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must carry the load for the single endpoint parameter. It does meaningful work by grouping the raw enum strings into recognizable document categories (API catalog, Agent Skills, MCP, OAuth metadata, OpenAPI, llms.txt), making the enum values interpretable rather than opaque paths.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (Fetch) and a specific resource (agent discovery document), then enumerates the concrete document kinds the endpoints map to. An agent can distinguish this from siblings like get_magicscreenshots_markdown or get_magicscreenshots_site_summary, though it never names them explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 the sibling document tools (markdown, site summary), nor any note that the endpoint must be one of the well-known paths. Usage is only implied by the examples given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_magicscreenshots_markdownGet page markdownBRead-onlyIdempotentInspect
Fetch a markdown representation of a known MagicScreenshots public page.
| Name | Required | Description | Default |
|---|---|---|---|
| route | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, openWorld and non-destructive behavior, so the safety profile is covered. The description adds that the output is markdown and that only public pages are reachable, which is modest extra context but says nothing about pagination, caching, or error behavior for unknown routes.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with no wasted words. It is tight, though arguably underwritten for the number of sibling tools it must be distinguished from.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only fetch with rich annotations and a self-documenting enum, most of what an agent needs is present, and no output schema means return details are not strictly required. However, it omits any hint of how it relates to the discovery document and site summary tools, which matters given the crowded sibling set.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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, and it only offers 'known ... page' for the single 'route' parameter. The enum values are largely self-documenting as URL paths, which limits the damage, but the description does not explain that route must be one of those enumerated paths or what each represents.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The verb 'Fetch' and resource 'markdown representation of a ... public page' are specific, and the word 'known' signals that the page must already be identified. It stops short of distinguishing itself from close siblings such as get_magicscreenshots_discovery_document or get_magicscreenshots_site_summary.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
'Known ... page' faintly implies you must already have a route rather than discovering one, but there is no explicit when-to-use, when-not-to-use, or named alternative among the many siblings. An agent has to infer whether to call this versus the site summary or discovery document.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_magicscreenshots_site_summaryGet site summaryARead-onlyIdempotentInspect
Return a concise summary of MagicScreenshots, the screenshot directory, public routes, MCP tools, and auth requirements.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, destructiveHint=false, and openWorldHint=false, so the safety profile is covered. The description adds the useful detail that the content spans auth requirements and MCP tools, but says nothing about caching, size, or that it is parameterless and thus safe as a first call.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with no filler; every listed item (directory, routes, tools, auth) earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description compensates by enumerating the summary's contents, which is effectively a return-value sketch. It is close to complete for a trivial parameterless overview tool, only lacking sibling differentiation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes zero parameters, which is the baseline-4 case; there is nothing for the description to disambiguate. Schema coverage is also 100%.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a clear verb (Return) and resource (a concise summary of MagicScreenshots) and enumerates the covered topics: the screenshot directory, public routes, MCP tools, and auth requirements. It does not, however, differentiate itself from the very similar sibling tools get_magicscreenshots_discovery_document and get_magicscreenshots_markdown, which an agent would need help distinguishing.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies an orientation/overview use case but never states when to call this versus the discovery document or markdown siblings. No exclusions or prerequisites are given, so the agent must infer usage 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_screenshotsGet screenshotsARead-onlyIdempotentInspect
Fetch high-resolution App Store screenshots. Directory shots return 3 screenshots without Library Pro. The rest of the listing is $19 a month. Pass live=true to look up the current App Store listing of the user's own app (API key required). Use get_directory_app when you already have a catalog slug.
| Name | Required | Description | Default |
|---|---|---|---|
| live | No | Skip the directory and fetch the current App Store listing. | |
| slug | No | Directory slug. Returns catalog screens without a live App Store lookup. | |
| query | No | App name to search in the directory, then the App Store. | |
| app_id | No | Apple numeric app ID. | |
| app_url | No | Apple App Store URL. | |
| country | No | us |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover safety (readOnly, idempotent, non-destructive), so the description's job is to add context — and it does: it discloses a paywall/quota model (3 free directory screenshots, remainder requires Library Pro at $19/mo) and that live lookups require an API key. It does not mention rate limits or response shape, but this is a strong add beyond the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Four short sentences, front-loaded with the core action and mode distinction. The pricing detail earns its place as it drives the free/paid decision, though the listing cost sentence is slightly verbose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 6-parameter, no-output-schema tool it covers modes, auth, and quota, but leaves a notable gap: nothing tells the agent which of the four identifiers (slug/query/app_id/app_url) to supply or whether they can be combined. That ambiguity matters for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 83%, so the baseline is 3. The description reinforces the meaning of live=true and explains that query searches the directory and then the App Store, but it does not clarify the relationship between slug, query, app_id, and app_url (mutual exclusivity, precedence) which is the main ambiguity across 6 params.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource ('Fetch high-resolution App Store screenshots') and distinguishes the two operating modes (directory shots vs. live lookup). It names one sibling (get_directory_app) but does not differentiate from get_directory_screens or get_app_videos, which overlap in subject matter.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It gives explicit conditions: pass live=true when you want the user's own app's current listing, and use get_directory_app when you already have a catalog slug. That is real routing guidance, though it never states when to prefer this tool over get_directory_screens.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_directory_appsSearch the screenshot libraryARead-onlyIdempotentInspect
Search thousands of real App Store listings (the top 100 free and top-grossing apps in every Apple category, refreshed daily). Filter by text, Apple genre slug, listing look (tag), today's chart rank, or apps that have preview videos. Returns slugs for get_directory_app, get_app_videos, get_app_history and create_restyle. Without Library Pro this returns 3 apps. The rest is $19 a month.
| Name | Required | Description | Default |
|---|---|---|---|
| tag | No | Listing-look slug from list_directory_tags, such as headline, device-frame or dark. | |
| chart | No | With category: order by today's top free or top grossing chart for that category. | |
| limit | No | ||
| query | No | App name, developer, slug or Apple ID. Example: "duolingo". | |
| offset | No | For paging; count in the response is the total match count. | |
| category | No | Genre slug from list_directory_categories, such as finance or food-drink. | |
| platform | No | ios (App Store) or android (Google Play). Default: both. | |
| has_video | No | Only apps whose listing has an App Store preview video. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare read-only and idempotent, and the description adds genuinely non-derivable behavior: data scope (top 100 free and top-grossing in every Apple category, refreshed daily) and a hard free-tier truncation to 3 apps with paid access at $19/month. The truncation notice is the kind of thing that would otherwise cause an agent to silently under-report results.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loads what is searched, then filters, then return values, then the access constraint — a sensible order with no filler. The final pricing sentence is informal but conveys the paywall, so it earns its place. One dense run-on sentence does mild damage to scannability.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description carries the job of saying what comes back, and it does ('returns slugs for...'). Paging semantics are covered by the offset parameter description. It stops short of 5 because response shape (total match count vs. result items) is only implied via the schema rather than stated.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 88%, so parameters are already well documented; the description only restates the filter categories. It does add the cross-tool prerequisite context by implying slugs come from list_directory_tags/list_directory_categories, but that is also already in the schema. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource: searches a large App Store listings corpus with explicitly enumerated filters (text, genre slug, look tag, chart rank, video presence). It also names the downstream tools that consume the returned slugs, so an agent can place it in a workflow. It does not explicitly contrast itself with sibling list_directory_categories/list_directory_tags, which are prerequisites rather than alternatives.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Clear about what inputs select what result sets and what the output feeds into (get_directory_app, get_app_videos, get_app_history, create_restyle). The free-tier cap of 3 apps is stated, which is actionable context. Explicit when-not-to-use guidance versus siblings is absent, so it stops short of a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_directory_categoriesList directory categoriesARead-onlyIdempotentInspect
List App Store screenshot directory categories (Finance, Food & Drink, Productivity, …) with app counts. Use this first when an agent wants inspiration by genre. A short search is free. The rest of the library is Library Pro, $19 a month.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover safety (readOnly, idempotent, non-destructive, closed-world), so the description earns credit for adding the commercially important behavioral detail that a short search is free while the wider library needs Library Pro at $19/month. That paywall context affects whether an agent should call or keep calling, and is not derivable from any structured field.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three short sentences, front-loaded with what the tool returns, then usage ordering, then the pricing caveat. Each sentence carries distinct information; the only mild inefficiency is the ellipsis-style category enumeration, which is still illustrative rather than padding.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter read-only listing tool with full annotation coverage, this covers purpose, entry-point usage, and the access limitation. With no output schema, it partially compensates by indicating results include app counts, though the exact response shape remains implied rather than stated.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes zero parameters, so the baseline is 4; there is nothing for the description to disambiguate. The note about app counts is a small bonus signal about what each category entry contains.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('List App Store screenshot directory categories') and gives concrete examples of the returned values (Finance, Food & Drink, Productivity) plus the fact that counts accompany each. That makes it clearly distinguishable from siblings like list_directory_apps or list_directory_tags without needing to open a schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
'Use this first when an agent wants inspiration by genre' gives a clear entry-point condition for the browsing flow. It stops short of naming explicit alternatives or when-not-to-use cases, so it is strong context rather than a full routing rule.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_directory_tagsList directory tagsARead-onlyIdempotentInspect
List listing-screenshot treatments (headline, device-frame, lifestyle, dark, character, social-proof, …) with app counts. These are App Store creative tags, not in-app UI patterns. A short search is free. The rest of the library is Library Pro, $19 a month.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, non-destructive behavior. The description adds domain context (App Store creative tags, not UI patterns) and cost/quota information (free short search, paid library), which is useful beyond the structured fields. However, the 'short search' concept is puzzling for a zero-parameter listing tool and is not clarified.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences, front-loaded with the core purpose and clarified with examples. The pricing sentence is relevant but somewhat promotional and could be trimmed; overall efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter, read-only listing tool with no output schema, the description provides enough: what is listed, that counts accompany tags, and the domain boundary. The return shape is only minimally described (tag names with app counts), and the free-tier limit is vague, but the essential call context is present.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so the schema is fully describing the (empty) input space. Baseline of 4 is appropriate; there are no parameters for the description to elaborate on.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (list) and resource (listing-screenshot treatments) with concrete examples. The clarification 'not in-app UI patterns' helps separate it from other directory tools, but it does not explicitly name siblings like list_directory_categories or list_directory_apps.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Implies usage for retrieving App Store creative tags and excludes in-app UI patterns, but gives no explicit when-to-use vs alternatives guidance. The 'short search is free' line hints at a browse context without defining it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_magicscreenshots_languagesList languagesBRead-onlyIdempotentInspect
Return supported screenshot localization languages and public guide routes.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, non-destructive, closed-world behavior, so the safety profile is covered. The description only adds a small amount of behavioral context by noting the response includes 'public guide routes' alongside languages, but says nothing about pagination, ordering, or whether the result set is exhaustive.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One tight sentence with the resource front-loaded and no filler. It is efficient, though arguably too sparse to earn a top score given the tool has an undocumented parameter.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description carries responsibility for explaining the return value; it names the two content categories but not their shape, and it leaves the 'limit' parameter's effect unexplained. Adequate minimum, but with clear gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The single 'limit' parameter has 0% schema description coverage and is never mentioned in the description. With a maximum of 50 and a default, an agent cannot tell from the text whether the full language list is returned by default or whether it is paginated/truncated.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ('Return') and the exact resources: supported screenshot localization languages and public guide routes. This lets an agent distinguish it from the similar-looking sibling list_magicscreenshots_markets by resource, though the description never explicitly names that sibling.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use guidance, no prerequisites, and no mention of an alternative tool. An agent can infer this is a reference-lookup call from the name, but the description adds nothing about context or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_magicscreenshots_marketsList marketsCRead-onlyIdempotentInspect
Return supported App Store market guides and public market routes.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| region | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, destructiveHint=false and openWorldHint=false, so safety is fully covered elsewhere. The description adds no behavioral context of its own — nothing about pagination, the default/max limit of 100, ordering, or what 'public market routes' means.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single tight sentence with no filler and the resource front-loaded. It is efficient, though it is arguably too terse for the amount of undocumented surface area.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema and zero parameter documentation, the description should explain the return shape and how region/limit shape results. Neither is covered, leaving the two optional parameters and the output format unexplained.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must carry parameter meaning, but it never mentions the 'region' enum values or the 'limit' cap. 'supported markets' loosely gestures at filtering but gives no syntax or allowed values.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ('Return') and resource ('supported App Store market guides and public market routes'), so an agent knows this is a read-only listing tool. It does not, however, distinguish itself from the parallel sibling list_magicscreenshots_languages, and 'market guides' vs 'markets' is slightly opaque.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no statement of when to call this tool, what question it answers, or how it relates to list_magicscreenshots_languages or the get_magicscreenshots_* siblings. 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.
list_resultsList resultsBRead-onlyIdempotentInspect
List recent MagicScreenshots restyle job groups and outputs for the authenticated account.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false and openWorldHint=true, so the safety profile is covered. The description adds account scoping and the word 'recent', but never defines the recency window, ordering, or whether results are paginated, so behavioral context remains thin.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single efficient sentence with no filler, and the scope constraint (authenticated account) is present. It is appropriately sized, though it could front-load the enumeration/recency behavior more explicitly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple one-parameter list tool with annotations and no output schema, this is minimally adequate. However, the agent still cannot tell how many results come back, whether the list is truncated or paginated, or what fields an output contains.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There is one parameter (limit) with 0% schema description coverage, and the description never mentions it, its bounds, or what happens if it is omitted. Only the vague word 'recent' hints at recency ordering, which does not compensate for the unexplained limit control.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ('List') and a specific resource ('MagicScreenshots restyle job groups and outputs'), scoped to the authenticated account. It is distinguishable from the singular get_job_group, though it does not explicitly name that sibling as the retrieval alternative.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives no when-to-use/when-not guidance and never points to alternatives such as get_job_group for a single job. The agent is left to infer that this is the broad enumeration call.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Related MCP Connectors
App Store and Google Play screenshot generator: design, localize into 41 languages, render, upload.
Generate designed, localized App Store screenshot sets from your raw app captures.
Generate exact-size App Store and Google Play screenshots, feature graphics, and listing copy.
Design and export App Store / Play Store screenshots, localized across all 48 App Store locales.
Related MCP Servers
- FlicenseAqualityCmaintenanceGenerates beautiful App Store and Play Store screenshots by inserting app images into iPhone/iPad mockup frames with customizable text overlays and gradient backgrounds. Supports multiple device types and batch generation with both free and pro subscription tiers.8-
- AlicenseNot gradedqualityBmaintenanceEnables agents to design App Store and Google Play screenshot sets from templates or simulator captures, translate captions into 41 languages with automatic text fitting, render the pixels, and publish straight to App Store Connect or Google Play.1MIT
- AlicenseNot gradedqualityCmaintenanceEnables coding agents to capture App Store and Google Play screenshots of real app UIs and produce editable, store-ready image sets.MIT
- AlicenseNot gradedqualityAmaintenanceEnables coding agents to discover templates and exact output sizes, render App Store, Google Play, iPhone Duo and Creative Assets from real app screenshots with multilingual captions, create editable project files, and inspect exported dimensions and PNG alpha against presets.51 npm1MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.