If you’re like most people using Claude Code, you’re likely thinking of it as a coding assistant, and it’s a great one at that. But it’s not just limited to helping you vibe code your next big idea. I gave Claude Code five years of notes to organize, and it did a great job, and with the right tools, it also happens to be a surprisingly good photo editor.
All you need is a free, open-source photo editor that gives you professional-grade control over your images and an MCP server that allows Claude Code to tap into the editor. Before you know it, you’ll have a natural language interface to professional-level photo editing that’ll make paying for Lightroom feel like wasted money.
Learning Linux has been a ton of fun, and Claude has been surprisingly helpful along the way.
As mentioned before, you’ll need the right photo editor for the job. I decided to use Darktable—a free, open-source alternative to Adobe Lightroom. It’s powerful, comes with a module-based processing pipeline, non-destructive RAW editing, and color science that’ll put most consumer apps to shame. The problem is that it has a steep learning curve and you need to know what its many individual modules do to use it effectively.
This is where Claude Code comes in. The AI understands photography concepts well enough to figure out what’s lacking in basic photo parameters like exposure, color balance, and dynamic range, among others. But it can’t read RAW images, and it can’t make changes to image files as effectively as you’d like.
Now, for Claude to interface with an external tool, you need an MCP server. MCP or Model Context Protocol is a universal way for AI systems to connect with external tools, databases, and services. At the time of writing, I didn’t find any MCP servers that connected Claude to Darktable, so I decided to make one in Claude Code. A few prompts later, I was able to successfully connect Claude with my Darktable installation via darktable-cli, and before you know it, you can edit photos in Claude.
You see, Darktable ships with a command-line interface called darktable-cli. It works by accepting an input image, an optional XMP sidecar file that carries your edit history, an output path, and a range of parameters such as style names, output dimensions, format, color profile, and more. My MCP server, darktable-mcp, exposes these capabilities as structured tools that Claude Code can discover and invoke directly from a chat session.
That means you can talk to Claude about how you want your photo to look, and it’ll make those changes using Darktable in your conversation. It can even read RAW files and suggest changes you should make if you don’t have a clear goal in mind.
You don’t need to be a seasoned developer to work with this setup either. All you have to do is install Darktable, clone the darktable-mcp repository from GitHub, configure it in your Claude MCP settings, point Claude at your RAW files, and you’re off to the races.
The repository contains step-by-step instructions on how to set up the MCP server in your Claude desktop installation. It basically involves cloning the repository, installing dependencies with a single command (pip install -e .), and adding the following mcpServers block to your Claude Desktop configuration file:
Once done, fully quit the Claude Desktop app, restart it, and the server should appear when you select the Connectors option in Claude Chat or Code.
After the connection is successful, simply give Claude the path to your RAW (or other format) images, and you can instantly start editing them with natural language prompts. Claude uses the darktable-cli tool to make the changes happen. It reads the file list, constructs the right darktable-cli invocations with the correct flags, runs them against each image, and saves them as required—all while
You can even use more vague instructions to get a particular mood or aesthetic in your photos. For example, if you want something that resembles crushed shadows, desaturated midtones, and a slight warm glow in the highlights, Claude can do that. Or you can simply tell it to make your photo look a particular way and call it a day. The sky is the limit, quite literally. It does a decent job of editing images on its own, too. Here’s the before and after of one of my photos edited entirely by Claude for reference.
All edits are saved in an accompanying XMP file for each image, meaning you can open the image in Darktable at any point in time and start working on it yourself. All of the changes you made with Claude will automatically sync with Darktable, giving you full manual control over the image.
One major catch of this approach is that Claude can’t make complex local adjustments like brushing a mask in a specific area of your image. However, if you’re editing with that level of complexity, you likely already know how to handle basic edits in Lightroom. Regardless, you can open your photos, do a set of basic edits to a whole batch of images, and then open Darkroom to make manual adjustments to Claude’s results.
The resulting workflow is not only significantly faster as basic edits are taken care of by the AI, but it also lets beginners get the hang of Darktable without going through hour-long tutorials just to change their exposure settings.
Another, less pressing issue is your prompting skill. Claude can see your image, the objects in it, and suggest a particular set of changes based on the scene it sees. However, it may or may not get it right. Relying fully on the AI to get an end result will get you something rather basic, which you can likely replicate by slapping a filter on an image in any photo editing app on your phone, or even on Instagram before uploading a post. For the best results, describe what you want in as detailed a manner as possible.
Darktable, in and of itself, already does a great job of making professional-grade RAW editing accessible to anyone who puts the time and effort into learning the tool. Yes, it can be complicated to start with, especially if you’re coming from something more intuitive like Lightroom. However, when combined with Claude, it turns into a powerful editing tool that makes editing images as easy as planning your edits.
I stopped manually cleaning spreadsheets after Claude did it in minutes, and it’s what it does better than any other AI.
Darktable is easily capable of producing results that are just as good or even better than Lightroom. If you’re like me and switching from a more familiar program, you might struggle to extract that potential because the learning curve is simply brutal. Claude Code bridges that gap beautifully and flattens the curve dramatically.
You still have complete control—every edit is written to an accompanying XMP file you can tweak in Darktable’s GUI. But you no longer need to memorize every Darktable module to figure out basic changes.
We want to hear from you. Share your perspective in the comments below, and please keep the conversation respectful.
Your comment has not been saved
Interesting idea. Thanks for the article.
I am just curious if anyone can comment on any potential security risks of connecting Claude with the Darktable interface to make this work flow possible. TIA.
Exactly! “If you use it right “. It won’t be. Photos used to be a reliable document. Because of tools like this, no photo can be trusted. Videos either. Voice recordings either.

Leave a Reply