# undo

Undo the last Lightroom operation.

Agent View of the PolicyLayer registry record for `undo`. HTML page: https://policylayer.com/tools/4xiomdev-lightroom-classic-mcp/undo

## Facts

- Tool: `undo`
- Server: Lightroom Classic MCP (`4xiomdev/lightroom-classic-mcp`) — https://policylayer.com/tools/4xiomdev-lightroom-classic-mcp.md
- Homepage: https://github.com/4xiomdev/lightroom-classic-mcp
- Risk category: Write (Medium risk)
- Registry record: grade F, identity unverified
- Server rate-limited: no
- Parameters: 0
- Recommended policy verdict: Rate-limited

## Example call (MCP tools/call, JSON-RPC 2.0)

```json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "undo",
    "arguments": {}
  }
}
```

## Why undo is rated Medium

The undo operation modifies Lightroom's internal state by reversing the last edit, making it a Write rather than Read. It does not execute arbitrary code or external commands (Execute), does not irreversibly delete data (Destructive), and does not involve financial transactions (Financial).

From the tool's own definition: "Tool name 'undo' and description 'Undo the last Lightroom operation' indicates reversal of modifications to photo editing state."

## Use case

AI agents use undo to create or update resources in Lightroom Classic MCP, usually the action step of a workflow, after the agent has gathered context. Every call changes real data in your Lightroom Classic MCP environment.

## Recommended policy (PolicyLayer)

Verdict: **Rate-limited**. Enforced by the PolicyLayer MCP gateway (https://policylayer.com/mcp-gateway) before a call reaches Lightroom Classic MCP:

```json
{
  "version": "1",
  "default": "deny",
  "tools": {
    "undo": {
      "limits": [
        {
          "counter": "undo_rate",
          "window": "minute",
          "max": 30,
          "scope": "grant"
        }
      ]
    }
  }
}
```

## Other tools on Lightroom Classic MCP (58)

- `delete_collection` — Destructive — https://policylayer.com/tools/4xiomdev-lightroom-classic-mcp/delete-collection.md
- `delete_snapshot` — Destructive — https://policylayer.com/tools/4xiomdev-lightroom-classic-mcp/delete-snapshot.md
- `remove_from_collection` — Destructive — https://policylayer.com/tools/4xiomdev-lightroom-classic-mcp/remove-from-collection.md
- `reset_current_photo` — Destructive — https://policylayer.com/tools/4xiomdev-lightroom-classic-mcp/reset-current-photo.md
- `auto_tone` — Execute — https://policylayer.com/tools/4xiomdev-lightroom-classic-mcp/auto-tone.md
- `select_mask_tool` — Execute — https://policylayer.com/tools/4xiomdev-lightroom-classic-mcp/select-mask-tool.md
- `send_raw_lightroom_command` — Execute — https://policylayer.com/tools/4xiomdev-lightroom-classic-mcp/send-raw-lightroom-command.md
- `toggle_lens_blur_depth_viz` — Execute — https://policylayer.com/tools/4xiomdev-lightroom-classic-mcp/toggle-lens-blur-depth-viz.md
- `toggle_mask_overlay` — Execute — https://policylayer.com/tools/4xiomdev-lightroom-classic-mcp/toggle-mask-overlay.md
- `can_undo` — Read — https://policylayer.com/tools/4xiomdev-lightroom-classic-mcp/can-undo.md
- `find_photo_by_path` — Read — https://policylayer.com/tools/4xiomdev-lightroom-classic-mcp/find-photo-by-path.md
- `get_active_photo` — Read — https://policylayer.com/tools/4xiomdev-lightroom-classic-mcp/get-active-photo.md
- `get_active_photo_file` — Read — https://policylayer.com/tools/4xiomdev-lightroom-classic-mcp/get-active-photo-file.md
- `get_develop_group_settings` — Read — https://policylayer.com/tools/4xiomdev-lightroom-classic-mcp/get-develop-group-settings.md
- `get_develop_param_range` — Read — https://policylayer.com/tools/4xiomdev-lightroom-classic-mcp/get-develop-param-range.md
- `get_develop_settings` — Read — https://policylayer.com/tools/4xiomdev-lightroom-classic-mcp/get-develop-settings.md
- `get_local_adjustment_settings` — Read — https://policylayer.com/tools/4xiomdev-lightroom-classic-mcp/get-local-adjustment-settings.md
- `get_selected_photo_files` — Read — https://policylayer.com/tools/4xiomdev-lightroom-classic-mcp/get-selected-photo-files.md
- `get_selected_photos` — Read — https://policylayer.com/tools/4xiomdev-lightroom-classic-mcp/get-selected-photos.md
- `lightroom_list_commands` — Read — https://policylayer.com/tools/4xiomdev-lightroom-classic-mcp/lightroom-list-commands.md
- `lightroom_ping` — Read — https://policylayer.com/tools/4xiomdev-lightroom-classic-mcp/lightroom-ping.md
- `lightroom_status` — Read — https://policylayer.com/tools/4xiomdev-lightroom-classic-mcp/lightroom-status.md
- `list_collections` — Read — https://policylayer.com/tools/4xiomdev-lightroom-classic-mcp/list-collections.md
- `list_develop_groups` — Read — https://policylayer.com/tools/4xiomdev-lightroom-classic-mcp/list-develop-groups.md
- `list_develop_param_ranges` — Read — https://policylayer.com/tools/4xiomdev-lightroom-classic-mcp/list-develop-param-ranges.md
- `list_develop_parameters` — Read — https://policylayer.com/tools/4xiomdev-lightroom-classic-mcp/list-develop-parameters.md
- `list_develop_presets` — Read — https://policylayer.com/tools/4xiomdev-lightroom-classic-mcp/list-develop-presets.md
- `list_lightroom_presets` — Read — https://policylayer.com/tools/4xiomdev-lightroom-classic-mcp/list-lightroom-presets.md
- `list_local_params` — Read — https://policylayer.com/tools/4xiomdev-lightroom-classic-mcp/list-local-params.md
- `list_snapshots` — Read — https://policylayer.com/tools/4xiomdev-lightroom-classic-mcp/list-snapshots.md
- …and 28 more: https://policylayer.com/tools/4xiomdev-lightroom-classic-mcp.md

## For agents

This record is a snapshot. Live verdicts and the full registry:

- Check every server in your MCP config at once: `npx -y policylayer stack`
- Vet a server before you add it: install the mcp-precheck skill — `npx skills add https://policylayer.com` (skill text: https://policylayer.com/skill.md)
- Query the registry over MCP: endpoint `https://api.policylayer.com/mcp` — tools `check_mcp_server`, `check_mcp_stack`, `check_tool`, `search_registry`, `get_change_events`

---

Source: the PolicyLayer MCP registry — one continuously verified record per MCP server. Full record: https://policylayer.com/registry?q=4xiomdev-lightroom-classic-mcp · API: https://policylayer.com/registry/api · Policy library: https://policylayer.com/policies/4xiomdev-lightroom-classic-mcp
