Labsco
drolosoft logo

immich-photo-manager

β˜… 24

from drolosoft

Manage your self-hosted Immich photo library through conversation β€” natural language search, geographic album curation, duplicate detection, and interactive HTML galleries

πŸ”₯πŸ”₯πŸ”₯βœ“ VerifiedAccount requiredAdvanced setup
<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/tag/v1.0.0"><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.


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 11 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

<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