create_snapshot
Save current photo editing adjustments as a named snapshot in Lightroom Classic to preserve specific development stages for comparison or reversion.
Instructions
Create a named develop snapshot for the active photo.
Tool call template
Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {
"name": "<name>"
},
"name": "create_snapshot"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| local_ids | No |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Implementation Reference
- The create_snapshot tool handler, decorated with @mcp.tool(), which takes a name and optional local_ids to create a develop snapshot in Lightroom via the _call helper.
@mcp.tool() async def create_snapshot( name: str, local_ids: list[int] | None = None, ) -> dict[str, Any]: """Create a named develop snapshot for the active photo.""" if not name: raise ValueError("name is required") ids = validate_local_ids(local_ids) payload: dict[str, Any] = {"name": name} if ids: payload["local_ids"] = ids return await _call("develop.create_snapshot", payload)