Skip to main content
Glama

appdesigns App Store screenshots

Create a screenshot project

create_project

Starts a screenshot set: 1 to 6 screenshots in store order, each with a screen name and a headline. Returns a project_handle and one upload command (bash and PowerShell forms) that sends every screenshot straight to storage; run it once, then call finish_project with the handle. Upload and call finish_project within 3 hours (an unfinished project lapses then); a finished one waits 72 hours to be opened. Nothing is public and no account is needed; the user saves the set to their account when they open the link finish_project returns.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
storeNoWhich store the set is for.app_store
deviceNoA device id from list_devices. Defaults to iphone-17-pro-max for the App Store and pixel-11-pro for Google Play.
screensYesOne entry per screenshot, in the order the store should show them. The first sells the app.
canvas_sizeNoA canvas size from list_devices, as WIDTHxHEIGHT. Leave it out for the store default (1320x2868 for iPhone, 2048x2732 for iPad, 1080x1920 for Play).
frame_colorNoA colour id of that device from list_devices. Leave it out to pick one that stands out from the background.
project_nameYesThe app's name. It becomes the project name in the user's appdesigns library.
background_colorNo#RRGGBB. Use the app's brand or accent colour if you can find it in the code. Leave it out for a neutral light background.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.3/5.0
Behavior4/5

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

Annotations already indicate this is not a read-only or destructive operation. The description adds valuable context: it returns a handle and upload command, explains time limits (3-hour lapse, 72-hour wait for finished projects), privacy ('Nothing is public'), and that no account is needed. It doesn't discuss idempotency (calling twice) or failure outcomes, but given the annotation coverage, the description provides solid behavioral depth.

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?

The description is a single paragraph but dense and well-structured: purpose first, then steps, then time limits, then privacy. Every sentence adds necessary information without redundancy. It could benefit from bullet points for readability, but it's appropriately sized for the complexity and doesn't waste words.

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?

Given 7 parameters (all documented), no output schema, and a multi-step workflow, the description covers the essential flow: returns a handle, provides upload commands, instructs to call finish_project, and explains timeouts. It doesn't detail the upload command's format or potential errors, but the agent has enough to proceed correctly. It also references list_devices indirectly via schema defaults, which is adequate.

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 100% and each parameter is well-documented (e.g., headline length, file_path expansion rules). The description adds extra meaning by explaining that screens are in store order and that the first screenshot 'sells the app', which is not in the schema. It also clarifies that the upload command sends screenshots to storage, linking to the file_path parameter. This goes beyond schema descriptions.

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?

The description clearly states the tool's function: it starts a screenshot set with 1-6 screenshots and returns a handle plus upload command. This distinguishes it from siblings like finish_project (which completes the process) and list_devices (which provides device IDs). The verb 'starts' and resource 'screenshot set' are specific and unambiguous.

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?

The description explicitly tells the agent to run the tool once, then call finish_project with the returned handle, and warns about the 3-hour upload window. It doesn't explicitly state when not to use this tool (e.g., if a project already exists), but the workflow is clear and alternates are implied by naming finish_project for the next step. There is no mention of alternatives like get_workflow, but the active creation role is evident.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.