YouCam for Fashion & Retail
Ce que fait ce MCP
Provides image-based virtual try-on experiences for clothing, accessories, jewelry, watches, makeup, fabric, hats, scarves, and shoes.
Outils
Schéma d’entrée
{'type': 'object', 'required': ['request'], 'properties': {'polling': {'type': 'boolean', 'default': True, 'description': 'If true (default), keep polling until the task finishes, returning the final result. If false, return immediately without waiting for the task to finish.'}, 'request': {'anyOf': [{'type': 'object', 'required': ['gender', 'src_file_url', 'ref_file_url'], 'properties': {'style': {'anyOf': [{'enum': ['random', 'style_parisian_chic', 'style_urban_chic', 'style_mediterranean_chic', 'style_art_deco_style'], 'type': 'string'}, {'type': 'null'}], 'default': 'random', 'examples': ['random'], 'description': 'To control outfit and background style.'}, 'gender': {'enum': ['female', 'male'], 'type': 'string', 'examples': ['female'], 'description': 'Gender of the person in the image.'}, 'ref_file_url': {'type': 'string', 'examples': ['https://example.com/reference.jpg'], 'description': 'Url of the reference file to run task. The url should be publicly accessible.'}, 'src_file_url': {'type': 'string', 'examples': ['https://example.com/selfie.jpg'], 'description': 'Url of the file to run task. The url should be publicly accessible.'}}}, {'type': 'object', 'required': ['gender', 'src_file_url', 'ref_file_id'], 'properties': {'style': {'anyOf': [{'enum': ['random', 'style_parisian_chic', 'style_urban_chic', 'style_mediterranean_chic', 'style_art_deco_style'], 'type': 'string'}, {'type': 'null'}], 'default': 'random', 'examples': ['random'], 'description': 'To control outfit and background style.'}, 'gender': {'enum': ['female', 'male'], 'type': 'string', 'examples': ['female'], 'description': 'Gender of the person in the image.'}, 'ref_file_id': {'type': 'string', 'examples': ['pfNK5PuRe0MrwLHcGA3DOmB1ahwfXTbYHjv+KoBIxbE='], 'description': 'ID of the reference file to run task. File ID from upload file API.'}, 'src_file_url': {'type': 'string', 'examples': ['https://example.com/selfie.jpg'], 'description': 'Url of the file to run task. The url should be publicly accessible.'}}}, {'type': 'object', 'required': ['gender', 'src_file_id', 'ref_file_url'], 'properties': {'style': {'anyOf': [{'enum': ['random', 'style_parisian_chic', 'style_urban_chic', 'style_mediterranean_chic', 'style_art_deco_style'], 'type': 'string'}, {'type': 'null'}], 'default': 'random', 'examples': ['random'], 'description': 'To control outfit and background style.'}, 'gender': {'enum': ['female', 'male'], 'type': 'string', 'examples': ['female'], 'description': 'Gender of the person in the image.'}, 'src_file_id': {'type': 'string', 'examples': ['pfNK5PuRe0MrwLHcGA3DOmB1ahwfXTbYHjv+KoBIxbE='], 'description': 'ID of file to run task. File ID from upload file API.'}, 'ref_file_url': {'type': 'string', 'examples': ['https://example.com/reference.jpg'], 'description': 'Url of the reference file to run task. The url should be publicly accessible.'}}}, {'type': 'object', 'required': ['gender', 'src_file_id', 'ref_file_id'], 'properties': {'style': {'anyOf': [{'enum': ['random', 'style_parisian_chic', 'style_urban_chic', 'style_mediterranean_chic', 'style_art_deco_style'], 'type': 'string'}, {'type': 'null'}], 'default': 'random', 'examples': ['random'], 'description': 'To control outfit and background style.'}, 'gender': {'enum': ['female', 'male'], 'type': 'string', 'examples': ['female'], 'description': 'Gender of the person in the image.'}, 'ref_file_id': {'type': 'string', 'examples': ['pfNK5PuRe0MrwLHcGA3DOmB1ahwfXTbYHjv+KoBIxbE='], 'description': 'ID of the reference file to run task. File ID from upload file API.'}, 'src_file_id': {'type': 'string', 'examples': ['pfNK5PuRe0MrwLHcGA3DOmB1ahwfXTbYHjv+KoBIxbE='], 'description': 'ID of file to run task. File ID from upload file API.'}}}]}}, 'additionalProperties': False}
Schéma de sortie
{'type': 'object', 'required': ['result'], 'properties': {'result': {'anyOf': [{'type': 'object', 'additionalProperties': True}, {'type': 'object', 'required': ['error_message'], 'properties': {'request_id': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'error_message': {'type': 'string', 'description': 'Detailed description of error'}}}]}}, 'x-fastmcp-wrap-result': True}
Schéma d’entrée
{'type': 'object', 'required': ['request'], 'properties': {'polling': {'type': 'boolean', 'default': True, 'description': 'If true (default), keep polling until the task finishes, returning the final result. If false, return immediately without waiting for the task to finish.'}, 'request': {'anyOf': [{'type': 'object', 'required': ['source_info', 'object_infos', 'src_file_url', 'ref_file_urls'], 'properties': {'source_info': {'type': 'object', 'required': ['name'], 'properties': {'name': {'type': 'string', 'examples': ['https://example.com/selfie.jpg'], 'description': 'The source url or File ID.'}, 'mask_name': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'examples': ['https://example.com/src_mask.jpg'], 'description': 'The source mask url or File ID.'}}, 'description': 'Contain source photo informations.'}, 'object_infos': {'type': 'array', 'items': {'type': 'object', 'required': ['name'], 'properties': {'name': {'type': 'string', 'examples': ['https://example.com/vto_sku.jpg'], 'description': 'The reference url or File ID. Indicate which reference product image should be matched.'}, 'mask_name': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'examples': ['https://example.com/vto_sku_mask.jpg'], 'description': 'The reference mask url or File ID. Indicate which reference product image should be matched.'}, 'parameter': {'anyOf': [{'type': 'object', 'properties': {'bracelet_anchor_point': {'anyOf': [{'type': 'array', 'items': {'type': 'array', 'items': {'type': 'integer'}, 'maxItems': 2, 'minItems': 2}, 'maxItems': 2, 'minItems': 2}, {'type': 'null'}], 'default': None, 'examples': [None], 'description': 'The anchor point of the bracelet image, marking the 2 farthest points along the inner edge of the bracelet <br>Type: 2x2 list of integers <br>Range: 2 (x, y) pixel coordinates <br>Default: null (use engine default)'}, 'bracelet_shadow_intensity': {'anyOf': [{'type': 'number', 'maximum': 1.0, 'minimum': 0.0}, {'type': 'null'}], 'default': 0.3, 'examples': [0.3], 'description': 'Shadow intensity applied to the bracelet (higher = darker shadow).'}, 'bracelet_wearing_location': {'anyOf': [{'type': 'number', 'maximum': 1.0, 'minimum': -0.3}, {'type': 'null'}], 'default': None, 'examples': [None], 'description': 'Defines the placement of the bracelet on the wrist in the user photo. <br>Range: -0.3 ~ 1.0 (0 = closest to the wrist joint) <br> (smaller number = placed close to the palm <br> larger number = placed further away from the wrist) <br>Default: null (use engine default)'}, 'bracelet_need_remove_background': {'anyOf': [{'type': 'boolean'}, {'type': 'null'}], 'default': True, 'examples': [True], 'description': 'Whether the bracelet image needs background removal.'}, 'bracelet_ambient_light_intensity': {'anyOf': [{'type': 'number', 'maximum': 1.0, 'minimum': 0.0}, {'type': 'null'}], 'default': 1, 'examples': [1], 'description': 'Ambient light adjustment intensity for the bracelet.'}}}, {'type': 'null'}], 'default': None}}}}, 'src_file_url': {'type': 'string', 'examples': ['https://example.com/selfie.jpg'], 'description': 'Url of the file to run task. The url should be publicly accessible.'}, 'ref_file_urls': {'type': 'array', 'items': {'type': 'string'}, 'examples': [['https://example.com/vto_sku.jpg']], 'description': 'Url of the reference file to run task. The url should be publicly accessible.'}, 'srcmsk_file_url': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'examples': ['https://example.com/src_mask.jpg'], 'description': 'Url of the source mask file to run task. The url should be publicly accessible.'}, 'refmsk_file_urls': {'anyOf': [{'type': 'array', 'items': {'type': 'string'}}, {'type': 'null'}], 'default': None, 'examples': [['https://example.com/vto_sku_mask.jpg']], 'description': 'Url of the reference mask file to run task. The url should be publicly accessible.'}}}, {'type': 'object', 'required': ['source_info', 'object_infos', 'src_file_url', 'ref_file_ids'], 'properties': {'source_info': {'type': 'object', 'required': ['name'], 'properties': {'name': {'type': 'string', 'examples': ['https://example.com/selfie.jpg'], 'description': 'The source url or File ID.'}, 'mask_name': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'examples': ['https://example.com/src_mask.jpg'], 'description': 'The source mask url or File ID.'}}, 'description': 'Contain source photo informations.'}, 'object_infos': {'type': 'array', 'items': {'type': 'object', 'required': ['name'], 'properties': {'name': {'type': 'string', 'examples': ['https://example.com/vto_sku.jpg'], 'description': 'The reference url or File ID. Indicate which reference product image should be matched.'}, 'mask_name': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'examples': ['https://example.com/vto_sku_mask.jpg'], 'description': 'The reference mask url or File ID. Indicate which reference product image should be matched.'}, 'parameter': {'anyOf': [{'type': 'object', 'properties': {'bracelet_anchor_point': {'anyOf': [{'type': 'array', 'items': {'type': 'array', 'items': {'type': 'integer'}, 'maxItems': 2, 'minItems': 2}, 'maxItems': 2, 'minItems': 2}, {'type': 'null'}], 'default': None, 'examples': [None], 'description': 'The anchor point of the bracelet image, marking the 2 farthest points along the inner edge of the bracelet <br>Type: 2x2 list of integers <br>Range: 2 (x, y) pixel coordinates <br>Default: null (use engine default)'}, 'bracelet_shadow_intensity': {'anyOf': [{'type': 'number', 'maximum': 1.0, 'minimum': 0.0}, {'type': 'null'}], 'default': 0.3, 'examples': [0.3], 'description': 'Shadow intensity applied to the bracelet (higher = darker shadow).'}, 'bracelet_wearing_location': {'anyOf': [{'type': 'number', 'maximum': 1.0, 'minimum': -0.3}, {'type': 'null'}], 'default': None, 'examples': [None], 'description': 'Defines the placement of the bracelet on the wrist in the user photo. <br>Range: -0.3 ~ 1.0 (0 = closest to the wrist joint) <br> (smaller number = placed close to the palm <br> larger number = placed further away from the wrist) <br>Default: null (use engine default)'}, 'bracelet_need_remove_background': {'anyOf': [{'type': 'boolean'}, {'type': 'null'}], 'default': True, 'examples': [True], 'description': 'Whether the bracelet image needs background removal.'}, 'bracelet_ambient_light_intensity': {'anyOf': [{'type': 'number', 'maximum': 1.0, 'minimum': 0.0}, {'type': 'null'}], 'default': 1, 'examples': [1], 'description': 'Ambient light adjustment intensity for the bracelet.'}}}, {'type': 'null'}], 'default': None}}}}, 'ref_file_ids': {'type': 'array', 'items': {'type': 'string'}, 'examples': [['pfNK5PuRe0MrwLHcGA3DOmB1ahwfXTbYHjv+KoBIxbE=']], 'description': 'ID of the reference file file to run task. File ID from upload file API.'}, 'src_file_url': {'type': 'string', 'examples': ['https://example.com/selfie.jpg'], 'description': 'Url of the file to run task. The url should be publicly accessible.'}, 'refmsk_file_ids': {'anyOf': [{'type': 'array', 'items': {'type': 'string'}}, {'type': 'null'}], 'default': None, 'examples': [['pfNK5PuRe0MrwLHcGA3DOmB1ahwfXTbYHjv+KoBIxbE=']], 'description': 'ID of the reference mask file file to run task. File ID from upload file API.'}, 'srcmsk_file_url': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'examples': ['https://example.com/src_mask.jpg'], 'description': 'Url of the source mask file to run task. The url should be publicly accessible.'}}}, {'type': 'object', 'required': ['source_info', 'object_infos', 'src_file_id', 'ref_file_urls'], 'properties': {'source_info': {'type': 'object', 'required': ['name'], 'properties': {'name': {'type': 'string', 'examples': ['https://example.com/selfie.jpg'], 'description': 'The source url or File ID.'}, 'mask_name': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'examples': ['https://example.com/src_mask.jpg'], 'description': 'The source mask url or File ID.'}}, 'description': 'Contain source photo informations.'}, 'src_file_id': {'type': 'string', 'examples': ['pfNK5PuRe0MrwLHcGA3DOmB1ahwfXTbYHjv+KoBIxbE='], 'description': 'ID of file to run task. File ID from upload file API.'}, 'object_infos': {'type': 'array', 'items': {'type': 'object', 'required': ['name'], 'properties': {'name': {'type': 'string', 'examples': ['https://example.com/vto_sku.jpg'], 'description': 'The reference url or File ID. Indicate which reference product image should be matched.'}, 'mask_name': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'examples': ['https://example.com/vto_sku_mask.jpg'], 'description': 'The reference mask url or File ID. Indicate which reference product image should be matched.'}, 'parameter': {'anyOf': [{'type': 'object', 'properties': {'bracelet_anchor_point': {'anyOf': [{'type': 'array', 'items': {'type': 'array', 'items': {'type': 'integer'}, 'maxItems': 2, 'minItems': 2}, 'maxItems': 2, 'minItems': 2}, {'type': 'null'}], 'default': None, 'examples': [None], 'description': 'The anchor point of the bracelet image, marking the 2 farthest points along the inner edge of the bracelet <br>Type: 2x2 list of integers <br>Range: 2 (x, y) pixel coordinates <br>Default: null (use engine default)'}, 'bracelet_shadow_intensity': {'anyOf': [{'type': 'number', 'maximum': 1.0, 'minimum': 0.0}, {'type': 'null'}], 'default': 0.3, 'examples': [0.3], 'description': 'Shadow intensity applied to the bracelet (higher = darker shadow).'}, 'bracelet_wearing_location': {'anyOf': [{'type': 'number', 'maximum': 1.0, 'minimum': -0.3}, {'type': 'null'}], 'default': None, 'examples': [None], 'description': 'Defines the placement of the bracelet on the wrist in the user photo. <br>Range: -0.3 ~ 1.0 (0 = closest to the wrist joint) <br> (smaller number = placed close to the palm <br> larger number = placed further away from the wrist) <br>Default: null (use engine default)'}, 'bracelet_need_remove_background': {'anyOf': [{'type': 'boolean'}, {'type': 'null'}], 'default': True, 'examples': [True], 'description': 'Whether the bracelet image needs background removal.'}, 'bracelet_ambient_light_intensity': {'anyOf': [{'type': 'number', 'maximum': 1.0, 'minimum': 0.0}, {'type': 'null'}], 'default': 1, 'examples': [1], 'description': 'Ambient light adjustment intensity for the bracelet.'}}}, {'type': 'null'}], 'default': None}}}}, 'ref_file_urls': {'type': 'array', 'items': {'type': 'string'}, 'examples': [['https://example.com/vto_sku.jpg']], 'description': 'Url of the reference file to run task. The url should be publicly accessible.'}, 'srcmsk_file_id': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'examples': ['pfNK5PuRe0MrwLHcGA3DOmB1ahwfXTbYHjv+KoBIxbE='], 'description': 'ID of the source mask file to run task. File ID from upload file API.'}, 'refmsk_file_urls': {'anyOf': [{'type': 'array', 'items': {'type': 'string'}}, {'type': 'null'}], 'default': None, 'examples': [['https://example.com/vto_sku_mask.jpg']], 'description': 'Url of the reference mask file to run task. The url should be publicly accessible.'}}}, {'type': 'object', 'required': ['source_info', 'object_infos', 'src_file_id', 'ref_file_ids'], 'properties': {'source_info': {'type': 'object', 'required': ['name'], 'properties': {'name': {'type': 'string', 'examples': ['https://example.com/selfie.jpg'], 'description': 'The source url or File ID.'}, 'mask_name': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'examples': ['https://example.com/src_mask.jpg'], 'description': 'The source mask url or File ID.'}}, 'description': 'Contain source photo informations.'}, 'src_file_id': {'type': 'string', 'examples': ['pfNK5PuRe0MrwLHcGA3DOmB1ahwfXTbYHjv+KoBIxbE='], 'description': 'ID of file to run task. File ID from upload file API.'}, 'object_infos': {'type': 'array', 'items': {'type': 'object', 'required': ['name'], 'properties': {'name': {'type': 'string', 'examples': ['https://example.com/vto_sku.jpg'], 'description': 'The reference url or File ID. Indicate which reference product image should be matched.'}, 'mask_name': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'examples': ['https://example.com/vto_sku_mask.jpg'], 'description': 'The reference mask url or File ID. Indicate which reference product image should be matched.'}, 'parameter': {'anyOf': [{'type': 'object', 'properties': {'bracelet_anchor_point': {'anyOf': [{'type': 'array', 'items': {'type': 'array', 'items': {'type': 'integer'}, 'maxItems': 2, 'minItems': 2}, 'maxItems': 2, 'minItems': 2}, {'type': 'null'}], 'default': None, 'examples': [None], 'description': 'The anchor point of the bracelet image, marking the 2 farthest points along the inner edge of the bracelet <br>Type: 2x2 list of integers <br>Range: 2 (x, y) pixel coordinates <br>Default: null (use engine default)'}, 'bracelet_shadow_intensity': {'anyOf': [{'type': 'number', 'maximum': 1.0, 'minimum': 0.0}, {'type': 'null'}], 'default': 0.3, 'examples': [0.3], 'description': 'Shadow intensity applied to the bracelet (higher = darker shadow).'}, 'bracelet_wearing_location': {'anyOf': [{'type': 'number', 'maximum': 1.0, 'minimum': -0.3}, {'type': 'null'}], 'default': None, 'examples': [None], 'description': 'Defines the placement of the bracelet on the wrist in the user photo. <br>Range: -0.3 ~ 1.0 (0 = closest to the wrist joint) <br> (smaller number = placed close to the palm <br> larger number = placed further away from the wrist) <br>Default: null (use engine default)'}, 'bracelet_need_remove_background': {'anyOf': [{'type': 'boolean'}, {'type': 'null'}], 'default': True, 'examples': [True], 'description': 'Whether the bracelet image needs background removal.'}, 'bracelet_ambient_light_intensity': {'anyOf': [{'type': 'number', 'maximum': 1.0, 'minimum': 0.0}, {'type': 'null'}], 'default': 1, 'examples': [1], 'description': 'Ambient light adjustment intensity for the bracelet.'}}}, {'type': 'null'}], 'default': None}}}}, 'ref_file_ids': {'type': 'array', 'items': {'type': 'string'}, 'examples': [['pfNK5PuRe0MrwLHcGA3DOmB1ahwfXTbYHjv+KoBIxbE=']], 'description': 'ID of the reference file file to run task. File ID from upload file API.'}, 'srcmsk_file_id': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'examples': ['pfNK5PuRe0MrwLHcGA3DOmB1ahwfXTbYHjv+KoBIxbE='], 'description': 'ID of the source mask file to run task. File ID from upload file API.'}, 'refmsk_file_ids': {'anyOf': [{'type': 'array', 'items': {'type': 'string'}}, {'type': 'null'}], 'default': None, 'examples': [['pfNK5PuRe0MrwLHcGA3DOmB1ahwfXTbYHjv+KoBIxbE=']], 'description': 'ID of the reference mask file file to run task. File ID from upload file API.'}}}]}}, 'additionalProperties': False}
Schéma de sortie
{'type': 'object', 'required': ['result'], 'properties': {'result': {'anyOf': [{'type': 'object', 'additionalProperties': True}, {'type': 'object', 'required': ['error_message'], 'properties': {'request_id': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'error_message': {'type': 'string', 'description': 'Detailed description of error'}}}]}}, 'x-fastmcp-wrap-result': True}
Schéma d’entrée
{'type': 'object', 'required': ['request'], 'properties': {'polling': {'type': 'boolean', 'default': True, 'description': 'If true (default), keep polling until the task finishes, returning the final result. If false, return immediately without waiting for the task to finish.'}, 'request': {'anyOf': [{'type': 'object', 'required': ['src_file_url', 'ref_file_url', 'garment_category'], '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'}, 'ref_file_url': {'type': 'string', 'examples': ['https://example.com/reference.jpg'], 'description': 'Url of the reference file to run task. The url should be publicly accessible.'}, 'src_file_url': {'type': 'string', 'examples': ['https://example.com/selfie.jpg'], 'description': 'Url of the file to run task. The url should be publicly accessible.'}, 'garment_category': {'enum': ['full_body', 'lower_body', 'upper_body', 'shoes', 'auto', 'outer'], 'type': 'string', '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.'}}}, {'type': 'object', 'required': ['src_file_url', 'ref_file_id', 'garment_category'], 'properties': {'ref_file_id': {'type': 'string', 'examples': ['pfNK5PuRe0MrwLHcGA3DOmB1ahwfXTbYHjv+KoBIxbE='], 'description': 'ID of the reference file to run task. File ID from upload file API.'}, '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'}, 'src_file_url': {'type': 'string', 'examples': ['https://example.com/selfie.jpg'], 'description': 'Url of the file to run task. The url should be publicly accessible.'}, 'garment_category': {'enum': ['full_body', 'lower_body', 'upper_body', 'shoes', 'auto', 'outer'], 'type': 'string', '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.'}}}, {'type': 'object', 'required': ['src_file_id', 'ref_file_url', 'garment_category'], 'properties': {'src_file_id': {'type': 'string', 'examples': ['pfNK5PuRe0MrwLHcGA3DOmB1ahwfXTbYHjv+KoBIxbE='], 'description': 'ID of file to run task. File ID from upload file API.'}, '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'}, 'ref_file_url': {'type': 'string', 'examples': ['https://example.com/reference.jpg'], 'description': 'Url of the reference file to run task. The url should be publicly accessible.'}, 'garment_category': {'enum': ['full_body', 'lower_body', 'upper_body', 'shoes', 'auto', 'outer'], 'type': 'string', '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.'}}}, {'type': 'object', 'required': ['src_file_id', 'ref_file_id', 'garment_category'], 'properties': {'ref_file_id': {'type': 'string', 'examples': ['pfNK5PuRe0MrwLHcGA3DOmB1ahwfXTbYHjv+KoBIxbE='], 'description': 'ID of the reference file to run task. File ID from upload file API.'}, 'src_file_id': {'type': 'string', 'examples': ['pfNK5PuRe0MrwLHcGA3DOmB1ahwfXTbYHjv+KoBIxbE='], 'description': 'ID of file to run task. File ID from upload file API.'}, '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': {'enum': ['full_body', 'lower_body', 'upper_body', 'shoes', 'auto', 'outer'], 'type': 'string', '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.'}}}]}}, 'additionalProperties': False}
Schéma de sortie
{'type': 'object', 'required': ['result'], 'properties': {'result': {'anyOf': [{'type': 'object', 'additionalProperties': True}, {'type': 'object', 'required': ['error_message'], 'properties': {'request_id': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'error_message': {'type': 'string', 'description': 'Detailed description of error'}}}]}}, 'x-fastmcp-wrap-result': True}
Schéma d’entrée
{'type': 'object', 'required': ['request'], 'properties': {'polling': {'type': 'boolean', 'default': True, 'description': 'If true (default), keep polling until the task finishes, returning the final result. If false, return immediately without waiting for the task to finish.'}, 'request': {'anyOf': [{'type': 'object', 'required': ['source_info', 'object_infos', 'src_file_url', 'ref_file_urls'], 'properties': {'source_info': {'type': 'object', 'required': ['name'], 'properties': {'name': {'type': 'string', 'examples': ['https://example.com/selfie.jpg'], 'description': 'The source url or File ID.'}, 'mask_name': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'examples': ['https://example.com/src_mask.jpg'], 'description': 'The source mask url or File ID.'}}, 'description': 'Contain source photo informations.'}, 'object_infos': {'type': 'array', 'items': {'type': 'object', 'required': ['name'], 'properties': {'name': {'type': 'string', 'examples': ['https://example.com/vto_sku.jpg'], 'description': 'The reference url or File ID. Indicate which reference product image should be matched.'}, 'mask_name': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'examples': ['https://example.com/vto_sku_mask.jpg'], 'description': 'The reference mask url or File ID. Indicate which reference product image should be matched.'}, 'parameter': {'anyOf': [{'type': 'object', 'properties': {'earring_scale': {'anyOf': [{'type': 'number', 'exclusiveMinimum': 0.0}, {'type': 'null'}], 'default': None, 'examples': [None], 'description': 'Controls the earringâ\x80\x99s size in centimeters. <br>Default: null (use engine default)'}, 'earring_anchor_point': {'anyOf': [{'type': 'array', 'items': {'type': 'integer'}, 'maxItems': 2, 'minItems': 2}, {'type': 'null'}], 'default': None, 'examples': [None], 'description': 'The anchor point of the earring image, used for alignment. <br>Type: list of 2 integers <br>Range: [x, y] (pixel coordinates) <br>Default: null (use engine default)'}, 'earring_is_right_ear': {'anyOf': [{'type': 'boolean'}, {'type': 'null'}], 'default': True, 'examples': [True], 'description': 'Whether the earring is worn in right ear, defaultly is worn in right ear.'}, 'earring_occluded_type': {'anyOf': [{'enum': [0.0, 1.0, 2.0], 'type': 'number'}, {'type': 'null'}], 'default': 0, 'examples': [0], 'description': 'Which occluded type the earring is. 0 means auto-detect, 1 means occluded type, 2 means no.'}, 'earring_shadow_intensity': {'anyOf': [{'type': 'number', 'maximum': 1.0, 'minimum': 0.0}, {'type': 'null'}], 'default': 0.5, 'examples': [0.5], 'description': 'Shadow intensity applied to the earring (higher = darker shadow).'}, 'earring_wearing_location': {'anyOf': [{'type': 'array', 'items': {'type': 'integer'}, 'maxItems': 2, 'minItems': 2}, {'type': 'null'}], 'default': None, 'examples': [None], 'description': 'The target location of photo where the earring should be placed. <br>Type: list of 2 integers <br>Range: [x, y] (pixel coordinates) <br>Default: null (use engine default)'}, 'earring_need_remove_background': {'anyOf': [{'type': 'boolean'}, {'type': 'null'}], 'default': True, 'examples': [True], 'description': 'Whether the earring image needs background removal.'}, 'earring_ambient_light_intensity': {'anyOf': [{'type': 'number', 'maximum': 1.0, 'minimum': 0.0}, {'type': 'null'}], 'default': 0.5, 'examples': [0.5], 'description': 'Ambient light adjustment intensity for the earring.'}}}, {'type': 'null'}], 'default': None}}}}, 'src_file_url': {'type': 'string', 'examples': ['https://example.com/selfie.jpg'], 'description': 'Url of the file to run task. The url should be publicly accessible.'}, 'ref_file_urls': {'type': 'array', 'items': {'type': 'string'}, 'examples': [['https://example.com/vto_sku.jpg']], 'description': 'Url of the reference file to run task. The url should be publicly accessible.'}, 'srcmsk_file_url': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'examples': ['https://example.com/src_mask.jpg'], 'description': 'Url of the source mask file to run task. The url should be publicly accessible.'}, 'refmsk_file_urls': {'anyOf': [{'type': 'array', 'items': {'type': 'string'}}, {'type': 'null'}], 'default': None, 'examples': [['https://example.com/vto_sku_mask.jpg']], 'description': 'Url of the reference mask file to run task. The url should be publicly accessible.'}}}, {'type': 'object', 'required': ['source_info', 'object_infos', 'src_file_url', 'ref_file_ids'], 'properties': {'source_info': {'type': 'object', 'required': ['name'], 'properties': {'name': {'type': 'string', 'examples': ['https://example.com/selfie.jpg'], 'description': 'The source url or File ID.'}, 'mask_name': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'examples': ['https://example.com/src_mask.jpg'], 'description': 'The source mask url or File ID.'}}, 'description': 'Contain source photo informations.'}, 'object_infos': {'type': 'array', 'items': {'type': 'object', 'required': ['name'], 'properties': {'name': {'type': 'string', 'examples': ['https://example.com/vto_sku.jpg'], 'description': 'The reference url or File ID. Indicate which reference product image should be matched.'}, 'mask_name': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'examples': ['https://example.com/vto_sku_mask.jpg'], 'description': 'The reference mask url or File ID. Indicate which reference product image should be matched.'}, 'parameter': {'anyOf': [{'type': 'object', 'properties': {'earring_scale': {'anyOf': [{'type': 'number', 'exclusiveMinimum': 0.0}, {'type': 'null'}], 'default': None, 'examples': [None], 'description': 'Controls the earringâ\x80\x99s size in centimeters. <br>Default: null (use engine default)'}, 'earring_anchor_point': {'anyOf': [{'type': 'array', 'items': {'type': 'integer'}, 'maxItems': 2, 'minItems': 2}, {'type': 'null'}], 'default': None, 'examples': [None], 'description': 'The anchor point of the earring image, used for alignment. <br>Type: list of 2 integers <br>Range: [x, y] (pixel coordinates) <br>Default: null (use engine default)'}, 'earring_is_right_ear': {'anyOf': [{'type': 'boolean'}, {'type': 'null'}], 'default': True, 'examples': [True], 'description': 'Whether the earring is worn in right ear, defaultly is worn in right ear.'}, 'earring_occluded_type': {'anyOf': [{'enum': [0.0, 1.0, 2.0], 'type': 'number'}, {'type': 'null'}], 'default': 0, 'examples': [0], 'description': 'Which occluded type the earring is. 0 means auto-detect, 1 means occluded type, 2 means no.'}, 'earring_shadow_intensity': {'anyOf': [{'type': 'number', 'maximum': 1.0, 'minimum': 0.0}, {'type': 'null'}], 'default': 0.5, 'examples': [0.5], 'description': 'Shadow intensity applied to the earring (higher = darker shadow).'}, 'earring_wearing_location': {'anyOf': [{'type': 'array', 'items': {'type': 'integer'}, 'maxItems': 2, 'minItems': 2}, {'type': 'null'}], 'default': None, 'examples': [None], 'description': 'The target location of photo where the earring should be placed. <br>Type: list of 2 integers <br>Range: [x, y] (pixel coordinates) <br>Default: null (use engine default)'}, 'earring_need_remove_background': {'anyOf': [{'type': 'boolean'}, {'type': 'null'}], 'default': True, 'examples': [True], 'description': 'Whether the earring image needs background removal.'}, 'earring_ambient_light_intensity': {'anyOf': [{'type': 'number', 'maximum': 1.0, 'minimum': 0.0}, {'type': 'null'}], 'default': 0.5, 'examples': [0.5], 'description': 'Ambient light adjustment intensity for the earring.'}}}, {'type': 'null'}], 'default': None}}}}, 'ref_file_ids': {'type': 'array', 'items': {'type': 'string'}, 'examples': [['pfNK5PuRe0MrwLHcGA3DOmB1ahwfXTbYHjv+KoBIxbE=']], 'description': 'ID of the reference file file to run task. File ID from upload file API.'}, 'src_file_url': {'type': 'string', 'examples': ['https://example.com/selfie.jpg'], 'description': 'Url of the file to run task. The url should be publicly accessible.'}, 'refmsk_file_ids': {'anyOf': [{'type': 'array', 'items': {'type': 'string'}}, {'type': 'null'}], 'default': None, 'examples': [['pfNK5PuRe0MrwLHcGA3DOmB1ahwfXTbYHjv+KoBIxbE=']], 'description': 'ID of the reference mask file file to run task. File ID from upload file API.'}, 'srcmsk_file_url': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'examples': ['https://example.com/src_mask.jpg'], 'description': 'Url of the source mask file to run task. The url should be publicly accessible.'}}}, {'type': 'object', 'required': ['source_info', 'object_infos', 'src_file_id', 'ref_file_urls'], 'properties': {'source_info': {'type': 'object', 'required': ['name'], 'properties': {'name': {'type': 'string', 'examples': ['https://example.com/selfie.jpg'], 'description': 'The source url or File ID.'}, 'mask_name': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'examples': ['https://example.com/src_mask.jpg'], 'description': 'The source mask url or File ID.'}}, 'description': 'Contain source photo informations.'}, 'src_file_id': {'type': 'string', 'examples': ['pfNK5PuRe0MrwLHcGA3DOmB1ahwfXTbYHjv+KoBIxbE='], 'description': 'ID of file to run task. File ID from upload file API.'}, 'object_infos': {'type': 'array', 'items': {'type': 'object', 'required': ['name'], 'properties': {'name': {'type': 'string', 'examples': ['https://example.com/vto_sku.jpg'], 'description': 'The reference url or File ID. Indicate which reference product image should be matched.'}, 'mask_name': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'examples': ['https://example.com/vto_sku_mask.jpg'], 'description': 'The reference mask url or File ID. Indicate which reference product image should be matched.'}, 'parameter': {'anyOf': [{'type': 'object', 'properties': {'earring_scale': {'anyOf': [{'type': 'number', 'exclusiveMinimum': 0.0}, {'type': 'null'}], 'default': None, 'examples': [None], 'description': 'Controls the earringâ\x80\x99s size in centimeters. <br>Default: null (use engine default)'}, 'earring_anchor_point': {'anyOf': [{'type': 'array', 'items': {'type': 'integer'}, 'maxItems': 2, 'minItems': 2}, {'type': 'null'}], 'default': None, 'examples': [None], 'description': 'The anchor point of the earring image, used for alignment. <br>Type: list of 2 integers <br>Range: [x, y] (pixel coordinates) <br>Default: null (use engine default)'}, 'earring_is_right_ear': {'anyOf': [{'type': 'boolean'}, {'type': 'null'}], 'default': True, 'examples': [True], 'description': 'Whether the earring is worn in right ear, defaultly is worn in right ear.'}, 'earring_occluded_type': {'anyOf': [{'enum': [0.0, 1.0, 2.0], 'type': 'number'}, {'type': 'null'}], 'default': 0, 'examples': [0], 'description': 'Which occluded type the earring is. 0 means auto-detect, 1 means occluded type, 2 means no.'}, 'earring_shadow_intensity': {'anyOf': [{'type': 'number', 'maximum': 1.0, 'minimum': 0.0}, {'type': 'null'}], 'default': 0.5, 'examples': [0.5], 'description': 'Shadow intensity applied to the earring (higher = darker shadow).'}, 'earring_wearing_location': {'anyOf': [{'type': 'array', 'items': {'type': 'integer'}, 'maxItems': 2, 'minItems': 2}, {'type': 'null'}], 'default': None, 'examples': [None], 'description': 'The target location of photo where the earring should be placed. <br>Type: list of 2 integers <br>Range: [x, y] (pixel coordinates) <br>Default: null (use engine default)'}, 'earring_need_remove_background': {'anyOf': [{'type': 'boolean'}, {'type': 'null'}], 'default': True, 'examples': [True], 'description': 'Whether the earring image needs background removal.'}, 'earring_ambient_light_intensity': {'anyOf': [{'type': 'number', 'maximum': 1.0, 'minimum': 0.0}, {'type': 'null'}], 'default': 0.5, 'examples': [0.5], 'description': 'Ambient light adjustment intensity for the earring.'}}}, {'type': 'null'}], 'default': None}}}}, 'ref_file_urls': {'type': 'array', 'items': {'type': 'string'}, 'examples': [['https://example.com/vto_sku.jpg']], 'description': 'Url of the reference file to run task. The url should be publicly accessible.'}, 'srcmsk_file_id': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'examples': ['pfNK5PuRe0MrwLHcGA3DOmB1ahwfXTbYHjv+KoBIxbE='], 'description': 'ID of the source mask file to run task. File ID from upload file API.'}, 'refmsk_file_urls': {'anyOf': [{'type': 'array', 'items': {'type': 'string'}}, {'type': 'null'}], 'default': None, 'examples': [['https://example.com/vto_sku_mask.jpg']], 'description': 'Url of the reference mask file to run task. The url should be publicly accessible.'}}}, {'type': 'object', 'required': ['source_info', 'object_infos', 'src_file_id', 'ref_file_ids'], 'properties': {'source_info': {'type': 'object', 'required': ['name'], 'properties': {'name': {'type': 'string', 'examples': ['https://example.com/selfie.jpg'], 'description': 'The source url or File ID.'}, 'mask_name': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'examples': ['https://example.com/src_mask.jpg'], 'description': 'The source mask url or File ID.'}}, 'description': 'Contain source photo informations.'}, 'src_file_id': {'type': 'string', 'examples': ['pfNK5PuRe0MrwLHcGA3DOmB1ahwfXTbYHjv+KoBIxbE='], 'description': 'ID of file to run task. File ID from upload file API.'}, 'object_infos': {'type': 'array', 'items': {'type': 'object', 'required': ['name'], 'properties': {'name': {'type': 'string', 'examples': ['https://example.com/vto_sku.jpg'], 'description': 'The reference url or File ID. Indicate which reference product image should be matched.'}, 'mask_name': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'examples': ['https://example.com/vto_sku_mask.jpg'], 'description': 'The reference mask url or File ID. Indicate which reference product image should be matched.'}, 'parameter': {'anyOf': [{'type': 'object', 'properties': {'earring_scale': {'anyOf': [{'type': 'number', 'exclusiveMinimum': 0.0}, {'type': 'null'}], 'default': None, 'examples': [None], 'description': 'Controls the earringâ\x80\x99s size in centimeters. <br>Default: null (use engine default)'}, 'earring_anchor_point': {'anyOf': [{'type': 'array', 'items': {'type': 'integer'}, 'maxItems': 2, 'minItems': 2}, {'type': 'null'}], 'default': None, 'examples': [None], 'description': 'The anchor point of the earring image, used for alignment. <br>Type: list of 2 integers <br>Range: [x, y] (pixel coordinates) <br>Default: null (use engine default)'}, 'earring_is_right_ear': {'anyOf': [{'type': 'boolean'}, {'type': 'null'}], 'default': True, 'examples': [True], 'description': 'Whether the earring is worn in right ear, defaultly is worn in right ear.'}, 'earring_occluded_type': {'anyOf': [{'enum': [0.0, 1.0, 2.0], 'type': 'number'}, {'type': 'null'}], 'default': 0, 'examples': [0], 'description': 'Which occluded type the earring is. 0 means auto-detect, 1 means occluded type, 2 means no.'}, 'earring_shadow_intensity': {'anyOf': [{'type': 'number', 'maximum': 1.0, 'minimum': 0.0}, {'type': 'null'}], 'default': 0.5, 'examples': [0.5], 'description': 'Shadow intensity applied to the earring (higher = darker shadow).'}, 'earring_wearing_location': {'anyOf': [{'type': 'array', 'items': {'type': 'integer'}, 'maxItems': 2, 'minItems': 2}, {'type': 'null'}], 'default': None, 'examples': [None], 'description': 'The target location of photo where the earring should be placed. <br>Type: list of 2 integers <br>Range: [x, y] (pixel coordinates) <br>Default: null (use engine default)'}, 'earring_need_remove_background': {'anyOf': [{'type': 'boolean'}, {'type': 'null'}], 'default': True, 'examples': [True], 'description': 'Whether the earring image needs background removal.'}, 'earring_ambient_light_intensity': {'anyOf': [{'type': 'number', 'maximum': 1.0, 'minimum': 0.0}, {'type': 'null'}], 'default': 0.5, 'examples': [0.5], 'description': 'Ambient light adjustment intensity for the earring.'}}}, {'type': 'null'}], 'default': None}}}}, 'ref_file_ids': {'type': 'array', 'items': {'type': 'string'}, 'examples': [['pfNK5PuRe0MrwLHcGA3DOmB1ahwfXTbYHjv+KoBIxbE=']], 'description': 'ID of the reference file file to run task. File ID from upload file API.'}, 'srcmsk_file_id': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'examples': ['pfNK5PuRe0MrwLHcGA3DOmB1ahwfXTbYHjv+KoBIxbE='], 'description': 'ID of the source mask file to run task. File ID from upload file API.'}, 'refmsk_file_ids': {'anyOf': [{'type': 'array', 'items': {'type': 'string'}}, {'type': 'null'}], 'default': None, 'examples': [['pfNK5PuRe0MrwLHcGA3DOmB1ahwfXTbYHjv+KoBIxbE=']], 'description': 'ID of the reference mask file file to run task. File ID from upload file API.'}}}]}}, 'additionalProperties': False}
Schéma de sortie
{'type': 'object', 'required': ['result'], 'properties': {'result': {'anyOf': [{'type': 'object', 'additionalProperties': True}, {'type': 'object', 'required': ['error_message'], 'properties': {'request_id': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'error_message': {'type': 'string', 'description': 'Detailed description of error'}}}]}}, 'x-fastmcp-wrap-result': True}
Schéma d’entrée
{'type': 'object', 'required': ['request'], 'properties': {'polling': {'type': 'boolean', 'default': True, 'description': 'If true (default), keep polling until the task finishes, returning the final result. If false, return immediately without waiting for the task to finish.'}, 'request': {'anyOf': [{'type': 'object', 'required': ['template_id', 'src_file_url'], 'properties': {'template_id': {'type': 'string', 'examples': ['good_template_001'], 'description': 'ID of the template. List predefined templates first, and use the id of a template.'}, 'src_file_url': {'type': 'string', 'examples': ['https://example.com/selfie.jpg'], 'description': 'Url of the file to run task. The url should be publicly accessible.'}}}, {'type': 'object', 'required': ['template_id', 'src_file_id'], 'properties': {'src_file_id': {'type': 'string', 'examples': ['pfNK5PuRe0MrwLHcGA3DOmB1ahwfXTbYHjv+KoBIxbE='], 'description': 'ID of file to run task. File ID from upload file API.'}, 'template_id': {'type': 'string', 'examples': ['good_template_001'], 'description': 'ID of the template. List predefined templates first, and use the id of a template.'}}}]}}, 'additionalProperties': False}
Schéma de sortie
{'type': 'object', 'required': ['result'], 'properties': {'result': {'anyOf': [{'type': 'object', 'additionalProperties': True}, {'type': 'object', 'required': ['error_message'], 'properties': {'request_id': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'error_message': {'type': 'string', 'description': 'Detailed description of error'}}}]}}, 'x-fastmcp-wrap-result': True}
Schéma d’entrée
{'type': 'object', 'properties': {}, 'additionalProperties': False}
Schéma de sortie
{'type': 'object', 'required': ['result'], 'properties': {'result': {'anyOf': [{'type': 'object', 'additionalProperties': True}, {'type': 'object', 'required': ['error_message'], 'properties': {'request_id': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'error_message': {'type': 'string', 'description': 'Detailed description of error'}}}]}}, 'x-fastmcp-wrap-result': True}
Schéma d’entrée
{'type': 'object', 'required': ['request'], 'properties': {'polling': {'type': 'boolean', 'default': True, 'description': 'If true (default), keep polling until the task finishes, returning the final result. If false, return immediately without waiting for the task to finish.'}, 'request': {'anyOf': [{'type': 'object', 'required': ['gender', 'src_file_url', 'ref_file_url'], 'properties': {'style': {'anyOf': [{'enum': ['random', 'style_sporty_casual', 'style_urban_fashion', 'style_vacation_casual', 'style_warm_cozy', 'style_bohemian'], 'type': 'string'}, {'type': 'null'}], 'default': 'random', 'examples': ['random'], 'description': 'To control outfit and background style.'}, 'gender': {'enum': ['female', 'male'], 'type': 'string', 'examples': ['female'], 'description': 'Gender of the person in the image.'}, 'ref_file_url': {'type': 'string', 'examples': ['https://example.com/reference.jpg'], 'description': 'Url of the reference file to run task. The url should be publicly accessible.'}, 'src_file_url': {'type': 'string', 'examples': ['https://example.com/selfie.jpg'], 'description': 'Url of the file to run task. The url should be publicly accessible.'}}}, {'type': 'object', 'required': ['gender', 'src_file_url', 'ref_file_id'], 'properties': {'style': {'anyOf': [{'enum': ['random', 'style_sporty_casual', 'style_urban_fashion', 'style_vacation_casual', 'style_warm_cozy', 'style_bohemian'], 'type': 'string'}, {'type': 'null'}], 'default': 'random', 'examples': ['random'], 'description': 'To control outfit and background style.'}, 'gender': {'enum': ['female', 'male'], 'type': 'string', 'examples': ['female'], 'description': 'Gender of the person in the image.'}, 'ref_file_id': {'type': 'string', 'examples': ['pfNK5PuRe0MrwLHcGA3DOmB1ahwfXTbYHjv+KoBIxbE='], 'description': 'ID of the reference file to run task. File ID from upload file API.'}, 'src_file_url': {'type': 'string', 'examples': ['https://example.com/selfie.jpg'], 'description': 'Url of the file to run task. The url should be publicly accessible.'}}}, {'type': 'object', 'required': ['gender', 'src_file_id', 'ref_file_url'], 'properties': {'style': {'anyOf': [{'enum': ['random', 'style_sporty_casual', 'style_urban_fashion', 'style_vacation_casual', 'style_warm_cozy', 'style_bohemian'], 'type': 'string'}, {'type': 'null'}], 'default': 'random', 'examples': ['random'], 'description': 'To control outfit and background style.'}, 'gender': {'enum': ['female', 'male'], 'type': 'string', 'examples': ['female'], 'description': 'Gender of the person in the image.'}, 'src_file_id': {'type': 'string', 'examples': ['pfNK5PuRe0MrwLHcGA3DOmB1ahwfXTbYHjv+KoBIxbE='], 'description': 'ID of file to run task. File ID from upload file API.'}, 'ref_file_url': {'type': 'string', 'examples': ['https://example.com/reference.jpg'], 'description': 'Url of the reference file to run task. The url should be publicly accessible.'}}}, {'type': 'object', 'required': ['gender', 'src_file_id', 'ref_file_id'], 'properties': {'style': {'anyOf': [{'enum': ['random', 'style_sporty_casual', 'style_urban_fashion', 'style_vacation_casual', 'style_warm_cozy', 'style_bohemian'], 'type': 'string'}, {'type': 'null'}], 'default': 'random', 'examples': ['random'], 'description': 'To control outfit and background style.'}, 'gender': {'enum': ['female', 'male'], 'type': 'string', 'examples': ['female'], 'description': 'Gender of the person in the image.'}, 'ref_file_id': {'type': 'string', 'examples': ['pfNK5PuRe0MrwLHcGA3DOmB1ahwfXTbYHjv+KoBIxbE='], 'description': 'ID of the reference file to run task. File ID from upload file API.'}, 'src_file_id': {'type': 'string', 'examples': ['pfNK5PuRe0MrwLHcGA3DOmB1ahwfXTbYHjv+KoBIxbE='], 'description': 'ID of file to run task. File ID from upload file API.'}}}]}}, 'additionalProperties': False}
Schéma de sortie
{'type': 'object', 'required': ['result'], 'properties': {'result': {'anyOf': [{'type': 'object', 'additionalProperties': True}, {'type': 'object', 'required': ['error_message'], 'properties': {'request_id': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'error_message': {'type': 'string', 'description': 'Detailed description of error'}}}]}}, 'x-fastmcp-wrap-result': True}
Schéma d’entrée
{'type': 'object', 'required': ['categories'], 'properties': {'categories': {'type': 'array', 'items': {'enum': ['blush', 'bronzer', 'contour', 'eyebrows', 'eyeliner', 'eyeshadow', 'eyelashes', 'lipshape', 'lipliner', 'highlighter'], 'type': 'string'}, 'description': 'List of makeup VTO categories.'}}, 'additionalProperties': False}
Schéma de sortie
{'type': 'object', 'additionalProperties': True}
Schéma d’entrée
{'type': 'object', 'required': ['request'], 'properties': {'polling': {'type': 'boolean', 'default': True, 'description': 'If true (default), keep polling until the task finishes, returning the final result. If false, return immediately without waiting for the task to finish.'}, 'request': {'anyOf': [{'type': 'object', 'required': ['source_info', 'object_infos', 'src_file_url', 'ref_file_urls'], 'properties': {'source_info': {'type': 'object', 'required': ['name'], 'properties': {'name': {'type': 'string', 'examples': ['https://example.com/selfie.jpg'], 'description': 'The source url or File ID.'}, 'mask_name': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'examples': ['https://example.com/src_mask.jpg'], 'description': 'The source mask url or File ID.'}}, 'description': 'Contain source photo informations.'}, 'object_infos': {'type': 'array', 'items': {'type': 'object', 'required': ['name'], 'properties': {'name': {'type': 'string', 'examples': ['https://example.com/vto_sku.jpg'], 'description': 'The reference url or File ID. Indicate which reference product image should be matched.'}, 'parameter': {'anyOf': [{'type': 'object', 'properties': {'necklace_anchor_point': {'anyOf': [{'type': 'array', 'items': {'type': 'array', 'items': {'type': 'integer'}, 'maxItems': 2, 'minItems': 2}, 'maxItems': 2, 'minItems': 2}, {'type': 'null'}], 'default': None, 'examples': [None], 'description': 'The anchor points of the necklace image, used for alignment. <br>Type: 2x2 list of integers <br>Range: [[x, y], [x, y]] (pixel coordinates) <br>Default: null (use engine default)'}, 'necklace_shadow_intensity': {'anyOf': [{'type': 'number', 'maximum': 1.0, 'minimum': 0.0}, {'type': 'null'}], 'default': 0.5, 'examples': [0.5], 'description': 'Shadow intensity applied to the necklace (higher = darker shadow).'}, 'necklace_wearing_location': {'anyOf': [{'type': 'array', 'items': {'type': 'array', 'items': {'type': 'integer'}, 'maxItems': 2, 'minItems': 2}, 'maxItems': 2, 'minItems': 2}, {'type': 'null'}], 'default': None, 'examples': [None], 'description': 'The target locations of photo where the necklace should be placed. <br>Type: 2x2 list of integers <br>Range: [[x, y], [x, y]] (pixel coordinates) <br>Default: null (use engine default)'}, 'necklace_need_remove_background': {'anyOf': [{'type': 'boolean'}, {'type': 'null'}], 'default': True, 'examples': [True], 'description': 'Whether the necklace image needs background removal.'}, 'necklace_ambient_light_intensity': {'anyOf': [{'type': 'number', 'maximum': 1.0, 'minimum': 0.0}, {'type': 'null'}], 'default': 0.5, 'examples': [0.5], 'description': 'Ambient light adjustment intensity for the necklace.'}}}, {'type': 'null'}], 'default': None, 'description': 'Contain several object informations in this list.'}}}}, 'src_file_url': {'type': 'string', 'examples': ['https://example.com/selfie.jpg'], 'description': 'Url of the file to run task. The url should be publicly accessible.'}, 'ref_file_urls': {'type': 'array', 'items': {'type': 'string'}, 'examples': [['https://example.com/vto_sku.jpg']], 'description': 'Url of the reference file to run task. The url should be publicly accessible.'}, 'srcmsk_file_url': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'examples': ['https://example.com/src_mask.jpg'], 'description': 'Url of the source mask file to run task. The url should be publicly accessible.'}}}, {'type': 'object', 'required': ['source_info', 'object_infos', 'src_file_url', 'ref_file_ids'], 'properties': {'source_info': {'type': 'object', 'required': ['name'], 'properties': {'name': {'type': 'string', 'examples': ['https://example.com/selfie.jpg'], 'description': 'The source url or File ID.'}, 'mask_name': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'examples': ['https://example.com/src_mask.jpg'], 'description': 'The source mask url or File ID.'}}, 'description': 'Contain source photo informations.'}, 'object_infos': {'type': 'array', 'items': {'type': 'object', 'required': ['name'], 'properties': {'name': {'type': 'string', 'examples': ['https://example.com/vto_sku.jpg'], 'description': 'The reference url or File ID. Indicate which reference product image should be matched.'}, 'parameter': {'anyOf': [{'type': 'object', 'properties': {'necklace_anchor_point': {'anyOf': [{'type': 'array', 'items': {'type': 'array', 'items': {'type': 'integer'}, 'maxItems': 2, 'minItems': 2}, 'maxItems': 2, 'minItems': 2}, {'type': 'null'}], 'default': None, 'examples': [None], 'description': 'The anchor points of the necklace image, used for alignment. <br>Type: 2x2 list of integers <br>Range: [[x, y], [x, y]] (pixel coordinates) <br>Default: null (use engine default)'}, 'necklace_shadow_intensity': {'anyOf': [{'type': 'number', 'maximum': 1.0, 'minimum': 0.0}, {'type': 'null'}], 'default': 0.5, 'examples': [0.5], 'description': 'Shadow intensity applied to the necklace (higher = darker shadow).'}, 'necklace_wearing_location': {'anyOf': [{'type': 'array', 'items': {'type': 'array', 'items': {'type': 'integer'}, 'maxItems': 2, 'minItems': 2}, 'maxItems': 2, 'minItems': 2}, {'type': 'null'}], 'default': None, 'examples': [None], 'description': 'The target locations of photo where the necklace should be placed. <br>Type: 2x2 list of integers <br>Range: [[x, y], [x, y]] (pixel coordinates) <br>Default: null (use engine default)'}, 'necklace_need_remove_background': {'anyOf': [{'type': 'boolean'}, {'type': 'null'}], 'default': True, 'examples': [True], 'description': 'Whether the necklace image needs background removal.'}, 'necklace_ambient_light_intensity': {'anyOf': [{'type': 'number', 'maximum': 1.0, 'minimum': 0.0}, {'type': 'null'}], 'default': 0.5, 'examples': [0.5], 'description': 'Ambient light adjustment intensity for the necklace.'}}}, {'type': 'null'}], 'default': None, 'description': 'Contain several object informations in this list.'}}}}, 'ref_file_ids': {'type': 'array', 'items': {'type': 'string'}, 'examples': [['pfNK5PuRe0MrwLHcGA3DOmB1ahwfXTbYHjv+KoBIxbE=']], 'description': 'ID of the reference file file to run task. File ID from upload file API.'}, 'src_file_url': {'type': 'string', 'examples': ['https://example.com/selfie.jpg'], 'description': 'Url of the file to run task. The url should be publicly accessible.'}, 'srcmsk_file_url': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'examples': ['https://example.com/src_mask.jpg'], 'description': 'Url of the source mask file to run task. The url should be publicly accessible.'}}}, {'type': 'object', 'required': ['source_info', 'object_infos', 'src_file_id', 'ref_file_urls'], 'properties': {'source_info': {'type': 'object', 'required': ['name'], 'properties': {'name': {'type': 'string', 'examples': ['https://example.com/selfie.jpg'], 'description': 'The source url or File ID.'}, 'mask_name': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'examples': ['https://example.com/src_mask.jpg'], 'description': 'The source mask url or File ID.'}}, 'description': 'Contain source photo informations.'}, 'src_file_id': {'type': 'string', 'examples': ['pfNK5PuRe0MrwLHcGA3DOmB1ahwfXTbYHjv+KoBIxbE='], 'description': 'ID of file to run task. File ID from upload file API.'}, 'object_infos': {'type': 'array', 'items': {'type': 'object', 'required': ['name'], 'properties': {'name': {'type': 'string', 'examples': ['https://example.com/vto_sku.jpg'], 'description': 'The reference url or File ID. Indicate which reference product image should be matched.'}, 'parameter': {'anyOf': [{'type': 'object', 'properties': {'necklace_anchor_point': {'anyOf': [{'type': 'array', 'items': {'type': 'array', 'items': {'type': 'integer'}, 'maxItems': 2, 'minItems': 2}, 'maxItems': 2, 'minItems': 2}, {'type': 'null'}], 'default': None, 'examples': [None], 'description': 'The anchor points of the necklace image, used for alignment. <br>Type: 2x2 list of integers <br>Range: [[x, y], [x, y]] (pixel coordinates) <br>Default: null (use engine default)'}, 'necklace_shadow_intensity': {'anyOf': [{'type': 'number', 'maximum': 1.0, 'minimum': 0.0}, {'type': 'null'}], 'default': 0.5, 'examples': [0.5], 'description': 'Shadow intensity applied to the necklace (higher = darker shadow).'}, 'necklace_wearing_location': {'anyOf': [{'type': 'array', 'items': {'type': 'array', 'items': {'type': 'integer'}, 'maxItems': 2, 'minItems': 2}, 'maxItems': 2, 'minItems': 2}, {'type': 'null'}], 'default': None, 'examples': [None], 'description': 'The target locations of photo where the necklace should be placed. <br>Type: 2x2 list of integers <br>Range: [[x, y], [x, y]] (pixel coordinates) <br>Default: null (use engine default)'}, 'necklace_need_remove_background': {'anyOf': [{'type': 'boolean'}, {'type': 'null'}], 'default': True, 'examples': [True], 'description': 'Whether the necklace image needs background removal.'}, 'necklace_ambient_light_intensity': {'anyOf': [{'type': 'number', 'maximum': 1.0, 'minimum': 0.0}, {'type': 'null'}], 'default': 0.5, 'examples': [0.5], 'description': 'Ambient light adjustment intensity for the necklace.'}}}, {'type': 'null'}], 'default': None, 'description': 'Contain several object informations in this list.'}}}}, 'ref_file_urls': {'type': 'array', 'items': {'type': 'string'}, 'examples': [['https://example.com/vto_sku.jpg']], 'description': 'Url of the reference file to run task. The url should be publicly accessible.'}, 'srcmsk_file_id': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'examples': ['pfNK5PuRe0MrwLHcGA3DOmB1ahwfXTbYHjv+KoBIxbE='], 'description': 'ID of the source mask file to run task. File ID from upload file API.'}}}, {'type': 'object', 'required': ['source_info', 'object_infos', 'src_file_id', 'ref_file_ids'], 'properties': {'source_info': {'type': 'object', 'required': ['name'], 'properties': {'name': {'type': 'string', 'examples': ['https://example.com/selfie.jpg'], 'description': 'The source url or File ID.'}, 'mask_name': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'examples': ['https://example.com/src_mask.jpg'], 'description': 'The source mask url or File ID.'}}, 'description': 'Contain source photo informations.'}, 'src_file_id': {'type': 'string', 'examples': ['pfNK5PuRe0MrwLHcGA3DOmB1ahwfXTbYHjv+KoBIxbE='], 'description': 'ID of file to run task. File ID from upload file API.'}, 'object_infos': {'type': 'array', 'items': {'type': 'object', 'required': ['name'], 'properties': {'name': {'type': 'string', 'examples': ['https://example.com/vto_sku.jpg'], 'description': 'The reference url or File ID. Indicate which reference product image should be matched.'}, 'parameter': {'anyOf': [{'type': 'object', 'properties': {'necklace_anchor_point': {'anyOf': [{'type': 'array', 'items': {'type': 'array', 'items': {'type': 'integer'}, 'maxItems': 2, 'minItems': 2}, 'maxItems': 2, 'minItems': 2}, {'type': 'null'}], 'default': None, 'examples': [None], 'description': 'The anchor points of the necklace image, used for alignment. <br>Type: 2x2 list of integers <br>Range: [[x, y], [x, y]] (pixel coordinates) <br>Default: null (use engine default)'}, 'necklace_shadow_intensity': {'anyOf': [{'type': 'number', 'maximum': 1.0, 'minimum': 0.0}, {'type': 'null'}], 'default': 0.5, 'examples': [0.5], 'description': 'Shadow intensity applied to the necklace (higher = darker shadow).'}, 'necklace_wearing_location': {'anyOf': [{'type': 'array', 'items': {'type': 'array', 'items': {'type': 'integer'}, 'maxItems': 2, 'minItems': 2}, 'maxItems': 2, 'minItems': 2}, {'type': 'null'}], 'default': None, 'examples': [None], 'description': 'The target locations of photo where the necklace should be placed. <br>Type: 2x2 list of integers <br>Range: [[x, y], [x, y]] (pixel coordinates) <br>Default: null (use engine default)'}, 'necklace_need_remove_background': {'anyOf': [{'type': 'boolean'}, {'type': 'null'}], 'default': True, 'examples': [True], 'description': 'Whether the necklace image needs background removal.'}, 'necklace_ambient_light_intensity': {'anyOf': [{'type': 'number', 'maximum': 1.0, 'minimum': 0.0}, {'type': 'null'}], 'default': 0.5, 'examples': [0.5], 'description': 'Ambient light adjustment intensity for the necklace.'}}}, {'type': 'null'}], 'default': None, 'description': 'Contain several object informations in this list.'}}}}, 'ref_file_ids': {'type': 'array', 'items': {'type': 'string'}, 'examples': [['pfNK5PuRe0MrwLHcGA3DOmB1ahwfXTbYHjv+KoBIxbE=']], 'description': 'ID of the reference file file to run task. File ID from upload file API.'}, 'srcmsk_file_id': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'examples': ['pfNK5PuRe0MrwLHcGA3DOmB1ahwfXTbYHjv+KoBIxbE='], 'description': 'ID of the source mask file to run task. File ID from upload file API.'}}}]}}, 'additionalProperties': False}
Schéma de sortie
{'type': 'object', 'required': ['result'], 'properties': {'result': {'anyOf': [{'type': 'object', 'additionalProperties': True}, {'type': 'object', 'required': ['error_message'], 'properties': {'request_id': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'error_message': {'type': 'string', 'description': 'Detailed description of error'}}}]}}, 'x-fastmcp-wrap-result': True}
Schéma d’entrée
{'type': 'object', 'required': ['request'], 'properties': {'polling': {'type': 'boolean', 'default': True, 'description': 'If true (default), keep polling until the task finishes, returning the final result. If false, return immediately without waiting for the task to finish.'}, 'request': {'anyOf': [{'type': 'object', 'required': ['source_info', 'object_infos', 'src_file_url', 'ref_file_urls'], 'properties': {'source_info': {'type': 'object', 'required': ['name'], 'properties': {'name': {'type': 'string', 'examples': ['https://example.com/selfie.jpg'], 'description': 'The source url or File ID.'}, 'mask_name': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'examples': ['https://example.com/src_mask.jpg'], 'description': 'The source mask url or File ID.'}}, 'description': 'Contain source photo informations.'}, 'object_infos': {'type': 'array', 'items': {'type': 'object', 'required': ['name'], 'properties': {'name': {'type': 'string', 'examples': ['https://example.com/vto_sku.jpg'], 'description': 'The reference url or File ID. Indicate which reference product image should be matched.'}, 'mask_name': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'examples': ['https://example.com/vto_sku_mask.jpg'], 'description': 'The reference mask url or File ID. Indicate which reference product image should be matched.'}, 'parameter': {'anyOf': [{'type': 'object', 'properties': {'ring_anchor_point': {'anyOf': [{'type': 'array', 'items': {'type': 'array', 'items': {'type': 'integer'}, 'maxItems': 2, 'minItems': 2}, 'maxItems': 2, 'minItems': 2}, {'type': 'null'}], 'default': None, 'examples': [None], 'description': 'The anchor point of the ring image, marking the 2 farthest points along the inner edge of the ring <br>Type: 2x2 list of integers <br>Range: 2 (x, y) pixel coordinates <br>Default: null (use engine default)'}, 'ring_wearing_finger': {'anyOf': [{'enum': [0, 1, 2, 3, 4], 'type': 'integer'}, {'type': 'null'}], 'default': None, 'examples': [None], 'description': 'Defines on which finger the ring is worn. <br>Default: null (use engine default) <br>Range: 0 ~ 4 [thumb to pinky]'}, 'ring_shadow_intensity': {'anyOf': [{'type': 'number', 'maximum': 1.0, 'minimum': 0.0}, {'type': 'null'}], 'default': 0.15, 'examples': [0.15], 'description': 'Shadow intensity applied to the ring (higher = darker shadow).'}, 'ring_wearing_location': {'anyOf': [{'type': 'number', 'maximum': 1.0, 'minimum': 0.0}, {'type': 'null'}], 'default': None, 'examples': [None], 'description': 'Defines the placement of the ring on the selected finger in the user photo. <br>Range: 0.0 ~ 1.0(0 = base of the finger, 1 = first knuckle)'}, 'ring_need_remove_background': {'anyOf': [{'type': 'boolean'}, {'type': 'null'}], 'default': True, 'examples': [True], 'description': 'Whether the ring image needs background removal.'}, 'ring_ambient_light_intensity': {'anyOf': [{'type': 'number', 'maximum': 1.0, 'minimum': 0.0}, {'type': 'null'}], 'default': 1, 'examples': [1], 'description': 'Ambient light adjustment intensity for the ring.'}}}, {'type': 'null'}], 'default': None}}}}, 'src_file_url': {'type': 'string', 'examples': ['https://example.com/selfie.jpg'], 'description': 'Url of the file to run task. The url should be publicly accessible.'}, 'ref_file_urls': {'type': 'array', 'items': {'type': 'string'}, 'examples': [['https://example.com/vto_sku.jpg']], 'description': 'Url of the reference file to run task. The url should be publicly accessible.'}, 'srcmsk_file_url': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'examples': ['https://example.com/src_mask.jpg'], 'description': 'Url of the source mask file to run task. The url should be publicly accessible.'}, 'refmsk_file_urls': {'anyOf': [{'type': 'array', 'items': {'type': 'string'}}, {'type': 'null'}], 'default': None, 'examples': [['https://example.com/vto_sku_mask.jpg']], 'description': 'Url of the reference mask file to run task. The url should be publicly accessible.'}}}, {'type': 'object', 'required': ['source_info', 'object_infos', 'src_file_url', 'ref_file_ids'], 'properties': {'source_info': {'type': 'object', 'required': ['name'], 'properties': {'name': {'type': 'string', 'examples': ['https://example.com/selfie.jpg'], 'description': 'The source url or File ID.'}, 'mask_name': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'examples': ['https://example.com/src_mask.jpg'], 'description': 'The source mask url or File ID.'}}, 'description': 'Contain source photo informations.'}, 'object_infos': {'type': 'array', 'items': {'type': 'object', 'required': ['name'], 'properties': {'name': {'type': 'string', 'examples': ['https://example.com/vto_sku.jpg'], 'description': 'The reference url or File ID. Indicate which reference product image should be matched.'}, 'mask_name': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'examples': ['https://example.com/vto_sku_mask.jpg'], 'description': 'The reference mask url or File ID. Indicate which reference product image should be matched.'}, 'parameter': {'anyOf': [{'type': 'object', 'properties': {'ring_anchor_point': {'anyOf': [{'type': 'array', 'items': {'type': 'array', 'items': {'type': 'integer'}, 'maxItems': 2, 'minItems': 2}, 'maxItems': 2, 'minItems': 2}, {'type': 'null'}], 'default': None, 'examples': [None], 'description': 'The anchor point of the ring image, marking the 2 farthest points along the inner edge of the ring <br>Type: 2x2 list of integers <br>Range: 2 (x, y) pixel coordinates <br>Default: null (use engine default)'}, 'ring_wearing_finger': {'anyOf': [{'enum': [0, 1, 2, 3, 4], 'type': 'integer'}, {'type': 'null'}], 'default': None, 'examples': [None], 'description': 'Defines on which finger the ring is worn. <br>Default: null (use engine default) <br>Range: 0 ~ 4 [thumb to pinky]'}, 'ring_shadow_intensity': {'anyOf': [{'type': 'number', 'maximum': 1.0, 'minimum': 0.0}, {'type': 'null'}], 'default': 0.15, 'examples': [0.15], 'description': 'Shadow intensity applied to the ring (higher = darker shadow).'}, 'ring_wearing_location': {'anyOf': [{'type': 'number', 'maximum': 1.0, 'minimum': 0.0}, {'type': 'null'}], 'default': None, 'examples': [None], 'description': 'Defines the placement of the ring on the selected finger in the user photo. <br>Range: 0.0 ~ 1.0(0 = base of the finger, 1 = first knuckle)'}, 'ring_need_remove_background': {'anyOf': [{'type': 'boolean'}, {'type': 'null'}], 'default': True, 'examples': [True], 'description': 'Whether the ring image needs background removal.'}, 'ring_ambient_light_intensity': {'anyOf': [{'type': 'number', 'maximum': 1.0, 'minimum': 0.0}, {'type': 'null'}], 'default': 1, 'examples': [1], 'description': 'Ambient light adjustment intensity for the ring.'}}}, {'type': 'null'}], 'default': None}}}}, 'ref_file_ids': {'type': 'array', 'items': {'type': 'string'}, 'examples': [['pfNK5PuRe0MrwLHcGA3DOmB1ahwfXTbYHjv+KoBIxbE=']], 'description': 'ID of the reference file file to run task. File ID from upload file API.'}, 'src_file_url': {'type': 'string', 'examples': ['https://example.com/selfie.jpg'], 'description': 'Url of the file to run task. The url should be publicly accessible.'}, 'refmsk_file_ids': {'anyOf': [{'type': 'array', 'items': {'type': 'string'}}, {'type': 'null'}], 'default': None, 'examples': [['pfNK5PuRe0MrwLHcGA3DOmB1ahwfXTbYHjv+KoBIxbE=']], 'description': 'ID of the reference mask file file to run task. File ID from upload file API.'}, 'srcmsk_file_url': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'examples': ['https://example.com/src_mask.jpg'], 'description': 'Url of the source mask file to run task. The url should be publicly accessible.'}}}, {'type': 'object', 'required': ['source_info', 'object_infos', 'src_file_id', 'ref_file_urls'], 'properties': {'source_info': {'type': 'object', 'required': ['name'], 'properties': {'name': {'type': 'string', 'examples': ['https://example.com/selfie.jpg'], 'description': 'The source url or File ID.'}, 'mask_name': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'examples': ['https://example.com/src_mask.jpg'], 'description': 'The source mask url or File ID.'}}, 'description': 'Contain source photo informations.'}, 'src_file_id': {'type': 'string', 'examples': ['pfNK5PuRe0MrwLHcGA3DOmB1ahwfXTbYHjv+KoBIxbE='], 'description': 'ID of file to run task. File ID from upload file API.'}, 'object_infos': {'type': 'array', 'items': {'type': 'object', 'required': ['name'], 'properties': {'name': {'type': 'string', 'examples': ['https://example.com/vto_sku.jpg'], 'description': 'The reference url or File ID. Indicate which reference product image should be matched.'}, 'mask_name': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'examples': ['https://example.com/vto_sku_mask.jpg'], 'description': 'The reference mask url or File ID. Indicate which reference product image should be matched.'}, 'parameter': {'anyOf': [{'type': 'object', 'properties': {'ring_anchor_point': {'anyOf': [{'type': 'array', 'items': {'type': 'array', 'items': {'type': 'integer'}, 'maxItems': 2, 'minItems': 2}, 'maxItems': 2, 'minItems': 2}, {'type': 'null'}], 'default': None, 'examples': [None], 'description': 'The anchor point of the ring image, marking the 2 farthest points along the inner edge of the ring <br>Type: 2x2 list of integers <br>Range: 2 (x, y) pixel coordinates <br>Default: null (use engine default)'}, 'ring_wearing_finger': {'anyOf': [{'enum': [0, 1, 2, 3, 4], 'type': 'integer'}, {'type': 'null'}], 'default': None, 'examples': [None], 'description': 'Defines on which finger the ring is worn. <br>Default: null (use engine default) <br>Range: 0 ~ 4 [thumb to pinky]'}, 'ring_shadow_intensity': {'anyOf': [{'type': 'number', 'maximum': 1.0, 'minimum': 0.0}, {'type': 'null'}], 'default': 0.15, 'examples': [0.15], 'description': 'Shadow intensity applied to the ring (higher = darker shadow).'}, 'ring_wearing_location': {'anyOf': [{'type': 'number', 'maximum': 1.0, 'minimum': 0.0}, {'type': 'null'}], 'default': None, 'examples': [None], 'description': 'Defines the placement of the ring on the selected finger in the user photo. <br>Range: 0.0 ~ 1.0(0 = base of the finger, 1 = first knuckle)'}, 'ring_need_remove_background': {'anyOf': [{'type': 'boolean'}, {'type': 'null'}], 'default': True, 'examples': [True], 'description': 'Whether the ring image needs background removal.'}, 'ring_ambient_light_intensity': {'anyOf': [{'type': 'number', 'maximum': 1.0, 'minimum': 0.0}, {'type': 'null'}], 'default': 1, 'examples': [1], 'description': 'Ambient light adjustment intensity for the ring.'}}}, {'type': 'null'}], 'default': None}}}}, 'ref_file_urls': {'type': 'array', 'items': {'type': 'string'}, 'examples': [['https://example.com/vto_sku.jpg']], 'description': 'Url of the reference file to run task. The url should be publicly accessible.'}, 'srcmsk_file_id': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'examples': ['pfNK5PuRe0MrwLHcGA3DOmB1ahwfXTbYHjv+KoBIxbE='], 'description': 'ID of the source mask file to run task. File ID from upload file API.'}, 'refmsk_file_urls': {'anyOf': [{'type': 'array', 'items': {'type': 'string'}}, {'type': 'null'}], 'default': None, 'examples': [['https://example.com/vto_sku_mask.jpg']], 'description': 'Url of the reference mask file to run task. The url should be publicly accessible.'}}}, {'type': 'object', 'required': ['source_info', 'object_infos', 'src_file_id', 'ref_file_ids'], 'properties': {'source_info': {'type': 'object', 'required': ['name'], 'properties': {'name': {'type': 'string', 'examples': ['https://example.com/selfie.jpg'], 'description': 'The source url or File ID.'}, 'mask_name': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'examples': ['https://example.com/src_mask.jpg'], 'description': 'The source mask url or File ID.'}}, 'description': 'Contain source photo informations.'}, 'src_file_id': {'type': 'string', 'examples': ['pfNK5PuRe0MrwLHcGA3DOmB1ahwfXTbYHjv+KoBIxbE='], 'description': 'ID of file to run task. File ID from upload file API.'}, 'object_infos': {'type': 'array', 'items': {'type': 'object', 'required': ['name'], 'properties': {'name': {'type': 'string', 'examples': ['https://example.com/vto_sku.jpg'], 'description': 'The reference url or File ID. Indicate which reference product image should be matched.'}, 'mask_name': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'examples': ['https://example.com/vto_sku_mask.jpg'], 'description': 'The reference mask url or File ID. Indicate which reference product image should be matched.'}, 'parameter': {'anyOf': [{'type': 'object', 'properties': {'ring_anchor_point': {'anyOf': [{'type': 'array', 'items': {'type': 'array', 'items': {'type': 'integer'}, 'maxItems': 2, 'minItems': 2}, 'maxItems': 2, 'minItems': 2}, {'type': 'null'}], 'default': None, 'examples': [None], 'description': 'The anchor point of the ring image, marking the 2 farthest points along the inner edge of the ring <br>Type: 2x2 list of integers <br>Range: 2 (x, y) pixel coordinates <br>Default: null (use engine default)'}, 'ring_wearing_finger': {'anyOf': [{'enum': [0, 1, 2, 3, 4], 'type': 'integer'}, {'type': 'null'}], 'default': None, 'examples': [None], 'description': 'Defines on which finger the ring is worn. <br>Default: null (use engine default) <br>Range: 0 ~ 4 [thumb to pinky]'}, 'ring_shadow_intensity': {'anyOf': [{'type': 'number', 'maximum': 1.0, 'minimum': 0.0}, {'type': 'null'}], 'default': 0.15, 'examples': [0.15], 'description': 'Shadow intensity applied to the ring (higher = darker shadow).'}, 'ring_wearing_location': {'anyOf': [{'type': 'number', 'maximum': 1.0, 'minimum': 0.0}, {'type': 'null'}], 'default': None, 'examples': [None], 'description': 'Defines the placement of the ring on the selected finger in the user photo. <br>Range: 0.0 ~ 1.0(0 = base of the finger, 1 = first knuckle)'}, 'ring_need_remove_background': {'anyOf': [{'type': 'boolean'}, {'type': 'null'}], 'default': True, 'examples': [True], 'description': 'Whether the ring image needs background removal.'}, 'ring_ambient_light_intensity': {'anyOf': [{'type': 'number', 'maximum': 1.0, 'minimum': 0.0}, {'type': 'null'}], 'default': 1, 'examples': [1], 'description': 'Ambient light adjustment intensity for the ring.'}}}, {'type': 'null'}], 'default': None}}}}, 'ref_file_ids': {'type': 'array', 'items': {'type': 'string'}, 'examples': [['pfNK5PuRe0MrwLHcGA3DOmB1ahwfXTbYHjv+KoBIxbE=']], 'description': 'ID of the reference file file to run task. File ID from upload file API.'}, 'srcmsk_file_id': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'examples': ['pfNK5PuRe0MrwLHcGA3DOmB1ahwfXTbYHjv+KoBIxbE='], 'description': 'ID of the source mask file to run task. File ID from upload file API.'}, 'refmsk_file_ids': {'anyOf': [{'type': 'array', 'items': {'type': 'string'}}, {'type': 'null'}], 'default': None, 'examples': [['pfNK5PuRe0MrwLHcGA3DOmB1ahwfXTbYHjv+KoBIxbE=']], 'description': 'ID of the reference mask file file to run task. File ID from upload file API.'}}}]}}, 'additionalProperties': False}
Schéma de sortie
{'type': 'object', 'required': ['result'], 'properties': {'result': {'anyOf': [{'type': 'object', 'additionalProperties': True}, {'type': 'object', 'required': ['error_message'], 'properties': {'request_id': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'error_message': {'type': 'string', 'description': 'Detailed description of error'}}}]}}, 'x-fastmcp-wrap-result': True}
Schéma d’entrée
{'type': 'object', 'required': ['request'], 'properties': {'polling': {'type': 'boolean', 'default': True, 'description': 'If true (default), keep polling until the task finishes, returning the final result. If false, return immediately without waiting for the task to finish.'}, 'request': {'anyOf': [{'type': 'object', 'required': ['gender', 'src_file_url', 'ref_file_url'], 'properties': {'style': {'anyOf': [{'enum': ['random', 'style_french_elegance', 'style_light_luxury', 'style_cottagecore', 'style_modern_chic', 'style_bohemian'], 'type': 'string'}, {'type': 'null'}], 'default': 'random', 'examples': ['random'], 'description': 'To control outfit and background style.'}, 'gender': {'enum': ['female', 'male'], 'type': 'string', 'examples': ['female'], 'description': 'Gender of the person in the image.'}, 'ref_file_url': {'type': 'string', 'examples': ['https://example.com/reference.jpg'], 'description': 'Url of the reference file to run task. The url should be publicly accessible.'}, 'src_file_url': {'type': 'string', 'examples': ['https://example.com/selfie.jpg'], 'description': 'Url of the file to run task. The url should be publicly accessible.'}}}, {'type': 'object', 'required': ['gender', 'src_file_url', 'ref_file_id'], 'properties': {'style': {'anyOf': [{'enum': ['random', 'style_french_elegance', 'style_light_luxury', 'style_cottagecore', 'style_modern_chic', 'style_bohemian'], 'type': 'string'}, {'type': 'null'}], 'default': 'random', 'examples': ['random'], 'description': 'To control outfit and background style.'}, 'gender': {'enum': ['female', 'male'], 'type': 'string', 'examples': ['female'], 'description': 'Gender of the person in the image.'}, 'ref_file_id': {'type': 'string', 'examples': ['pfNK5PuRe0MrwLHcGA3DOmB1ahwfXTbYHjv+KoBIxbE='], 'description': 'ID of the reference file to run task. File ID from upload file API.'}, 'src_file_url': {'type': 'string', 'examples': ['https://example.com/selfie.jpg'], 'description': 'Url of the file to run task. The url should be publicly accessible.'}}}, {'type': 'object', 'required': ['gender', 'src_file_id', 'ref_file_url'], 'properties': {'style': {'anyOf': [{'enum': ['random', 'style_french_elegance', 'style_light_luxury', 'style_cottagecore', 'style_modern_chic', 'style_bohemian'], 'type': 'string'}, {'type': 'null'}], 'default': 'random', 'examples': ['random'], 'description': 'To control outfit and background style.'}, 'gender': {'enum': ['female', 'male'], 'type': 'string', 'examples': ['female'], 'description': 'Gender of the person in the image.'}, 'src_file_id': {'type': 'string', 'examples': ['pfNK5PuRe0MrwLHcGA3DOmB1ahwfXTbYHjv+KoBIxbE='], 'description': 'ID of file to run task. File ID from upload file API.'}, 'ref_file_url': {'type': 'string', 'examples': ['https://example.com/reference.jpg'], 'description': 'Url of the reference file to run task. The url should be publicly accessible.'}}}, {'type': 'object', 'required': ['gender', 'src_file_id', 'ref_file_id'], 'properties': {'style': {'anyOf': [{'enum': ['random', 'style_french_elegance', 'style_light_luxury', 'style_cottagecore', 'style_modern_chic', 'style_bohemian'], 'type': 'string'}, {'type': 'null'}], 'default': 'random', 'examples': ['random'], 'description': 'To control outfit and background style.'}, 'gender': {'enum': ['female', 'male'], 'type': 'string', 'examples': ['female'], 'description': 'Gender of the person in the image.'}, 'ref_file_id': {'type': 'string', 'examples': ['pfNK5PuRe0MrwLHcGA3DOmB1ahwfXTbYHjv+KoBIxbE='], 'description': 'ID of the reference file to run task. File ID from upload file API.'}, 'src_file_id': {'type': 'string', 'examples': ['pfNK5PuRe0MrwLHcGA3DOmB1ahwfXTbYHjv+KoBIxbE='], 'description': 'ID of file to run task. File ID from upload file API.'}}}]}}, 'additionalProperties': False}
Schéma de sortie
{'type': 'object', 'required': ['result'], 'properties': {'result': {'anyOf': [{'type': 'object', 'additionalProperties': True}, {'type': 'object', 'required': ['error_message'], 'properties': {'request_id': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'error_message': {'type': 'string', 'description': 'Detailed description of error'}}}]}}, 'x-fastmcp-wrap-result': True}
Schéma d’entrée
{'type': 'object', 'required': ['request'], 'properties': {'polling': {'type': 'boolean', 'default': True, 'description': 'If true (default), keep polling until the task finishes, returning the final result. If false, return immediately without waiting for the task to finish.'}, 'request': {'anyOf': [{'type': 'object', 'required': ['gender', 'src_file_url', 'ref_file_url'], 'properties': {'style': {'anyOf': [{'enum': ['random', 'style_minimalist', 'style_bohemian', 'style_cottagecore', 'style_french_elegance', 'style_retro_fashion'], 'type': 'string'}, {'type': 'null'}], 'default': 'random', 'examples': ['random'], 'description': 'To control outfit and background style.'}, 'gender': {'enum': ['female', 'male'], 'type': 'string', 'examples': ['female'], 'description': 'Gender of the person in the image.'}, 'ref_file_url': {'type': 'string', 'examples': ['https://example.com/reference.jpg'], 'description': 'Url of the reference file to run task. The url should be publicly accessible.'}, 'src_file_url': {'type': 'string', 'examples': ['https://example.com/selfie.jpg'], 'description': 'Url of the file to run task. The url should be publicly accessible.'}}}, {'type': 'object', 'required': ['gender', 'src_file_url', 'ref_file_id'], 'properties': {'style': {'anyOf': [{'enum': ['random', 'style_minimalist', 'style_bohemian', 'style_cottagecore', 'style_french_elegance', 'style_retro_fashion'], 'type': 'string'}, {'type': 'null'}], 'default': 'random', 'examples': ['random'], 'description': 'To control outfit and background style.'}, 'gender': {'enum': ['female', 'male'], 'type': 'string', 'examples': ['female'], 'description': 'Gender of the person in the image.'}, 'ref_file_id': {'type': 'string', 'examples': ['pfNK5PuRe0MrwLHcGA3DOmB1ahwfXTbYHjv+KoBIxbE='], 'description': 'ID of the reference file to run task. File ID from upload file API.'}, 'src_file_url': {'type': 'string', 'examples': ['https://example.com/selfie.jpg'], 'description': 'Url of the file to run task. The url should be publicly accessible.'}}}, {'type': 'object', 'required': ['gender', 'src_file_id', 'ref_file_url'], 'properties': {'style': {'anyOf': [{'enum': ['random', 'style_minimalist', 'style_bohemian', 'style_cottagecore', 'style_french_elegance', 'style_retro_fashion'], 'type': 'string'}, {'type': 'null'}], 'default': 'random', 'examples': ['random'], 'description': 'To control outfit and background style.'}, 'gender': {'enum': ['female', 'male'], 'type': 'string', 'examples': ['female'], 'description': 'Gender of the person in the image.'}, 'src_file_id': {'type': 'string', 'examples': ['pfNK5PuRe0MrwLHcGA3DOmB1ahwfXTbYHjv+KoBIxbE='], 'description': 'ID of file to run task. File ID from upload file API.'}, 'ref_file_url': {'type': 'string', 'examples': ['https://example.com/reference.jpg'], 'description': 'Url of the reference file to run task. The url should be publicly accessible.'}}}, {'type': 'object', 'required': ['gender', 'src_file_id', 'ref_file_id'], 'properties': {'style': {'anyOf': [{'enum': ['random', 'style_minimalist', 'style_bohemian', 'style_cottagecore', 'style_french_elegance', 'style_retro_fashion'], 'type': 'string'}, {'type': 'null'}], 'default': 'random', 'examples': ['random'], 'description': 'To control outfit and background style.'}, 'gender': {'enum': ['female', 'male'], 'type': 'string', 'examples': ['female'], 'description': 'Gender of the person in the image.'}, 'ref_file_id': {'type': 'string', 'examples': ['pfNK5PuRe0MrwLHcGA3DOmB1ahwfXTbYHjv+KoBIxbE='], 'description': 'ID of the reference file to run task. File ID from upload file API.'}, 'src_file_id': {'type': 'string', 'examples': ['pfNK5PuRe0MrwLHcGA3DOmB1ahwfXTbYHjv+KoBIxbE='], 'description': 'ID of file to run task. File ID from upload file API.'}}}]}}, 'additionalProperties': False}
Schéma de sortie
{'type': 'object', 'required': ['result'], 'properties': {'result': {'anyOf': [{'type': 'object', 'additionalProperties': True}, {'type': 'object', 'required': ['error_message'], 'properties': {'request_id': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'error_message': {'type': 'string', 'description': 'Detailed description of error'}}}]}}, 'x-fastmcp-wrap-result': True}
Schéma d’entrée
{'type': 'object', 'required': ['request'], 'properties': {'polling': {'type': 'boolean', 'default': True, 'description': 'If true (default), keep polling until the task finishes, returning the final result. If false, return immediately without waiting for the task to finish.'}, 'request': {'anyOf': [{'type': 'object', 'required': ['source_info', 'object_infos', 'src_file_url', 'ref_file_urls'], 'properties': {'source_info': {'type': 'object', 'required': ['name'], 'properties': {'name': {'type': 'string', 'examples': ['https://example.com/selfie.jpg'], 'description': 'The source url or File ID.'}, 'mask_name': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'examples': ['https://example.com/src_mask.jpg'], 'description': 'The source mask url or File ID.'}}, 'description': 'Contain source photo informations.'}, 'object_infos': {'type': 'array', 'items': {'type': 'object', 'required': ['name'], 'properties': {'name': {'type': 'string', 'examples': ['https://example.com/vto_sku.jpg'], 'description': 'The reference url or File ID. Indicate which reference product image should be matched.'}, 'mask_name': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'examples': ['https://example.com/vto_sku_mask.jpg'], 'description': 'The reference mask url or File ID. Indicate which reference product image should be matched.'}, 'parameter': {'anyOf': [{'type': 'object', 'properties': {'watch_anchor_point': {'anyOf': [{'type': 'array', 'items': {'type': 'array', 'items': {'type': 'integer'}, 'maxItems': 2, 'minItems': 2}, 'maxItems': 4, 'minItems': 4}, {'type': 'null'}], 'default': None, 'examples': [None], 'description': 'First 2 points mark the strap end when worn. Remaining 2 points mark the upper & lower edges of watch case. <br>Type: 4x2 list of integers <br>Range: 4 (x, y) pixel coordinates <br>Default: null (use engine default)'}, 'watch_shadow_intensity': {'anyOf': [{'type': 'number', 'maximum': 1.0, 'minimum': 0.0}, {'type': 'null'}], 'default': 0.3, 'examples': [0.3], 'description': 'Shadow intensity applied to the watch (higher = darker shadow).'}, 'watch_wearing_location': {'anyOf': [{'type': 'number', 'maximum': 1.0, 'minimum': -0.3}, {'type': 'null'}], 'default': None, 'examples': [None], 'description': 'Defines the placement of the watch on the wrist in the user photo. <br>Range: -0.3 ~ 1.0 (0 = closest to the wrist joint) <br> (smaller number = placed close to the palm <br> larger number = placed further away from the wrist) <br>Default: null (use engine default)'}, 'watch_need_remove_background': {'anyOf': [{'type': 'boolean'}, {'type': 'null'}], 'default': True, 'examples': [True], 'description': 'Whether the watch image needs background removal.'}, 'watch_ambient_light_intensity': {'anyOf': [{'type': 'number', 'maximum': 1.0, 'minimum': 0.0}, {'type': 'null'}], 'default': 1, 'examples': [1], 'description': 'Ambient light adjustment intensity for the watch.'}}}, {'type': 'null'}], 'default': None}}}}, 'src_file_url': {'type': 'string', 'examples': ['https://example.com/selfie.jpg'], 'description': 'Url of the file to run task. The url should be publicly accessible.'}, 'ref_file_urls': {'type': 'array', 'items': {'type': 'string'}, 'examples': [['https://example.com/vto_sku.jpg']], 'description': 'Url of the reference file to run task. The url should be publicly accessible.'}, 'srcmsk_file_url': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'examples': ['https://example.com/src_mask.jpg'], 'description': 'Url of the source mask file to run task. The url should be publicly accessible.'}, 'refmsk_file_urls': {'anyOf': [{'type': 'array', 'items': {'type': 'string'}}, {'type': 'null'}], 'default': None, 'examples': [['https://example.com/vto_sku_mask.jpg']], 'description': 'Url of the reference mask file to run task. The url should be publicly accessible.'}}}, {'type': 'object', 'required': ['source_info', 'object_infos', 'src_file_url', 'ref_file_ids'], 'properties': {'source_info': {'type': 'object', 'required': ['name'], 'properties': {'name': {'type': 'string', 'examples': ['https://example.com/selfie.jpg'], 'description': 'The source url or File ID.'}, 'mask_name': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'examples': ['https://example.com/src_mask.jpg'], 'description': 'The source mask url or File ID.'}}, 'description': 'Contain source photo informations.'}, 'object_infos': {'type': 'array', 'items': {'type': 'object', 'required': ['name'], 'properties': {'name': {'type': 'string', 'examples': ['https://example.com/vto_sku.jpg'], 'description': 'The reference url or File ID. Indicate which reference product image should be matched.'}, 'mask_name': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'examples': ['https://example.com/vto_sku_mask.jpg'], 'description': 'The reference mask url or File ID. Indicate which reference product image should be matched.'}, 'parameter': {'anyOf': [{'type': 'object', 'properties': {'watch_anchor_point': {'anyOf': [{'type': 'array', 'items': {'type': 'array', 'items': {'type': 'integer'}, 'maxItems': 2, 'minItems': 2}, 'maxItems': 4, 'minItems': 4}, {'type': 'null'}], 'default': None, 'examples': [None], 'description': 'First 2 points mark the strap end when worn. Remaining 2 points mark the upper & lower edges of watch case. <br>Type: 4x2 list of integers <br>Range: 4 (x, y) pixel coordinates <br>Default: null (use engine default)'}, 'watch_shadow_intensity': {'anyOf': [{'type': 'number', 'maximum': 1.0, 'minimum': 0.0}, {'type': 'null'}], 'default': 0.3, 'examples': [0.3], 'description': 'Shadow intensity applied to the watch (higher = darker shadow).'}, 'watch_wearing_location': {'anyOf': [{'type': 'number', 'maximum': 1.0, 'minimum': -0.3}, {'type': 'null'}], 'default': None, 'examples': [None], 'description': 'Defines the placement of the watch on the wrist in the user photo. <br>Range: -0.3 ~ 1.0 (0 = closest to the wrist joint) <br> (smaller number = placed close to the palm <br> larger number = placed further away from the wrist) <br>Default: null (use engine default)'}, 'watch_need_remove_background': {'anyOf': [{'type': 'boolean'}, {'type': 'null'}], 'default': True, 'examples': [True], 'description': 'Whether the watch image needs background removal.'}, 'watch_ambient_light_intensity': {'anyOf': [{'type': 'number', 'maximum': 1.0, 'minimum': 0.0}, {'type': 'null'}], 'default': 1, 'examples': [1], 'description': 'Ambient light adjustment intensity for the watch.'}}}, {'type': 'null'}], 'default': None}}}}, 'ref_file_ids': {'type': 'array', 'items': {'type': 'string'}, 'examples': [['pfNK5PuRe0MrwLHcGA3DOmB1ahwfXTbYHjv+KoBIxbE=']], 'description': 'ID of the reference file file to run task. File ID from upload file API.'}, 'src_file_url': {'type': 'string', 'examples': ['https://example.com/selfie.jpg'], 'description': 'Url of the file to run task. The url should be publicly accessible.'}, 'refmsk_file_ids': {'anyOf': [{'type': 'array', 'items': {'type': 'string'}}, {'type': 'null'}], 'default': None, 'examples': [['pfNK5PuRe0MrwLHcGA3DOmB1ahwfXTbYHjv+KoBIxbE=']], 'description': 'ID of the reference mask file file to run task. File ID from upload file API.'}, 'srcmsk_file_url': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'examples': ['https://example.com/src_mask.jpg'], 'description': 'Url of the source mask file to run task. The url should be publicly accessible.'}}}, {'type': 'object', 'required': ['source_info', 'object_infos', 'src_file_id', 'ref_file_urls'], 'properties': {'source_info': {'type': 'object', 'required': ['name'], 'properties': {'name': {'type': 'string', 'examples': ['https://example.com/selfie.jpg'], 'description': 'The source url or File ID.'}, 'mask_name': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'examples': ['https://example.com/src_mask.jpg'], 'description': 'The source mask url or File ID.'}}, 'description': 'Contain source photo informations.'}, 'src_file_id': {'type': 'string', 'examples': ['pfNK5PuRe0MrwLHcGA3DOmB1ahwfXTbYHjv+KoBIxbE='], 'description': 'ID of file to run task. File ID from upload file API.'}, 'object_infos': {'type': 'array', 'items': {'type': 'object', 'required': ['name'], 'properties': {'name': {'type': 'string', 'examples': ['https://example.com/vto_sku.jpg'], 'description': 'The reference url or File ID. Indicate which reference product image should be matched.'}, 'mask_name': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'examples': ['https://example.com/vto_sku_mask.jpg'], 'description': 'The reference mask url or File ID. Indicate which reference product image should be matched.'}, 'parameter': {'anyOf': [{'type': 'object', 'properties': {'watch_anchor_point': {'anyOf': [{'type': 'array', 'items': {'type': 'array', 'items': {'type': 'integer'}, 'maxItems': 2, 'minItems': 2}, 'maxItems': 4, 'minItems': 4}, {'type': 'null'}], 'default': None, 'examples': [None], 'description': 'First 2 points mark the strap end when worn. Remaining 2 points mark the upper & lower edges of watch case. <br>Type: 4x2 list of integers <br>Range: 4 (x, y) pixel coordinates <br>Default: null (use engine default)'}, 'watch_shadow_intensity': {'anyOf': [{'type': 'number', 'maximum': 1.0, 'minimum': 0.0}, {'type': 'null'}], 'default': 0.3, 'examples': [0.3], 'description': 'Shadow intensity applied to the watch (higher = darker shadow).'}, 'watch_wearing_location': {'anyOf': [{'type': 'number', 'maximum': 1.0, 'minimum': -0.3}, {'type': 'null'}], 'default': None, 'examples': [None], 'description': 'Defines the placement of the watch on the wrist in the user photo. <br>Range: -0.3 ~ 1.0 (0 = closest to the wrist joint) <br> (smaller number = placed close to the palm <br> larger number = placed further away from the wrist) <br>Default: null (use engine default)'}, 'watch_need_remove_background': {'anyOf': [{'type': 'boolean'}, {'type': 'null'}], 'default': True, 'examples': [True], 'description': 'Whether the watch image needs background removal.'}, 'watch_ambient_light_intensity': {'anyOf': [{'type': 'number', 'maximum': 1.0, 'minimum': 0.0}, {'type': 'null'}], 'default': 1, 'examples': [1], 'description': 'Ambient light adjustment intensity for the watch.'}}}, {'type': 'null'}], 'default': None}}}}, 'ref_file_urls': {'type': 'array', 'items': {'type': 'string'}, 'examples': [['https://example.com/vto_sku.jpg']], 'description': 'Url of the reference file to run task. The url should be publicly accessible.'}, 'srcmsk_file_id': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'examples': ['pfNK5PuRe0MrwLHcGA3DOmB1ahwfXTbYHjv+KoBIxbE='], 'description': 'ID of the source mask file to run task. File ID from upload file API.'}, 'refmsk_file_urls': {'anyOf': [{'type': 'array', 'items': {'type': 'string'}}, {'type': 'null'}], 'default': None, 'examples': [['https://example.com/vto_sku_mask.jpg']], 'description': 'Url of the reference mask file to run task. The url should be publicly accessible.'}}}, {'type': 'object', 'required': ['source_info', 'object_infos', 'src_file_id', 'ref_file_ids'], 'properties': {'source_info': {'type': 'object', 'required': ['name'], 'properties': {'name': {'type': 'string', 'examples': ['https://example.com/selfie.jpg'], 'description': 'The source url or File ID.'}, 'mask_name': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'examples': ['https://example.com/src_mask.jpg'], 'description': 'The source mask url or File ID.'}}, 'description': 'Contain source photo informations.'}, 'src_file_id': {'type': 'string', 'examples': ['pfNK5PuRe0MrwLHcGA3DOmB1ahwfXTbYHjv+KoBIxbE='], 'description': 'ID of file to run task. File ID from upload file API.'}, 'object_infos': {'type': 'array', 'items': {'type': 'object', 'required': ['name'], 'properties': {'name': {'type': 'string', 'examples': ['https://example.com/vto_sku.jpg'], 'description': 'The reference url or File ID. Indicate which reference product image should be matched.'}, 'mask_name': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'examples': ['https://example.com/vto_sku_mask.jpg'], 'description': 'The reference mask url or File ID. Indicate which reference product image should be matched.'}, 'parameter': {'anyOf': [{'type': 'object', 'properties': {'watch_anchor_point': {'anyOf': [{'type': 'array', 'items': {'type': 'array', 'items': {'type': 'integer'}, 'maxItems': 2, 'minItems': 2}, 'maxItems': 4, 'minItems': 4}, {'type': 'null'}], 'default': None, 'examples': [None], 'description': 'First 2 points mark the strap end when worn. Remaining 2 points mark the upper & lower edges of watch case. <br>Type: 4x2 list of integers <br>Range: 4 (x, y) pixel coordinates <br>Default: null (use engine default)'}, 'watch_shadow_intensity': {'anyOf': [{'type': 'number', 'maximum': 1.0, 'minimum': 0.0}, {'type': 'null'}], 'default': 0.3, 'examples': [0.3], 'description': 'Shadow intensity applied to the watch (higher = darker shadow).'}, 'watch_wearing_location': {'anyOf': [{'type': 'number', 'maximum': 1.0, 'minimum': -0.3}, {'type': 'null'}], 'default': None, 'examples': [None], 'description': 'Defines the placement of the watch on the wrist in the user photo. <br>Range: -0.3 ~ 1.0 (0 = closest to the wrist joint) <br> (smaller number = placed close to the palm <br> larger number = placed further away from the wrist) <br>Default: null (use engine default)'}, 'watch_need_remove_background': {'anyOf': [{'type': 'boolean'}, {'type': 'null'}], 'default': True, 'examples': [True], 'description': 'Whether the watch image needs background removal.'}, 'watch_ambient_light_intensity': {'anyOf': [{'type': 'number', 'maximum': 1.0, 'minimum': 0.0}, {'type': 'null'}], 'default': 1, 'examples': [1], 'description': 'Ambient light adjustment intensity for the watch.'}}}, {'type': 'null'}], 'default': None}}}}, 'ref_file_ids': {'type': 'array', 'items': {'type': 'string'}, 'examples': [['pfNK5PuRe0MrwLHcGA3DOmB1ahwfXTbYHjv+KoBIxbE=']], 'description': 'ID of the reference file file to run task. File ID from upload file API.'}, 'srcmsk_file_id': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'examples': ['pfNK5PuRe0MrwLHcGA3DOmB1ahwfXTbYHjv+KoBIxbE='], 'description': 'ID of the source mask file to run task. File ID from upload file API.'}, 'refmsk_file_ids': {'anyOf': [{'type': 'array', 'items': {'type': 'string'}}, {'type': 'null'}], 'default': None, 'examples': [['pfNK5PuRe0MrwLHcGA3DOmB1ahwfXTbYHjv+KoBIxbE=']], 'description': 'ID of the reference mask file file to run task. File ID from upload file API.'}}}]}}, 'additionalProperties': False}
Schéma de sortie
{'type': 'object', 'required': ['result'], 'properties': {'result': {'anyOf': [{'type': 'object', 'additionalProperties': True}, {'type': 'object', 'required': ['error_message'], 'properties': {'request_id': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'error_message': {'type': 'string', 'description': 'Detailed description of error'}}}]}}, 'x-fastmcp-wrap-result': True}
Schéma d’entrée
{'type': 'object', 'properties': {'task_type': {'anyOf': [{'enum': ['AI-Bracelet-Virtual-Try-On', 'AI-Earrings-Virtual-Try-On', 'AI-Necklace-Virtual-Try-On', 'AI-Ring-Virtual-Try-On', 'AI-Watch-Virtual-Try-On', 'AI-Abs-Filter', 'AI-Aging-Simulation', 'AI-Avatar-Generator', 'AI-Nail-Transfer', 'AI-Smile', 'AI-Studio-Generator', 'AI-Bag-Virtual-Try-On', 'AI-Beard-Style-Generator', 'AI-Photo-Background-Blur', 'AI-Photo-Background-Change', 'AI-Video-Background-Replace', 'AI-Body-Reshape', 'AI-Breast-Augmentation-Simulator', 'AI-Clothes-Virtual-Try-On', 'AI-Photo-Colorize', 'AI-Color-Correction', 'AI-Photo-Enhance', 'AI-Eye-Color-Lens-Virtual-Try-On', 'AI-Fabric-Virtual-Try-On', 'AI-Face-Attributes-and-Ratio-Analyzer', 'AI-Face-Lift', 'AI-Face-Reshape', 'AI-Face-Swap', 'AI-Video-Face-Swap', 'AI-Fitzpatrick-Skin-Type-Analysis', 'AI-Object-Removal-Pro', 'AI-Bangs-Filter-Virtual-Try-On', 'AI-Hair-Color-Virtual-Try-On', 'AI-Wavy-Hair-Virtual-Try-On', 'AI-Hair-Density-Detection', 'AI-Hair-Extension-Virtual-Try-On', 'AI-Hair-Frizziness-Detection', 'AI-Hair-Length-Detection', 'AI-Hair-Style-Virtual-Try-On', 'AI-Hair-Type-Detection', 'AI-Hair-Volume-Virtual-Try-On', 'AI-Hat-Virtual-Try-On', 'AI-Headshot-Generator', 'AI-Image-Generator-Image-to-Image', 'AI-Video-Generator-Image-to-Video', 'AI-Photo-Lighting', 'AI-Look-Virtual-Try-On', 'AI-Makeup-Virtual-Try-On', 'AI-Makeup-Transfer', 'AI-Nail-Virtual-Try-On', 'AI-Video-Object-Removal', 'AI-Replace', 'AI-Image-Extender', 'AI-Scarf-Virtual-Try-On', 'AI-Shoes-Virtual-Try-On', 'AI-Skin-Analysis', 'AI-Skin-simulation', 'AI-Facial-Color-Tones-Analyzer', 'AI-Photo-Background-Removal', 'AI-Teeth-Whitening', 'AI-Image-Generator-Text-to-Image', 'AI-Video-Generator-Text-to-Video', 'AI-Video-Enhancer', 'AI-Video-Style-Transfer'], 'type': 'string'}, {'type': 'null'}], 'default': None, 'description': 'Pre-select a task type. If omitted, the user picks one from the dropdown.'}}, 'additionalProperties': False}
Schéma de sortie
{'type': 'object', 'additionalProperties': True}
Schéma d’entrée
{'type': 'object', 'required': ['request'], 'properties': {'request': {'type': 'object', 'properties': {'page_size': {'anyOf': [{'type': 'integer', 'maximum': 20, 'minimum': 1}, {'type': 'null'}], 'default': None, 'examples': [20]}, 'starting_token': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'examples': ['MjA']}}}}, 'additionalProperties': False}
Schéma de sortie
{'type': 'object', 'required': ['result'], 'properties': {'result': {'anyOf': [{'type': 'object', 'additionalProperties': True}, {'type': 'object', 'required': ['error_message'], 'properties': {'request_id': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'error_message': {'type': 'string', 'description': 'Detailed description of error'}}}]}}, 'x-fastmcp-wrap-result': True}
Schéma d’entrée
{'type': 'object', 'required': ['task_id', 'task_type'], 'properties': {'polling': {'type': 'boolean', 'default': True, 'description': 'If true (default), keep polling until the task finishes, returning the final result. If false, return immediately without waiting for the task to finish.'}, 'task_id': {'type': 'string', 'description': 'ID of this task.'}, 'task_type': {'enum': ['AI-Bracelet-Virtual-Try-On', 'AI-Earrings-Virtual-Try-On', 'AI-Necklace-Virtual-Try-On', 'AI-Ring-Virtual-Try-On', 'AI-Watch-Virtual-Try-On', 'AI-Abs-Filter', 'AI-Aging-Simulation', 'AI-Avatar-Generator', 'AI-Nail-Transfer', 'AI-Smile', 'AI-Studio-Generator', 'AI-Bag-Virtual-Try-On', 'AI-Beard-Style-Generator', 'AI-Photo-Background-Blur', 'AI-Photo-Background-Change', 'AI-Video-Background-Replace', 'AI-Body-Reshape', 'AI-Breast-Augmentation-Simulator', 'AI-Clothes-Virtual-Try-On', 'AI-Photo-Colorize', 'AI-Color-Correction', 'AI-Photo-Enhance', 'AI-Eye-Color-Lens-Virtual-Try-On', 'AI-Fabric-Virtual-Try-On', 'AI-Face-Attributes-and-Ratio-Analyzer', 'AI-Face-Lift', 'AI-Face-Reshape', 'AI-Face-Swap', 'AI-Video-Face-Swap', 'AI-Fitzpatrick-Skin-Type-Analysis', 'AI-Object-Removal-Pro', 'AI-Bangs-Filter-Virtual-Try-On', 'AI-Hair-Color-Virtual-Try-On', 'AI-Wavy-Hair-Virtual-Try-On', 'AI-Hair-Density-Detection', 'AI-Hair-Extension-Virtual-Try-On', 'AI-Hair-Frizziness-Detection', 'AI-Hair-Length-Detection', 'AI-Hair-Style-Virtual-Try-On', 'AI-Hair-Type-Detection', 'AI-Hair-Volume-Virtual-Try-On', 'AI-Hat-Virtual-Try-On', 'AI-Headshot-Generator', 'AI-Image-Generator-Image-to-Image', 'AI-Video-Generator-Image-to-Video', 'AI-Photo-Lighting', 'AI-Look-Virtual-Try-On', 'AI-Makeup-Virtual-Try-On', 'AI-Makeup-Transfer', 'AI-Nail-Virtual-Try-On', 'AI-Video-Object-Removal', 'AI-Replace', 'AI-Image-Extender', 'AI-Scarf-Virtual-Try-On', 'AI-Shoes-Virtual-Try-On', 'AI-Skin-Analysis', 'AI-Skin-simulation', 'AI-Facial-Color-Tones-Analyzer', 'AI-Photo-Background-Removal', 'AI-Teeth-Whitening', 'AI-Image-Generator-Text-to-Image', 'AI-Video-Generator-Text-to-Video', 'AI-Video-Enhancer', 'AI-Video-Style-Transfer'], 'type': 'string', 'description': 'The type of the task.'}, 'is_preprocess': {'type': 'boolean', 'default': False, 'description': 'Whether this is called from preprocess tool.'}}, 'additionalProperties': False}
Schéma de sortie
{'type': 'object', 'required': ['result'], 'properties': {'result': {'anyOf': [{'type': 'object', 'additionalProperties': True}, {'type': 'object', 'required': ['error_message'], 'properties': {'request_id': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'error_message': {'type': 'string', 'description': 'Detailed description of error'}}}]}}, 'x-fastmcp-wrap-result': True}
Schéma d’entrée
{'type': 'object', 'required': ['task_type'], 'properties': {'task_type': {'enum': ['AI-Bracelet-Virtual-Try-On', 'AI-Earrings-Virtual-Try-On', 'AI-Necklace-Virtual-Try-On', 'AI-Ring-Virtual-Try-On', 'AI-Watch-Virtual-Try-On', 'AI-Abs-Filter', 'AI-Aging-Simulation', 'AI-Avatar-Generator', 'AI-Nail-Transfer', 'AI-Smile', 'AI-Studio-Generator', 'AI-Bag-Virtual-Try-On', 'AI-Beard-Style-Generator', 'AI-Photo-Background-Blur', 'AI-Photo-Background-Change', 'AI-Video-Background-Replace', 'AI-Body-Reshape', 'AI-Breast-Augmentation-Simulator', 'AI-Clothes-Virtual-Try-On', 'AI-Photo-Colorize', 'AI-Color-Correction', 'AI-Photo-Enhance', 'AI-Eye-Color-Lens-Virtual-Try-On', 'AI-Fabric-Virtual-Try-On', 'AI-Face-Attributes-and-Ratio-Analyzer', 'AI-Face-Lift', 'AI-Face-Reshape', 'AI-Face-Swap', 'AI-Video-Face-Swap', 'AI-Fitzpatrick-Skin-Type-Analysis', 'AI-Object-Removal-Pro', 'AI-Bangs-Filter-Virtual-Try-On', 'AI-Hair-Color-Virtual-Try-On', 'AI-Wavy-Hair-Virtual-Try-On', 'AI-Hair-Density-Detection', 'AI-Hair-Extension-Virtual-Try-On', 'AI-Hair-Frizziness-Detection', 'AI-Hair-Length-Detection', 'AI-Hair-Style-Virtual-Try-On', 'AI-Hair-Type-Detection', 'AI-Hair-Volume-Virtual-Try-On', 'AI-Hat-Virtual-Try-On', 'AI-Headshot-Generator', 'AI-Image-Generator-Image-to-Image', 'AI-Video-Generator-Image-to-Video', 'AI-Photo-Lighting', 'AI-Look-Virtual-Try-On', 'AI-Makeup-Virtual-Try-On', 'AI-Makeup-Transfer', 'AI-Nail-Virtual-Try-On', 'AI-Video-Object-Removal', 'AI-Replace', 'AI-Image-Extender', 'AI-Scarf-Virtual-Try-On', 'AI-Shoes-Virtual-Try-On', 'AI-Skin-Analysis', 'AI-Skin-simulation', 'AI-Facial-Color-Tones-Analyzer', 'AI-Photo-Background-Removal', 'AI-Teeth-Whitening', 'AI-Image-Generator-Text-to-Image', 'AI-Video-Generator-Text-to-Video', 'AI-Video-Enhancer', 'AI-Video-Style-Transfer'], 'type': 'string', 'description': 'The type of the AI task to upload file for.'}}, 'additionalProperties': False}
Schéma de sortie
{'type': 'object', 'required': ['result'], 'properties': {'result': {'anyOf': [{'type': 'object', 'additionalProperties': True}, {'type': 'object', 'required': ['error_message'], 'properties': {'request_id': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'error_message': {'type': 'string', 'description': 'Detailed description of error'}}}]}}, 'x-fastmcp-wrap-result': True}
Schéma d’entrée
{'type': 'object', 'required': ['files', 'task_type'], 'properties': {'files': {'type': 'array', 'items': {'type': 'object', 'additionalProperties': True}}, 'task_type': {'type': 'string'}}, 'additionalProperties': False}
Schéma de sortie
{'type': 'object', 'required': ['result'], 'properties': {'result': {'type': 'array', 'items': {'type': 'object', 'additionalProperties': True}}}, 'x-fastmcp-wrap-result': True}
Modifications récentes des outils
Serveurs MCP similaires
roastify-mcp
Supports a coffee commerce workflow with product and blend catalogs, inventory, coupons, packaging design editing, artwork genera…
YouCam for Beauty & Personal Care
Offers image-based beauty and personal-care analysis and virtual try-on tools for makeup, hair, facial features, body reshaping, …
agentee
Searches and purchases all-over print apparel, manages carts, promotions, shipping, checkout, orders, and user-submitted designs.
mu
Supports AI-assisted print-on-demand product design, storefronts, manufacturing quotes, orders, fulfillment, shipping, sales, and…
studiomcphub
Provides image enhancement, background removal, vectorization, color and print preparation, artwork search and analysis, product …
Capucine
Provides sourced personal styling guidance, weather-aware outfit recommendations, apparel shopping criteria, and links to verifie…
R3PLICA AI Connector
Searches and presents premium design-brand products, collections, finishes, specifications, comparisons, images, and catalog link…
uxgen
Audits and assembles ecommerce pages, generates product imagery and packshots, supports Shopify sections, and provides SEO and co…