Remove a background
remove_backgroundCut the background out of a finished image, leaving a transparent PNG of the subject. The source is a creative of the brand (creativeId) or an image on the web (imageUrl: a direct, public URL to a JPEG, PNG or WebP file). An image the user pasted or attached in the chat has no such URL and you cannot read it yourself: call request_image_upload right away (do not ask them to re-attach it), and once the image has landed use its creativeId here. An image you hold as a file on your own filesystem (a coding agent in a project) goes through upload_image_file instead. A linked image is added to the brand's library first and its creativeId is returned as sourceCreativeId; an image the library already holds is not added again, and sourceCreativeId is that creative, with alreadyInLibrary: true. Reuse sourceCreativeId for any further work on the same image instead of passing imageUrl again. Cost: 30 credits. Call with dryRun: true first and tell the user the cost. Once they agree, pass the quoted credits as expectedCredits; a call that would cost a different amount is refused. Give each new generation a new requestId, and repeat it unchanged only on a retry: a retry within 2 minutes returns the first result and is not charged again. Without a requestId, the same arguments within 2 minutes count as a retry. Needs generation allowed over MCP (see get_workspace); a dry run still quotes when it is not, and says why the call would be refused in wouldRefuse. Returns a jobId, creditsCharged and creditsRemaining; ready in 1 to 5 minutes. If a job panel shows, it tracks the work: do not poll, end your turn with one line saying it is under way, and later use show_creatives with the creativeIds you are told. Otherwise call wait_for_jobs with the jobIds until allFinal is true.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| dryRun | No | true: return the exact cost (credits, breakdown, balanceAfter) without charging or starting anything, and wouldRefuse when the organization's spending controls would refuse the real call. | |
| brandId | No | A brand id from get_workspace or list_brands, or the brand's name. Omit it when the organization has a single brand. | |
| imageUrl | No | A direct, publicly reachable https URL of the image to work on, when it is not in the library yet. | |
| requestId | No | Your own unique id for this request. Use a new one for every new request, even with the same arguments. Repeat it unchanged only to retry this exact call within 2 minutes; the retry returns the first result. | |
| creativeId | No | A creative id from list_creatives, search_library, get_job or get_upload. | |
| expectedCredits | No | The credits the dryRun quoted and the user agreed to. The call is refused if it would cost a different amount. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||