lr-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| LR_MCP_HOME | No | Directory to store state (e.g., .env and tokens). Defaults to ~/.config/lr-mcp or $XDG_CONFIG_HOME/lr-mcp if set. | |
| LR_MCP_PORT | No | Sign-in callback port. | 8000 |
| ADOBE_CLIENT_ID | Yes | Client ID (also called API key) for the Adobe Lightroom API. | |
| ADOBE_CLIENT_SECRET | Yes | Client secret for the Adobe Lightroom API. |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| lr_loginA | Sign in to Adobe in the browser and store tokens. Only needed when another tool reports that the user is not signed in or the token refresh failed. Waits up to 5 minutes for the user to finish signing in. |
| lr_accountA | Account info: subscription status and cloud storage usage. |
| lr_list_albumsB | List albums as 'Folder / Album' paths with their ids. query: case-insensitive substring of the path, e.g. 'kyoto' or '2024'. Folders are tagged [folder]; project albums created by this server are tagged [project]. |
| lr_list_photosA | List photos matching filters, oldest capture first. album_id: search inside one album; omit to search the whole catalog (then narrow it with captured_after). captured_after / captured_before: 'YYYY-MM-DD' or 'YYYY-MM-DDTHH:MM:SS'. min_rating: minimum star rating (1-5). flag: 'pick' or 'reject'. camera / lens / filename: case-insensitive substrings. min_iso: minimum ISO. Each line: id | file | captured | rating | flag | exposure | camera + lens |
| lr_get_photoB | Details for one photo: capture info, rating/flag, original file, and a summary of its edits. |
| lr_view_photosA | Fetch photos as images to look at them (JPEG with edits applied). Up to 12 per call. size: 'thumbnail2x' (small, for scanning many) | '640' | '1280' | '2048'. |
| lr_download_photosA | Save photos as JPEG files. Pass either asset_ids or album_id (the whole album). size: '640' | '1280' | '2048' | '2560' | 'fullsize' (original resolution with edits; slower). dest_dir defaults to ~/Downloads/lightroom/. Files are named after the original file name with a .jpg extension. |
| lr_create_project_albumB | Create a project album owned by this server (shown under Connections in Lightroom). Adds asset_ids right away if given. |
| lr_add_to_project_albumB | Add photos to a project album. Albums the user created cannot be modified. |
| lr_delete_project_albumA | Delete a project album created by this server. Only the album is removed; photos stay in the catalog. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 10 tools
Most tools have clearly distinct purposes: listing (lr_list_photos/lr_list_albums), inspecting (lr_get_photo), viewing (lr_view_photos), downloading (lr_download_photos), and album mutation tools. However the photo-retrieval trio (get_photo vs view_photos vs download_photos) shares overlapping territory, distinguished mainly by descriptions rather than names.
Nearly all tools follow a consistent lr_ + verb_noun pattern (list_photos, get_photo, download_photos, create_project_album). The exceptions lr_login and lr_account (noun-only, no verb) are minor deviations that remain readable and predictable.
Ten tools is well-scoped for a Lightroom client covering auth, account, photo browsing/export, and project-album lifecycle. Each tool clearly earns its place with no redundancy.
Read workflows (list/get/view/download), auth, account, and the full project-album lifecycle (create/add/delete) are covered. Notable gaps: lr_get_photo surfaces rating/flag but there is no tool to update photo rating/flag, and no tool to remove photos from an album.