editing

export_photos

Render and export photos with all their edits to a folder.

What it does

By default exports every keep photo (including previously exported ones, re-rendered). Pass photo_ids to export a specific set instead, or status to export a different group. dest_dir is created if needed; inside it, files are grouped into a subfolder named after the source shoot folder, and the result lists the exact file paths written. Rendering is CPU-bound and can take seconds per RAW file; the result reports exported and failed counts with per-photo errors. Set lightroom=True when the user wants to carry on in Adobe Lightroom: each proprietary RAW (ARW, CR3, NEF and similar) also gets a Camera Raw .xmp sidecar, and the RAW plus its sidecar are copied next to the export, so importing that folder into Lightroom opens the RAW with the same slider values. The result lists the sidecars in lightroom_sidecars. DNG, TIFF and JPEG files get no sidecar. Experimental effects, mask layers, LUTs, heal and clone, lens/perspective corrections and the expert RAW engine settings have no Lightroom equivalent: they stay in imagic's own render, and lightroom_not_carried names them per photo. Tell the user when it is not empty, so they don't expect Lightroom's version to match, and name only what it lists. Everything else carries over: white balance, exposure and the tone sliders, texture, clarity, dehaze, vibrance and saturation, HSL, colour grades and split toning, the tone curve, sharpening, noise reduction, vignette, grain, crop and straighten. If the user plans to finish in Lightroom, prefer those. On a remote connection dest_dir is restricted: a bare or relative name (e.g. "delivery") always resolves under the user's configured export folder, and an absolute path must be inside that folder or one listed in their imagic config's mcp.remote_allowed_folders, anything else comes back as an error explaining where exports go and how to allow another folder. It is also dispatched as a background job past the call budget, like scan_directory, poll get_job_status with the returned job_id. Local clients are unrestricted and always get the result directly.

Parameters

NameTypeRequired
dest_dir str required
photo_ids list[int] | None optional
status str optional
lightroom bool optional

Asking for it

You do not call this by name. You say what you want, and the agent picks the tool:

Apply the warm film look to every keeper in this folder and export JPEGs at quality 92.

The rest of the editing tools

list_presets apply_preset list_luts apply_lut apply_auto_color harmonize_series preview_mosaic apply_adjustments mask_adjust crop_photo save_preset get_photo_edits

Workflows that use it

Where it runs

On your machine. imagic's MCP server is a local process that your AI client starts; the photos never leave your disk and nothing is uploaded. That is true of every tool in the reference, including this one.

To call it you need an MCP client connected to imagic. Setup takes about three minutes for Claude Code, Cursor, VS Code, Codex, Gemini CLI and ten others.

Give your AI the whole pipeline

export_photos is one of 30 tools in imagic Max. The free 500-export trial includes all of them.