Skip to main content
Glama

SI Stores

Photo try-on (AI preview)

photo_tryon

Preview a described clothing or accessory style on a photo of a consenting adult, or edit the garment already in the photo (e.g. 'make the skirt mini', 'navy instead of red'). Returns an AI-generated preview image labeled 'AI preview, not a real photo', plus a link to shop similar items. Requires consent=true: the photo is of the user or an adult who agreed. No minors, nudity, lingerie/swimwear, or photos of celebrities/real people without consent (content policy: https://shopfashion.si/content-policy). Limited to 3 per IP per day and a site-wide daily budget; photos are not stored.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
whoNoone
modeNoauto
siteNoshopfashion
styleYese.g. 'emerald satin midi dress' or 'shorten the skirt to mini'
consentYesMust be true: the user confirms the photo is of themselves or an adult who agreed.
image_urlNoPublic https URL of the image (alternative to base64).
image_base64NoJPEG/PNG, ≤1.5MB, ≤1024px long side recommended. data: URL prefix allowed.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A3.9/5.0
Behavior5/5

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

Adds substantial information beyond the minimal annotations (readOnlyHint=false, openWorldHint=true): rate limits (3 per IP per day plus a site-wide budget), retention ('photos are not stored'), the AI-generated output labeling, and content-policy restrictions with a link. This is exactly the behavioral context an agent needs before invoking a mutation tool.

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?

Front-loads the purpose, then layers requirements and limits in a compact paragraph with no filler sentences. It is dense but each clause (consent, policies, limits, retention) 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 7-parameter tool with no output schema, the description covers return values (labeled preview image plus shop-similar link), consent, and operational limits. The remaining gap is the unexplained who/mode/site enums, which the schema also leaves bare.

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 only 57%, and the description does little to compensate. The 'edit vs generate' phrasing loosely implies mode=edit, but the opaque enums who (one/left/middle/right/all), mode (auto/edit/generate), and site (shopfashion/scarves) are never explained, leaving nearly half the parameters ambiguous.

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 and resource ('Preview a described clothing or accessory style on a photo'), and clarifies it can also edit an existing garment, which distinguishes it from a pure generation tool. It does not explicitly differentiate itself from the sibling outfit_tryon, which an agent would need to reason about.

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?

Gives clear usage context with concrete examples ('make the skirt mini', 'navy instead of red') and states the consent precondition. It does not name the sibling outfit_tryon or explain when to prefer this tool over it, so routing still requires inference.

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.

Resources