Skip to main content
Glama

apple_upload_screenshots

Upload App Store screenshots in a fixed order to avoid unpredictable creation order. Specify the version and folder to pin the display sequence.

Instructions

Upload the App Store listing screenshots, in order. External action.

Uploads every image in the folder, in alphabetical order of file name, and pins that order in the store — without this the order falls back to creation order, which Apple does not guarantee. Name the files with a numeric prefix (01-, 02-).

A screenshot belongs to a VERSION: a READY_FOR_SALE version cannot be changed. Create the next one with apple_create_version and point to it — the new version inherits the previous one's screenshots, and replace swaps them for these.

display_type: APP_IPHONE_67, APP_IPHONE_65, APP_IPHONE_61, APP_IPAD_PRO_3GEN_129, among others.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
folderYes
localeNopt-BR
replaceNo
version_idYes
display_typeNoAPP_IPHONE_67

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4.5/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 it delivers the non-obvious traits: it uploads every image in the folder in alphabetical order, pins that order in the store, and that order otherwise falls back to unguaranteed creation order. It omits permissions/auth requirements and partial-failure behavior, which keeps it from a 5.

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?

Four short paragraphs, each earning its place (ordering rule, naming convention, version lifecycle, display_type values), and the core action is front-loaded. The standalone 'External action.' line is the only slightly wasteful element.

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?

An output schema exists so return values need not be described. For a mutating external tool with 5 params and no annotations, the description covers ordering, naming, version state, and replace behavior; missing auth/error context 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?

Schema coverage is 0%, so the description must compensate. It explains folder (all images inside), replace ('swaps them for these'), and display_type (listing valid values despite no enum in the schema), plus version_id implicitly via the VERSION paragraph. Only locale is left undocumented.

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

Purpose5/5

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

States a specific verb and resource ('Upload the App Store listing screenshots, in order') and flags that it is an external action. This clearly separates it from the sibling play_upload_screenshots (different store) and from apple_create_version / apple_attach_build.

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

Usage Guidelines5/5

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

Gives explicit conditions and exclusions: a READY_FOR_SALE version cannot be changed, so create the next one with apple_create_version (named sibling). It also explains the replace semantics and the file-naming requirement, covering when and how to use the tool.

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