drolosoft/immich-photo-manager

πŸŽ₯ Multimedia Process🟒 Verified Active
0 Views
0 Installs

🐍 🏠 🍎 πŸͺŸ 🐧 - Turn your self-hosted Immich photo library into a conversation β€” natural language search via CLIP, geographic album curation from GPS data, cross-source duplicate detection with perceptual hashing, library health reports, and offline-ready interactive HTML galleries. Claude Code plugin with 21 MCP tools, 11 skills, and 5 slash commands.

Quick Install

One-Click IDE Configuration
claude_desktop_config.json
{
  "mcpServers": {
    "drolosoft-immich-photo-manager": {
      "command": "npx",
      "args": [
        "-y",
        "drolosoft-immich-photo-manager"
      ]
    }
  }
}
Or

Using an AI coding agent (Claude Code, Cursor, etc.)? Copy a ready-made prompt that tells it to fetch the setup instructions and install this server for you.

Documentation Overview

immich-photo-manager

immich-photo-manager

License: MIT immich-photo-manager MCP server GitHub Release Immich

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.

immich-photo-manager demo


What It Does

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

Geographic album creation

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?"

Setup complete

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.

Split screen: Claude Code terminal generating a photo gallery on the left, browser showing the resulting gallery with album cards on the right

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.
ClientStatus
Claude CodeTested
Claude DesktopTested
LM Studio (Gemma 4)Tested
Cursor, Windsurf, VS Code, Cline, ZedCompatible (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

Interactive gallery with Cowork Actions

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 / scriptsimmich-photo-manager
πŸ”Write API calls, parse JSONNatural language β€” "find my sunset photos from Italy"
πŸ—ΊοΈExport GPS, cluster manuallyGeographic albums β€” automatic GPS + CLIP + temporal matching
🧹Hash files, diff checksumsPerceptual hashing β€” finds re-encoded duplicates across import sources
πŸ”§Edit EXIF one file at a timeMetadata repair β€” batch-fix timestamps, infer GPS, correct timezones
πŸ“ŠQuery database, build reportsLibrary health β€” one command for metadata quality, storage, recommendations
πŸ”„Rotate one photo at a timeBulk rotation β€” rotate entire albums at once, non-destructive
🏷️No tag management in UITags β€” create, bulk apply/remove across assets
πŸ›‘οΈManual review of every actionSafety first β€” shows findings, asks before acting

Documentation

DocumentDescription
Getting StartedInstallation, manual MCP setup, deployment options, and troubleshooting
Skills ReferenceAll 12 skills β€” workflows, triggers, parameters, output formats
MCP Tools ReferenceAll 50 MCP tools β€” parameters, return types, examples
ArchitectureHow base64-embedded thumbnails solve the Cowork sandbox restriction
CORS Setup GuideOptional β€” enable direct URL thumbnail loading for browser-viewed galleries

πŸ¦™ Glama Score

immich-photo-manager on Glama


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!

Buy Me A Coffee


License

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

Forged by Drolosoft Β· Tools we wish existed

Related MCP Servers

06ketan/slideshot

πŸ“‡ 🏠 🍎 πŸͺŸ 🐧 - Convert HTML to PDF/PNG/WebP/PPTX slide carousels with 11 themes (LinkedIn, Instagram, pitch decks, infographics). Pixel-perfect Puppeteer rendering, dimension-aware reflow for portrait/landscape, token-efficient JSON mode. npx slideshot-mcp.

πŸŽ₯ Multimedia Process0 views
1000ri-jp/atsurae

🐍 ☁️ 🍎 πŸͺŸ 🐧 - AI-powered video editing MCP server with 10 tools for timeline editing, 5-layer compositing, semantic operations, and FFmpeg rendering (1920x1080, 30fps H.264+AAC).

πŸŽ₯ Multimedia Process0 views
a-y-ibrahim/after-effects-mcp

πŸ“‡ 🏠 🍎 πŸͺŸ - Control Adobe After Effects from any MCP client: arbitrary ExtendScript, background rendering, deep comp/layer inspection, and first-class Arabic/RTL & multilingual support (works on AE in any UI language). 47 tools.

πŸŽ₯ Multimedia Process0 views
AceDataCloud/MCPSuno

🐍 ☁️ - Suno AI music generation, lyrics, covers, and vocal extraction via Ace Data Cloud API.

πŸŽ₯ Multimedia Process0 views

Engagement

Views
0
Installs
0
Upvotes
0

Views and upvotes are unique per visitor network (hashed IP). Installs count copy actions.

Status

Health: Active

Recent health check succeeded.

Last checked: 7/28/2026, 11:30:25 PM

Unclaimed listing (imported or pending owner verification). Claim it β†’
β˜… Spotlight Slot

Feature Your MCP Server

Get maximum visibility for your server across our directory, search results, and detail pages.

Spotlight Your Server

Own this project?

This directory is pre-filled from public sources. Claim via GitHub README, site badge, or DNS TXT to get the verified badge and attach your website.

Claim this listing

Promote this listing

Optional paid placement. Free listings stay free forever.

Share & Embed

Add our SVG badge (dark/light directory styles) or embeddable widget to your site.