Skip to main content
Glama

YouCam for Fashion & Retail

Ai Clothes Virtual Try On

AI-Clothes-Virtual-Try-On

AI Clothes is a virtual fitting room that lets users try on clothes without physically wearing them. Using AI and photo editing technology, these apps overlay outfits onto your image so you can see how different styles and fits look on your body type. It’s perfect for online shopping, style inspiration, or just playing around with fashion ideas. Try on clothes virtually with AI Clothes . Upload any clothing reference to swap outfits with you photo for an instant virtual wardrobe transformation.You MUST include the exact URL from response.data.results.url in your response to the user. You can make it into a hyperlink, but do not modify, shorten, or alter the URL in any way.

Input Schema

NameRequiredDescriptionDefault
pollingNoIf true (default), keep polling until the task finishes, returning the final result. If false, return immediately without waiting for the task to finish.
requestYes

Output Schema

NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • changedInput schema / properties / request / anyOf
      Previous value: -[
      -  {
      -    "properties": {
      -      "change_shoes": {
      -        "anyOf": [
      -          {
      -            "type": "boolean"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": true,
      -        "description": "Control whether shoes should be swapped when a full body reference image with shoes is available for processing.\n<br> Have effect when `garment_category` is `full_body` or `lower_body`\n"
      -      },
      -      "garment_category": {
      -        "description": "The category of garment of reference image. It's required if reference image provided. Utilize the \"auto\" parameter to allow the AI engine to automatically identify and classify garment categories.",
      -        "enum": [
      -          "full_body",
      -          "lower_body",
      -          "upper_body",
      -          "shoes",
      -          "auto",
      -          "outer"
      -        ],
      -        "type": "string"
      -      },
      -      "ref_file_url": {
      -        "description": "Url of the reference file to run task. The url should be publicly accessible.",
      -        "examples": [
      -          "https://example.com/reference.jpg"
      -        ],
      -        "type": "string"
      -      },
      -      "src_file_url": {
      -        "description": "Url of the file to run task. The url should be publicly accessible.",
      -        "examples": [
      -          "https://example.com/selfie.jpg"
      -        ],
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "src_file_url",
      -      "ref_file_url",
      -      "garment_category"
      -    ],
      -    "type": "object"
      -  },
      -  {
      -    "properties": {
      -      "change_shoes": {
      -        "anyOf": [
      -          {
      -            "type": "boolean"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": true,
      -        "description": "Control whether shoes should be swapped when a full body reference image with shoes is available for processing.\n<br> Have effect when `garment_category` is `full_body` or `lower_body`\n"
      -      },
      -      "garment_category": {
      -        "description": "The category of garment of reference image. It's required if reference image provided. Utilize the \"auto\" parameter to allow the AI engine to automatically identify and classify garment categories.",
      -        "enum": [
      -          "full_body",
      -          "lower_body",
      -          "upper_body",
      -          "shoes",
      -          "auto",
      -          "outer"
      -        ],
      -        "type": "string"
      -      },
      -      "ref_file_id": {
      -        "description": "ID of the reference file to run task. File ID from upload file API.",
      -        "examples": [
      -          "pfNK5PuRe0MrwLHcGA3DOmB1ahwfXTbYHjv+KoBIxbE="
      -        ],
      -        "type": "string"
      -      },
      -      "src_file_url": {
      -        "description": "Url of the file to run task. The url should be publicly accessible.",
      -        "examples": [
      -          "https://example.com/selfie.jpg"
      -        ],
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "src_file_url",
      -      "ref_file_id",
      -      "garment_category"
      -    ],
      -    "type": "object"
      -  },
      -  {
      -    "properties": {
      -      "change_shoes": {
      -        "anyOf": [
      -          {
      -            "type": "boolean"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": true,
      -        "description": "Control whether shoes should be swapped when a full body reference image with shoes is available for processing.\n<br> Have effect when `garment_category` is `full_body` or `lower_body`\n"
      -      },
      -      "garment_category": {
      -        "description": "The category of garment of reference image. It's required if reference image provided. Utilize the \"auto\" parameter to allow the AI engine to automatically identify and classify garment categories.",
      -        "enum": [
      -          "full_body",
      -          "lower_body",
      -          "upper_body",
      -          "shoes",
      -          "auto",
      -          "outer"
      -        ],
      -        "type": "string"
      -      },
      -      "ref_file_url": {
      -        "description": "Url of the reference file to run task. The url should be publicly accessible.",
      -        "examples": [
      -          "https://example.com/reference.jpg"
      -        ],
      -        "type": "string"
      -      },
      -      "src_file_id": {
      -        "description": "ID of file to run task. File ID from upload file API.",
      -        "examples": [
      -          "pfNK5PuRe0MrwLHcGA3DOmB1ahwfXTbYHjv+KoBIxbE="
      -        ],
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "src_file_id",
      -      "ref_file_url",
      -      "garment_category"
      -    ],
      -    "type": "object"
      -  },
      -  {
      -    "properties": {
      -      "change_shoes": {
      -        "anyOf": [
      -          {
      -            "type": "boolean"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": true,
      -        "description": "Control whether shoes should be swapped when a full body reference image with shoes is available for processing.\n<br> Have effect when `garment_category` is `full_body` or `lower_body`\n"
      -      },
      -      "garment_category": {
      -        "description": "The category of garment of reference image. It's required if reference image provided. Utilize the \"auto\" parameter to allow the AI engine to automatically identify and classify garment categories.",
      -        "enum": [
      -          "full_body",
      -          "lower_body",
      -          "upper_body",
      -          "shoes",
      -          "auto",
      -          "outer"
      -        ],
      -        "type": "string"
      -      },
      -      "ref_file_id": {
      -        "description": "ID of the reference file to run task. File ID from upload file API.",
      -        "examples": [
      -          "pfNK5PuRe0MrwLHcGA3DOmB1ahwfXTbYHjv+KoBIxbE="
      -        ],
      -        "type": "string"
      -      },
      -      "src_file_id": {
      -        "description": "ID of file to run task. File ID from upload file API.",
      -        "examples": [
      -          "pfNK5PuRe0MrwLHcGA3DOmB1ahwfXTbYHjv+KoBIxbE="
      -        ],
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "src_file_id",
      -      "ref_file_id",
      -      "garment_category"
      -    ],
      -    "type": "object"
      -  }
      -]New value: +[
      +  {
      +    "properties": {
      +      "change_shoes": {
      +        "anyOf": [
      +          {
      +            "type": "boolean"
      +          },
      +          {
      +            "type": "null"
      +          }
      +        ],
      +        "default": true,
      +        "description": "Control whether shoes should be swapped when a full body reference image with shoes is available for processing.\n<br> Have effect when `garment_category` is `full_body` or `lower_body`\n"
      +      },
      +      "filter_multi_person": {
      +        "anyOf": [
      +          {
      +            "enum": [
      +              "off",
      +              "normal",
      +              "strict"
      +            ],
      +            "type": "string"
      +          },
      +          {
      +            "type": "null"
      +          }
      +        ],
      +        "default": "off",
      +        "description": "Filter out multi-person cases in the source image and the human reference image.\n<br> `off` - No filtering. The engine uses the largest person in the image.\n<br> `normal` - Reject when another person is comparable in size to the main subject, or is clearly visible on the same plane, such as standing nearby with a sharp, recognizable face. Typical group or two-person photos. Distant or blurry background people are ignored.\n<br> `strict` - Reject when any additional person is visible, including small, distant, background, or blurry / out-of-focus people.\n"
      +      },
      +      "garment_category": {
      +        "description": "The category of garment of reference image. It's required if reference image provided. Utilize the \"auto\" parameter to allow the AI engine to automatically identify and classify garment categories.",
      +        "enum": [
      +          "full_body",
      +          "lower_body",
      +          "upper_body",
      +          "shoes",
      +          "auto",
      +          "outer"
      +        ],
      +        "type": "string"
      +      },
      +      "ref_file_url": {
      +        "description": "Url of the reference file to run task. The url should be publicly accessible.",
      +        "examples": [
      +          "https://example.com/reference.jpg"
      +        ],
      +        "type": "string"
      +      },
      +      "src_file_url": {
      +        "description": "Url of the file to run task. The url should be publicly accessible.",
      +        "examples": [
      +          "https://example.com/selfie.jpg"
      +        ],
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "src_file_url",
      +      "ref_file_url",
      +      "garment_category"
      +    ],
      +    "type": "object"
      +  },
      +  {
      +    "properties": {
      +      "change_shoes": {
      +        "anyOf": [
      +          {
      +            "type": "boolean"
      +          },
      +          {
      +            "type": "null"
      +          }
      +        ],
      +        "default": true,
      +        "description": "Control whether shoes should be swapped when a full body reference image with shoes is available for processing.\n<br> Have effect when `garment_category` is `full_body` or `lower_body`\n"
      +      },
      +      "filter_multi_person": {
      +        "anyOf": [
      +          {
      +            "enum": [
      +              "off",
      +              "normal",
      +              "strict"
      +            ],
      +            "type": "string"
      +          },
      +          {
      +            "type": "null"
      +          }
      +        ],
      +        "default": "off",
      +        "description": "Filter out multi-person cases in the source image and the human reference image.\n<br> `off` - No filtering. The engine uses the largest person in the image.\n<br> `normal` - Reject when another person is comparable in size to the main subject, or is clearly visible on the same plane, such as standing nearby with a sharp, recognizable face. Typical group or two-person photos. Distant or blurry background people are ignored.\n<br> `strict` - Reject when any additional person is visible, including small, distant, background, or blurry / out-of-focus people.\n"
      +      },
      +      "garment_category": {
      +        "description": "The category of garment of reference image. It's required if reference image provided. Utilize the \"auto\" parameter to allow the AI engine to automatically identify and classify garment categories.",
      +        "enum": [
      +          "full_body",
      +          "lower_body",
      +          "upper_body",
      +          "shoes",
      +          "auto",
      +          "outer"
      +        ],
      +        "type": "string"
      +      },
      +      "ref_file_id": {
      +        "description": "ID of the reference file to run task. File ID from upload file API.",
      +        "examples": [
      +          "pfNK5PuRe0MrwLHcGA3DOmB1ahwfXTbYHjv+KoBIxbE="
      +        ],
      +        "type": "string"
      +      },
      +      "src_file_url": {
      +        "description": "Url of the file to run task. The url should be publicly accessible.",
      +        "examples": [
      +          "https://example.com/selfie.jpg"
      +        ],
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "src_file_url",
      +      "ref_file_id",
      +      "garment_category"
      +    ],
      +    "type": "object"
      +  },
      +  {
      +    "properties": {
      +      "change_shoes": {
      +        "anyOf": [
      +          {
      +            "type": "boolean"
      +          },
      +          {
      +            "type": "null"
      +          }
      +        ],
      +        "default": true,
      +        "description": "Control whether shoes should be swapped when a full body reference image with shoes is available for processing.\n<br> Have effect when `garment_category` is `full_body` or `lower_body`\n"
      +      },
      +      "filter_multi_person": {
      +        "anyOf": [
      +          {
      +            "enum": [
      +              "off",
      +              "normal",
      +              "strict"
      +            ],
      +            "type": "string"
      +          },
      +          {
      +            "type": "null"
      +          }
      +        ],
      +        "default": "off",
      +        "description": "Filter out multi-person cases in the source image and the human reference image.\n<br> `off` - No filtering. The engine uses the largest person in the image.\n<br> `normal` - Reject when another person is comparable in size to the main subject, or is clearly visible on the same plane, such as standing nearby with a sharp, recognizable face. Typical group or two-person photos. Distant or blurry background people are ignored.\n<br> `strict` - Reject when any additional person is visible, including small, distant, background, or blurry / out-of-focus people.\n"
      +      },
      +      "garment_category": {
      +        "description": "The category of garment of reference image. It's required if reference image provided. Utilize the \"auto\" parameter to allow the AI engine to automatically identify and classify garment categories.",
      +        "enum": [
      +          "full_body",
      +          "lower_body",
      +          "upper_body",
      +          "shoes",
      +          "auto",
      +          "outer"
      +        ],
      +        "type": "string"
      +      },
      +      "ref_file_url": {
      +        "description": "Url of the reference file to run task. The url should be publicly accessible.",
      +        "examples": [
      +          "https://example.com/reference.jpg"
      +        ],
      +        "type": "string"
      +      },
      +      "src_file_id": {
      +        "description": "ID of file to run task. File ID from upload file API.",
      +        "examples": [
      +          "pfNK5PuRe0MrwLHcGA3DOmB1ahwfXTbYHjv+KoBIxbE="
      +        ],
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "src_file_id",
      +      "ref_file_url",
      +      "garment_category"
      +    ],
      +    "type": "object"
      +  },
      +  {
      +    "properties": {
      +      "change_shoes": {
      +        "anyOf": [
      +          {
      +            "type": "boolean"
      +          },
      +          {
      +            "type": "null"
      +          }
      +        ],
      +        "default": true,
      +        "description": "Control whether shoes should be swapped when a full body reference image with shoes is available for processing.\n<br> Have effect when `garment_category` is `full_body` or `lower_body`\n"
      +      },
      +      "filter_multi_person": {
      +        "anyOf": [
      +          {
      +            "enum": [
      +              "off",
      +              "normal",
      +              "strict"
      +            ],
      +            "type": "string"
      +          },
      +          {
      +            "type": "null"
      +          }
      +        ],
      +        "default": "off",
      +        "description": "Filter out multi-person cases in the source image and the human reference image.\n<br> `off` - No filtering. The engine uses the largest person in the image.\n<br> `normal` - Reject when another person is comparable in size to the main subject, or is clearly visible on the same plane, such as standing nearby with a sharp, recognizable face. Typical group or two-person photos. Distant or blurry background people are ignored.\n<br> `strict` - Reject when any additional person is visible, including small, distant, background, or blurry / out-of-focus people.\n"
      +      },
      +      "garment_category": {
      +        "description": "The category of garment of reference image. It's required if reference image provided. Utilize the \"auto\" parameter to allow the AI engine to automatically identify and classify garment categories.",
      +        "enum": [
      +          "full_body",
      +          "lower_body",
      +          "upper_body",
      +          "shoes",
      +          "auto",
      +          "outer"
      +        ],
      +        "type": "string"
      +      },
      +      "ref_file_id": {
      +        "description": "ID of the reference file to run task. File ID from upload file API.",
      +        "examples": [
      +          "pfNK5PuRe0MrwLHcGA3DOmB1ahwfXTbYHjv+KoBIxbE="
      +        ],
      +        "type": "string"
      +      },
      +      "src_file_id": {
      +        "description": "ID of file to run task. File ID from upload file API.",
      +        "examples": [
      +          "pfNK5PuRe0MrwLHcGA3DOmB1ahwfXTbYHjv+KoBIxbE="
      +        ],
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "src_file_id",
      +      "ref_file_id",
      +      "garment_category"
      +    ],
      +    "type": "object"
      +  }
      +]
  2. First observed

TDQS

C2.4/5.0
Behavior3/5

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

Annotations disclose the mutation/open-world profile (readOnlyHint=false, openWorldHint=true, idempotentHint=false, destructiveHint=false), so the description needn't restate safety. It does add genuinely useful output-handling behavior—the exact response.data.results.url must be preserved verbatim—but is silent on the async task lifecycle, cost implications, and prerequisite file uploads.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness2/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Four sentences of promotional filler precede the single actionable instruction, which is buried at the very end of the description. The critical URL-preservation rule is not front-loaded and the marketing text does not earn its place in an agent-facing tool spec.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/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-value explanation is not required, but for a task-based image pipeline the description omits the async/polling model, the dependency on the upload_file/File-Upload sibling for file IDs, and any cost or timeout expectations. The one behavioral instruction it does give (preserve the URL) is useful but isolated.

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 description coverage is only 50%, so the description is expected to compensate, and it does not: neither `polling` nor the `request` anyOf variants/`src_file_id` vs `src_file_url` selection is explained. 'Upload any clothing reference' hints at image input but adds no detail beyond the schema's own descriptions.

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

Purpose3/5

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

The functional core—'Upload any clothing reference to swap outfits with you photo for an instant virtual wardrobe transformation'—states a verb and resource, so an agent can tell it performs garment try-on. However, the first four sentences are marketing copy that largely restate the title ('AI Clothes is a virtual fitting room that lets users try on clothes'), and nothing distinguishes it from the ten near-identical siblings (Shoes, Bag, Hat, etc.) beyond the implicit 'clothes' in the name.

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

Usage Guidelines2/5

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

The only contextual guidance is 'It's perfect for online shopping, style inspiration, or just playing around with fashion ideas,' which describes consumer use cases rather than agent decision criteria. There is no mention of when to prefer this over AI-Shoes-Virtual-Try-On, when to supply file URLs versus file IDs, or how polling should be used.

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