Featured

Deploy OpenClaw in 60 seconds β€” 20% off logoDeploy OpenClaw in 60 seconds β€” 20% off

Launch OpenClaw on Hostinger in about 60 seconds and keep your agent live 24/7. Our referral link gives you 20% off, no coupon code needed.

Launch on Hostinger β†’
Run your Hermes agent on Hostinger, fully managed logoRun your Hermes agent on Hostinger, fully managed

Launch Hermes on Hostinger in one click, fully managed, no VPS knowledge needed. Use code ZACAARON10 for 10% off.

Launch on Hostinger β†’
Crawl and scrape any site into clean data, 10% off logoCrawl and scrape any site into clean data, 10% off

Firecrawl crawls and scrapes any site into clean markdown for your agent. Get 1,000 free credits, and new users get 10% off their first purchase.

Try Firecrawl free β†’
Your own AI agent, running 24/7 with QwikClaw logoYour own AI agent, running 24/7 with QwikClaw

QwikClaw sets up and runs an always-on OpenClaw agent for you. One click, no config files, no server setup.

Deploy now β†’
One API to scrape, enrich, and extract the internet. logoOne API to scrape, enrich, and extract the internet.

Context.dev gives your agents a single API to scrape, enrich, and extract live web data β€” no proxies, no parsers, no maintenance.

Start building free β†’
SetupClaw: done-for-you OpenClaw for founders & exec teams logoSetupClaw: done-for-you OpenClaw for founders & exec teams

White-glove OpenClaw for founders and exec teams (4–50+ employees): we install, harden, integrate your tools, and maintain it β€” secured from day one.

Get it set up for you β†’
SEO data APIs for your agent, $1 free credit logoSEO data APIs for your agent, $1 free credit

DataForSEO gives your agent live access to SERP results, keyword data, backlinks, and on-page SEO data through one API. New accounts get a $1 credit, good for up to 20,000 keyword or backlink lookups.

Try DataForSEO free β†’
Reach 47,000+ AI builders

A flat monthly placement in front of developers actively installing AI tools. No lock-in, cancel anytime.

Advertise here β†’

Works with

Claude CodeClaude DesktopCursorVS CodeClineCodex CLIOpenClaw+ any MCP client

Install to Claude Code

This server doesn't publish a one-line install command. Follow the setup in the source repository.

Summary

immich-photo-manager MCP server](https://glama.ai/mcp/servers/drolosoft/immich-photo-manager/badges/score.svg)](https://glama.ai/mcp/servers/drolosoft/immich-photo-manager) 🐍 🏠 🍎 πŸͺŸ 🐧 - Turn your self-hosted Immich photo library into a conversation β€”...

README.md

<p align="center"> <img src="assets/icon.png" alt="immich-photo-manager" width="100"> </p>

<h1 align="center">immich-photo-manager</h1>

<p align="center"> <a href="https://opensource.org/licenses/MIT"><img src="https://img.shields.io/badge/License-MIT-yellow.svg" alt="License: MIT"></a> <a href="https://glama.ai/mcp/servers/drolosoft/immich-photo-manager"><img src="https://glama.ai/mcp/servers/drolosoft/immich-photo-manager/badges/score.svg" alt="immich-photo-manager MCP server"></a> <a href="https://github.com/drolosoft/immich-photo-manager/releases/latest"><img src="https://img.shields.io/github/v/release/drolosoft/immich-photo-manager" alt="GitHub Release"></a> <a href="https://immich.app"><img src="https://img.shields.io/badge/Immich-ecosystem-blueviolet.svg" alt="Immich"></a> </p>

MCP server for intelligent photo management with Immich β€” your self-hosted library, understood.

If your Immich library has grown past what you can manage by hand, immich-photo-manager gives any AI assistant direct access to your instance β€” search, organize, deduplicate, and curate albums through natural conversation. Works with Claude, Gemma, or any MCP-compatible client. Runs locally β€” your photos never leave your server.

<p align="center"><img src="./assets/demo.gif" alt="immich-photo-manager demo" width="800"></p>

---

What It Does

Say "create albums for all my trips" and watch it work:

<p align="center"><img src="./assets/screenshot-06-geographic-albums.png" alt="Geographic album creation" width="700"></p>

GPS coordinates, CLIP visual search, and temporal matching β€” combined in one request to create dozens of curated albums. No scripts, no manual sorting.

---

Quick Start

Prerequisites

Install as Claude Plugin (recommended)

git clone https://github.com/drolosoft/immich-photo-manager.git
cd immich-photo-manager

claude plugin marketplace add ./
claude plugin install immich-photo-manager
./scripts/setup-mcp.sh

That's it. Ask Claude: "how healthy is my photo library?"

<p align="center"><img src="./assets/screenshot-01-setup.png" alt="Setup complete" width="700"></p>

For manual MCP server setup, see Getting Started.

Works in Claude Code

The same plugin runs in Claude Code β€” search your library, curate albums, and generate galleries right from the terminal.

<p align="center"><img src="./doc/demos/cc/claude-code-conversation.png" alt="Split screen: Claude Code terminal generating a photo gallery on the left, browser showing the resulting gallery with album cards on the right" width="800"></p>

Full conversation transcript: Claude Code demo

Works with Any MCP Client

immich-photo-manager is an MCP server β€” it works with any AI assistant that speaks the Model Context Protocol, not just Claude.

Use the package entry point directly with uvx:

{
  "mcpServers": {
    "immich": {
      "command": "uvx",
      "args": ["immich-photo-manager"],
      "env": {
        "IMMICH_BASE_URL": "https://your-immich-server.com",
        "IMMICH_API_KEY": "your-api-key"
      }
    }
  }
}

immich-photo-manager defaults to MCP stdio transport. Set MCP_TRANSPORT=http when you want to run the server as a Streamable HTTP service.

============================================================
IMMICH-PHOTO-MANAGER Γ— GEMMA 4 (LM STUDIO)
============================================================

Immich: https://your-immich-server.com
Model:  gemma4-26b-it (local, LM Studio)
Query:  "Show me my Lanzarote albums"

1. Getting MCP tool schemas...
   50 MCP tools available

2. Asking Gemma 4...
   Gemma 4 chose: list_albums({})

3. Executing 'list_albums' against Immich...
   Found 124 total albums, 14 Lanzarote albums:
     - Lanzarote Amarillo (26 photos)
     - Lanzarote Rojo (201 photos)
     - Lanzarote Azul (187 photos)
     - Lanzarote MarrΓ³n (208 photos)
     - Lanzarote Negro (193 photos)
     - Lanzarote Verde (201 photos)
     - Lanzarote Gasolina (174 photos)
     ...

4. Gemma 4 interpreting results...
   "I found 14 Lanzarote albums β€” 7 color-themed with
    1,190 photos and 7 location-specific albums."

RESULT: Zero cloud dependency β€” fully self-hosted stack.

| Client | Status | |--------|--------| | Claude Code | Tested | | Claude Desktop | Tested | | LM Studio (Gemma 4) | Tested | | Cursor, Windsurf, VS Code, Cline, Zed | Compatible (MCP stdio) |

Full transcript: Gemma 4 demo Β· Test script: test-lmstudio-mcp.py

---

Highlights

  • AI-powered search β€” natural language photo search via CLIP ("sunset at the beach", "birthday cake")
  • Geographic albums β€” create albums organized by place, combining GPS + CLIP + temporal matching
  • Metadata repair β€” fix noon/midnight timestamps, infer missing GPS from neighboring photos, correct timezone offsets
  • Library cleanup β€” detect screenshots, duplicates, and low-quality images with multi-signal analysis
  • Duplicate detection β€” cross-source analysis using perceptual hashing (finds re-encoded copies across Apple Photos, Google Photos, and other imports)
  • Bulk rotation β€” rotate entire albums or selections at once (90Β°/180Β°/270Β°); non-destructive, accumulates across calls, one-click revert
  • People & face management β€” list, search, merge, and organize recognized people; reassign misidentified faces; view face thumbnails
  • Trash & asset lifecycle β€” safely delete assets to trash, permanently remove, restore from trash; complete asset lifecycle management
  • Library health β€” one command for asset inventory, metadata quality, storage breakdown, and recommendations
  • Tags & organization β€” create, apply, and manage tags across your library; bulk tag and untag assets
  • Interactive galleries β€” self-contained HTML pages with embedded thumbnails, 3 themes, 4 view modes, and a Cowork Actions Panel for batch operations

<p align="center"><img src="./assets/screenshot-03-gallery-selection.png" alt="Interactive gallery with Cowork Actions" width="700"></p>

Select photos in the gallery, click an action, and paste the command into Claude. See Skills Reference for all 12 skills.

---

Why immich-photo-manager?

Immich is excellent at storing and viewing your photos. But managing a large library β€” deduplication, metadata repair, album curation, storage analysis β€” still requires manual effort or custom scripts.

| | Manual / scripts | immich-photo-manager | |:---:|---|---| | πŸ” | Write API calls, parse JSON | Natural language β€” "find my sunset photos from Italy" | | πŸ—ΊοΈ | Export GPS, cluster manually | Geographic albums β€” automatic GPS + CLIP + temporal matching | | 🧹 | Hash files, diff checksums | Perceptual hashing β€” finds re-encoded duplicates across import sources | | πŸ”§ | Edit EXIF one file at a time | Metadata repair β€” batch-fix timestamps, infer GPS, correct timezones | | πŸ“Š | Query database, build reports | Library health β€” one command for metadata quality, storage, recommendations | | πŸ”„ | Rotate one photo at a time | Bulk rotation β€” rotate entire albums at once, non-destructive | | 🏷️ | No tag management in UI | Tags β€” create, bulk apply/remove across assets | | πŸ›‘οΈ | Manual review of every action | Safety first β€” shows findings, asks before acting |

---

Documentation

| Document | Description | |----------|-------------| | Getting Started | Installation, manual MCP setup, deployment options, and troubleshooting | | Skills Reference | All 12 skills β€” workflows, triggers, parameters, output formats | | MCP Tools Reference | All 50 MCP tools β€” parameters, return types, examples | | Architecture | How base64-embedded thumbnails solve the Cowork sandbox restriction | | CORS Setup Guide | Optional β€” enable direct URL thumbnail loading for browser-viewed galleries |

---

πŸ¦™ Glama Score

<p align="center"> <a href="https://glama.ai/mcp/servers/drolosoft/immich-photo-manager"><img src="https://glama.ai/mcp/servers/drolosoft/immich-photo-manager/badges/card.svg" alt="immich-photo-manager on Glama"></a> </p>

---

Contributing

Contributions are welcome β€” bug fixes, new skills, feature ideas. Open an issue or submit a PR.

If immich-photo-manager helps manage your library, consider giving it a star on GitHub β€” it helps others discover the project.

---

Support

If immich-photo-manager saved you time or made your photo library easier to manage, consider buying me a coffee β€” it keeps the next one coming!

<p align="center"> <a href="https://buymeacoffee.com/juan.andres.morenorub.io"><img src="https://cdn.buymeacoffee.com/buttons/v2/default-yellow.png" alt="Buy Me A Coffee" height="50"></a> </p>

---

License

MIT License β€” free to use, modify, and distribute.

Forged by Drolosoft Β· Tools we wish existed

See related servers & alternatives β†’

Related MCP servers

Browse all β†’

Related guides

Hand-picked reading to help you choose and use Search servers.