# LightCraft: A Non-Destructive Rust Photo Editor with MCP Control

> LightCraft is an open-source photo library and RAW development application built in Rust for macOS, Windows, Linux, and WebAssembly. Its documented editing model combines non-destructive adjustments, a 32-bit float pipeline, local tone mapping, color grading, masks, and an MCP control channel.

**storytold/lightcraft** — LightCraft: An open-source non-destructive photo editor written by scratch in pure Rust

- Repository: https://github.com/storytold/lightcraft
- Website: https://getartcraft.com/apps/lightcraft
- Stars: 14,434 · Forks: 5,547
- Language: Rust
- License: Apache-2.0
- Published: 2026-10-16 · Updated: 2026-10-16 · Language: en
- Canonical page: https://hysenlabs.com/projects/storytold-lightcraft

## LightCraft's Non-Destructive Photo Editing Scope

LightCraft addresses two related needs: organizing photographs and developing RAW or other image files without modifying the originals. The README calls it a "photo library and raw development" application and describes it as a clean-room reimplementation of Adobe Lightroom. That positioning explains the breadth of the interface. It combines image catalog management with the controls expected during photographic development, rather than limiting the project to a narrow command-line conversion tool.

The intended audience includes photographers who want to adjust exposure, color, tone, and detail while preserving the source file. It may also appeal to engineers interested in a Rust-native image application or in exposing application operations to AI agents. The repository includes crates for RAW decoding, color, raster operations, catalogs, previews, pipelines, GPU work, user interface components, and MCP. Based on that layout, LightCraft is organized as a full application workspace rather than a single editing library.

The project is not restricted to one operating system. The README states support for native applications on macOS, Windows, and Linux, plus a browser version through WebAssembly. It also says that the application can be driven end to end by AI agents over MCP. Those deployment choices make the editor relevant to users who want local processing, cross-platform access, or a programmatic editing surface, although the README does not detail deployment configuration or production hardening for every platform.

## Rust Crates Behind LightCraft's Image Pipeline

The repository structure makes the processing model concrete. `lightcraft-raw` handles RAW-related work, while `lightcraft-codecs`, `lightcraft-tiff`, and `lightcraft-heif` cover image encoding and container concerns. Color operations have a dedicated `lightcraft-color` crate, and `lightcraft-raster` provides raster primitives. Higher-level crates include `lightcraft-develop`, `lightcraft-pipeline`, `lightcraft-engine`, and `lightcraft-preview`, indicating a separation between development logic, rendering pipeline, application engine, and preview generation.

The README states that every adjustment is non-destructive. It also says that sliders render through a scene-referred, wide-gamut, 32-bit float pipeline. The documented tone controls include exposure, contrast, highlights, shadows, whites, and blacks. Highlights use edge-aware local tone mapping based on a guided filter over log-luminance, which the project describes as a way to recover bright regions without the gray halos associated with a naive curve.

Color work is computed in OkLCh. The application offers temperature and tint white balance, an eyedropper, vibrance, saturation, an eight-band Color Mixer, and three-way Color Grading wheels. The Tone Curve includes parametric regions and point curves for RGB and individual color channels. The README says the curves are monotone by construction, which limits accidental tone inversion. These are specific rendering and interface choices, not merely a promise that the application can change an image.

## LightCraft's Library, Masks, Presets, and Agent Interface

LightCraft's scope extends beyond a develop view. The README documents a photo library, presets and profiles, masks, before-and-after comparison, and comparison modes. The original image can be previewed with the backslash key. Side-by-side comparison uses `Y`, while split view uses `Shift` plus `Y`. These shortcuts provide a direct way to inspect whether an adjustment affects the intended image regions.

The documented masking controls include edge-aware local adjustments. The examples describe selective changes to a sky and shadows, which suggests that masks are intended to participate in local processing rather than only annotate the image. Effects include Texture, Clarity, Dehaze, post-crop Vignette, and film Grain. Dehaze is documented as a dark-channel prior with guided refinement. Grain includes size and roughness controls and is described as resolution independent.

The agent-facing side is the MCP server represented by `lightcraft-mcp`. The README says that an agent captured screenshots through a control channel, and that LightCraft is drivable end to end by AI agents over MCP. The README does not publish an MCP transport, authentication method, command schema, or setup command. Therefore, the existence of an MCP-oriented integration is documented, but an engineer cannot infer production automation details from the README alone.

## Platform Support and First LightCraft Use

The README directs users to the LightCraft page on the project website for downloads and to the ArtCraft downloads area for the broader application family. It does not include a verified install command, package-manager name, release binary name, or first-run configuration example. The repository does contain a Cargo workspace and an `xtask` member, but those facts alone do not establish a supported user installation procedure.

A first practical use therefore starts with obtaining the appropriate platform build from the documented download location, then opening a supported photograph in the library and placing it in the develop view. The documented comparison controls can be used before editing: press `Y` for side-by-side comparison or `Shift` plus `Y` for split view. The backslash key previews the original.

After selecting an image, a cautious workflow is to adjust one group of controls at a time, check the comparison view, and export only after confirming that the intended crop, color, and detail changes are visible. The README does not document keyboard shortcuts for saving, importing, or exporting, so it does not support inventing a command sequence for those actions. It also does not document rollback behavior, catalog migration, or a formal undo guarantee.

## Project Maturity, Licensing, and Upgrade Considerations

The repository is not archived. Its last push was on 2026-10-15, and recent releases include `v0.8.0` on 2026-10-14, `v0.7.1` on 2026-10-12, and `v0.6.0` on 2026-10-11. The README badge describes the project as "young and moving fast," which is a useful warning when judging the cost of adopting it. Frequent releases can mean frequent change, including changes to the workspace, UI, or MCP behavior. The README does not provide a migration guide or compatibility policy for existing catalogs and edit metadata.

The workspace metadata identifies the license as `MIT OR Apache-2.0`, while the repository includes `LICENSE-MIT` and `LICENSE-APACHE`. This dual-license declaration gives downstream users a choice of those license terms, subject to the actual license files and applicable obligations. This article does not interpret the legal effect of the licenses or provide legal advice. Contributors and distributors should read the included license texts and `NOTICE` file directly.

The project is primarily Rust, uses Cargo workspace resolver `3`, and declares Rust `1.90` as its minimum version in `Cargo.toml`. The workspace also depends on a pinned Git revision of `craft-ui`. That revision is part of the source dependency graph and may affect rebuilds or offline availability. The documented architecture is attractive for engineers, but upgrade planning should account for a young release line and the cost of rebuilding or replacing an existing photo workflow.

## LightCraft Compared with a Conventional Lightroom Workflow

LightCraft's clearest difference from a conventional Lightroom-oriented workflow is its implementation and control surface. Lightroom is presented in the README as the reference product, while LightCraft is a pure Rust, open-source reimplementation with native desktop targets, WebAssembly support, and MCP integration. That does not prove feature parity with Adobe Lightroom. The README documents a broad editing set, but it does not claim compatibility with Lightroom catalogs, presets, sidecar files, or export behavior.

A practical alternative is therefore not simply another Rust editor. It is an established proprietary photography workflow with mature catalog interoperability and vendor-managed releases. LightCraft favors local source preservation, a modular Rust workspace, and programmatic access through MCP. The trade-off is that the project is explicitly young, and the README leaves important operational questions unanswered.

For a photographer with an existing archive, verify file import, catalog storage, metadata handling, export formats, and preservation of edit history before moving the archive. For an engineer, verify that the browser build, native build, and MCP control channel fit the intended deployment. LightCraft is most compelling when those project-specific boundaries match the workflow.

## Conclusion

LightCraft fits photographers and developers who want local, non-destructive photo work with Rust internals and agent control. It is less suitable for people who need a fully mature production workflow without accepting a young project. Verify the available platform build, catalog behavior, export expectations, and MCP integration before adopting it for an established archive.

## FAQ

### What is LightCraft?

LightCraft is an open-source photo library and RAW development application written in Rust. The README describes native builds for macOS, Windows, and Linux, plus a WebAssembly version.

### Does LightCraft modify the original photograph?

The README states that adjustments are non-destructive and that original images are never touched. It does not describe the exact catalog or edit-state storage format.

### Can AI agents control LightCraft?

The README says that LightCraft is drivable end to end by AI agents over MCP. It does not document the MCP server setup, authentication, or command schema.

## Sources

- [License: Apache-2.0](https://github.com/storytold/lightcraft/blob/main/LICENSE)
- [Project website](https://getartcraft.com/apps/lightcraft)
- [README](https://github.com/storytold/lightcraft/blob/main/README.md)
- [Releases](https://github.com/storytold/lightcraft/releases)
- [storytold/lightcraft on GitHub](https://github.com/storytold/lightcraft)

---

Hysen Labs editorial analysis, written from the project's own repository and release notes. Cite the canonical page: https://hysenlabs.com/projects/storytold-lightcraft
