Przejdź do treści

Tools Reference

Every tool the Qamera AI MCP server offers your AI assistant, grouped by task, with the parameters each one accepts and what it returns.

Your AI assistant sees these tools once you connect it to Qamera AI with an API key. They are grouped below by the task you are doing rather than by how the server is built.

You do not call these tools yourself. You describe what you want, and the assistant picks the tool and fills in the parameters. The reference is here so you can check what is possible, and so you can be specific when it matters — naming a preset, a count, or an aspect ratio.

Before you start

Two scopes. Most tools need the content.register scope on your API key. The two order tools at the end of this page need content.read. If you create a key with only one of them, most of the assistant's work will succeed and status checks will fail — see Setup for how to select both.

Lists come back newest first, and they are capped. The six content lists — products, models, sceneries, photo-shoot images, packshots and videos — accept limit (1–500, 50 by default). Two do not follow that rule: list_recent_generations takes limit 1–50 with a default of 20, and get_presets takes maxRecords rather than limit, defaulting to 20. Each entry below states its own bounds.

If the server had to shorten a list, the answer includes a truncated block saying how many rows arrived and how to narrow the search. No truncated block means nothing was cut on the way to your assistant.

Lists do not contain images. They return identifiers, names and statuses. To let the assistant actually look at a picture, it uses one of the two preview tools, which return the image itself.

Generating content spends credits. Everything named register_… places an order. Reading lists, previewing images and voting are free.

Products

A product is one or more photographs of a single item, uploaded to your workspace. Everything else — packshots, photo shoots, videos — is generated from a product.

register_product

Uploads images and registers them as one product. This is the first step of any generation chain: without a product there is nothing to generate from.

Parameters:

  • images (array, required) — 1 to 10 image URLs (http or https). All of them become one product, not one product each.
  • name (string, optional) — the product name, for example "Linen shirt, ecru".
  • productType (string, optional) — the category, for example "swimwear".

Returns: the registered product with the identifier used by every later step.

Two things worth knowing. The product is not ready to generate from the moment this returns — the platform first analyses the images, and the status moves UPLOADED → DESCRIBING → DESCRIBED. Your assistant can check with get_products. And running this twice on the same image creates two products, because each upload is treated as new material.

get_products

Lists the products in your workspace, newest first.

Parameters:

  • limit (integer, optional) — 1–500, 50 by default.

Returns: identifier, name, status and creation date for each product.

update_product

Corrects a product's name or category. It generates nothing and spends no credits.

Parameters:

  • productId (string, required) — the product identifier.
  • name (string, optional) — the corrected name.
  • productType (string, optional) — the corrected category.

Models

Models are the AI-generated figures that can wear or hold your product.

get_models

Lists the models available in your workspace.

Parameters:

  • statusFilter (string, optional) — all (default) or approved.
  • limit (integer, optional) — 1–500, 50 by default.

register_models

Generates new models from a description. Spends credits.

Parameters:

  • preferences (string, required) — what the models should look like, for example "woman, 25–30, natural make-up, relaxed posture".
  • count (integer, optional) — 1 to 10, 10 by default.

Sceneries

Sceneries are the AI-generated backgrounds your product is placed against.

get_sceneries

Lists the sceneries available in your workspace.

Parameters:

  • statusFilter (string, optional) — all (default) or approved.
  • limit (integer, optional) — 1–500, 50 by default.

register_sceneries

Generates new sceneries from a description. Spends credits.

Parameters:

  • preferences (string, required) — the background you want, for example "sunlit concrete terrace, late afternoon".
  • count (integer, optional) — 1 to 10, 10 by default.

Photo shoots

A photo shoot places your product in a scenery, optionally with a model, and produces a set of images for you to review.

register_photo_shoot

Orders a photo shoot. Spends credits.

Parameters:

  • productId (string, required) — the product to photograph.
  • aspectRatio (string, required) — one of match_input, 9:16, 16:9, 1:1, 4:3, 3:4, 2:3, 3:2, 4:5, 5:4, 21:9.
  • modelId (string, optional) — the model to use.
  • sceneryId (string, optional) — the background to use.
  • presetId (string, optional) — the style preset to follow.
  • industry (string, optional) — the product's industry, for example "fashion".
  • suggestions (string, optional) — free-text direction, for example "soft daylight, shot from slightly above".
  • count (integer, optional) — 1 to 20 images.

Returns: the order identifier. Generation runs in the background; use check_generation_status to follow it.

get_images

Lists the images produced by photo shoots.

Parameters:

  • statusFilter (string, optional) — all (default) or approved.
  • productId (string, optional) — only images of one product.
  • orderId (string, optional) — only the images one order produced.
  • limit (integer, optional) — 1–500, 50 by default.

get_image_preview

Returns one image so the assistant can actually see it and comment on it.

Parameters:

  • recordId (string, required) — the image identifier.
  • tier (string, optional) — medium (about 1024 px, default) or full (the original).

update_image

Records your verdict on one photo-shoot image.

Parameters:

  • recordId (string, required) — the image identifier.
  • voting (string, required) — accepted, rejected, or pending to withdraw an earlier verdict.

Note the wording. Photo-shoot images use accepted / rejected; packshots use APPROVED / REJECTED. The two are separate vocabularies and are not interchangeable.

Packshots

A packshot is a clean product shot, typically on a plain background, for a shop listing.

register_packshots

Orders packshot generation. Spends credits.

Parameters:

  • productId (string, required) — the product to shoot.
  • presetId (string, optional) — the style preset to follow.
  • sceneryId (string, optional) — the background to use.
  • modelId (string, optional) — the model to use.
  • count (number, optional) — 10 by default, 50 at most.

Returns: the order identifier.

get_packshots

Lists generated packshots.

Parameters:

  • statusFilter (string, optional) — all (default) or approved.
  • orderId (string, optional) — only the packshots one order produced.
  • limit (integer, optional) — 1–500, 50 by default.

get_packshot_preview

Returns one packshot as an image, so the assistant can judge it before you approve it.

Parameters:

  • recordId (string, required) — the packshot identifier.

update_packshot

Records your verdict on one packshot, or archives it.

Parameters:

  • recordId (string, required) — the packshot identifier.
  • voting (string, optional) — APPROVED or REJECTED.
  • status (string, optional) — ARCHIVE to archive the packshot.

Videos

register_video

Generates a short video from one image you already have. Spends credits.

Parameters:

  • generatedImageId (string, optional) — an image from a photo shoot.
  • imageId (string, optional) — an image from your image library.
  • suggestion (string, optional) — direction for the AI, for example "slow push in, product stays centred".
  • provider (string, optional) — the video provider; leave unset unless you have a reason.

One of generatedImageId or imageId is required.

get_videos

Lists generated videos, with the address of each finished file.

Parameters:

  • limit (integer, optional) — 1–500, 50 by default.

Presets

A preset is a saved style: the guidance the generator follows about quality and quantity. The catalogue is shared, so presets prepared by Qamera AI are available to every workspace alongside the ones you create.

get_presets

Lists presets with the fields you need to choose one — identifier, name, whether a scenery is required, category and tags. The long guideline texts are deliberately left out, because the full catalogue does not fit in a single answer.

Parameters:

  • maxRecords (number, optional) — 20 by default.

The scenery field matters. required means the preset will not produce sensible results without a scenery. recommended means it falls back to a default. null means nobody has reviewed the preset yet — treat that as unknown rather than as "no scenery needed".

get_preset

Returns one preset in full, including the guideline texts get_presets leaves out.

Parameters:

  • presetId (string, required) — the preset identifier, copied unchanged from get_presets.

create_preset

Creates a preset owned by your workspace.

Parameters:

  • name (string, required)
  • quantityGuidelines (string, required) — how much to produce and in what variety.
  • qualityGuidelines (string, required) — what a good result looks like.

update_preset

Updates a preset your workspace owns. Shared presets cannot be edited.

Parameters:

  • presetId (string, required)
  • name (string, optional)
  • quantityGuidelines (string, optional)
  • qualityGuidelines (string, optional)
  • existingGalleryIds (array, optional) — gallery attachments to keep.
  • removeCover (boolean, optional) — set to true to remove the cover image.

Orders and status

Every register_… tool returns an order identifier. These two tools follow what happened to it. Both need the content.read scope on your API key.

check_generation_status

Reports one order in detail.

Parameters:

  • orderId (string, required) — the identifier a register_… tool returned.

Returns: the order's overall state — pending, in_progress, completed, failed or cancelled — a per-job breakdown with the model used and any error, the addresses of finished files, and timestamps.

list_recent_generations

Lists recent orders, newest first. Useful when an order identifier has been lost.

Parameters:

  • status (string, optional) — pending, in_progress, completed, failed or cancelled.
  • limit (integer, optional) — 1–50, 20 by default.
  • since (string, optional) — an ISO 8601 timestamp; only orders created after it.

Returns: a summary per order. For the details of one order, and for file addresses, use check_generation_status.