Draft a listing from a product photo
describe_product_photoUse this when the user has a photo of an item they want to sell or list (eBay, Shopify, Etsy, a marketplace post) and wants a listing draft from it. Pass the photo as file, image_url (a public https link) or image_base64. Returns the product type, the brand and model only when printed on the item (a brand guessed from the design comes apart as likely_brand, marked as a guess), colour, material, visible wear, items shown with it, a title under 80 characters, bullet points, and what to ask the seller. One JPEG, PNG, WebP or HEIC image up to 8 MB. It never invents a model number, a size or a condition grade. The photo goes once to a free Google Gemini model and nothing is kept. Not for photos of people, or for checking whether an item is genuine.
Tool call template
This tool declares no required parameters. Add optional parameters from the input schema as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {},
"name": "describe_product_photo"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| file | No | The product photo the user attached in the chat. | |
| image_url | No | A public https link to one JPEG, PNG, WebP or HEIC photo, up to 8 MB, of the item alone: a photo with a person in it, such as clothing being worn, is refused, so ask for the item laid flat. Send exactly one of file, image_url and image_base64. Example call: {"image_url": "https://upload.wikimedia.org/wikipedia/commons/e/e6/Leica_M6_TTL_front.jpg"} | |
| image_base64 | No | The photo bytes as base64 (a data: URL is accepted), up to 8 MB. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| brand | Yes | Only when printed or clearly legible on the item. | |
| model | Yes | Only when printed or clearly legible on the item. | |
| title | Yes | ||
| colour | Yes | ||
| notice | Yes | ||
| status | Yes | ||
| bullets | Yes | ||
| message | Yes | ||
| material | Yes | ||
| ask_seller | Yes | What the photo cannot show, to ask the seller: serial number, whether it works, size, age. | |
| likely_brand | Yes | A brand (and model line) guessed from the design because none is printed: a guess for the seller to confirm, never a fact for the listing. | |
| printed_text | Yes | The text the model read on the item; brand and model are checked against it. | |
| product_type | Yes | ||
| visible_wear | Yes | ||
| included_items | Yes |