Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
IMMICH_API_KEYNoImmich API key.
IMMICH_HEADERSNoExtra JSON headers sent with every request.{}
IMMICH_BASE_URLYesImmich API base URL, e.g. http://localhost:2283/api. /api is appended automatically if missing.
IMMICH_MCP_TAGSNoComma-separated group allow-list (e.g. Assets,Albums,Search).
IMMICH_MCP_TOOLSNoComma-separated tool allow-list.
IMMICH_ACCESS_TOKENNoBearer access token (used if no API key is set).
IMMICH_MCP_READONLYNoSet to 1 to expose only GET operations.0
IMMICH_MCP_HTTP_HOSTNoHTTP bind host (0.0.0.0 in Docker).127.0.0.1
IMMICH_MCP_HTTP_PATHNoHTTP endpoint path./mcp
IMMICH_MCP_HTTP_PORTNoHTTP port.3000
IMMICH_MCP_LOG_LEVELNodebug, info, warn, error (logs go to stderr).info
IMMICH_MCP_TRANSPORTNoTransport mode: stdio, http or both.stdio
IMMICH_MCP_DOWNLOAD_DIRNoWhere downloaded/binary files are written../downloads
IMMICH_MCP_EXCLUDE_TAGSNoComma-separated group deny-list.
IMMICH_MCP_EXCLUDE_TOOLSNoComma-separated tool deny-list.
IMMICH_MCP_HTTP_AUTH_TOKENNoIf set, HTTP requests must send Authorization: Bearer <token>.
IMMICH_MCP_MAX_RESULT_CHARSNoTruncate large tool results.200000

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": true
}
prompts
{
  "listChanged": true
}
resources
{
  "listChanged": true
}

Tools

Functions exposed to the LLM to take actions

NameDescription
immich_accept_cluster_group_requestB

Accept a cluster group request

Join the cluster group the request was created for.

Immich operation: POST /cluster-groups/requests/{id}/accept · tag: Cluster groups

immich_add_assets_to_albumB

Add assets to an album

Add multiple assets to a specific album by its ID.

Immich operation: PUT /albums/{id}/assets · tag: Albums

immich_add_assets_to_albumsB

Add assets to albums

Send a list of asset IDs and album IDs to add each asset to each album.

Immich operation: PUT /albums/assets · tag: Albums

immich_add_memory_assetsB

Add assets to a memory

Add a list of asset IDs to a specific memory.

Immich operation: PUT /memories/{id}/assets · tag: Memories

immich_add_shared_link_assetsB

Add assets to a shared link

Add assets to a specific shared link by its ID. This endpoint is only relevant for shared link of type individual.

Immich operation: PUT /shared-links/{id}/assets · tag: Shared links

immich_add_users_to_albumB

Share album with users

Share an album with multiple users. Each user can be given a specific role in the album.

Immich operation: PUT /albums/{id}/users · tag: Albums

immich_bulk_tag_assetsB

Tag assets

Add multiple tags to multiple assets in a single request.

Immich operation: PUT /tags/assets · tag: Tags

immich_change_passwordB

Change password

Change the password of the current user.

Immich operation: POST /auth/change-password · tag: Authentication

immich_change_pin_codeC

Change pin code

Change the pin code for the current user.

Immich operation: PUT /auth/pin-code · tag: Authentication

immich_check_bulk_uploadB

Check bulk upload

Determine which assets have already been uploaded to the server based on their SHA1 checksums.

Immich operation: POST /assets/bulk-upload-check · tag: Assets

immich_cluster_group_regenerate_peopleB

Regenerate people of users in cluster group

Forcefully re-run facial recognition for all faces of users in this group.

Immich operation: POST /cluster-groups/{id}/regenerate-people · tag: Cluster groups

immich_copy_assetB

Copy asset

Copy asset information like albums, tags, etc. from one asset to another.

Immich operation: PUT /assets/copy · tag: Assets

immich_create_activityB

Create an activity

Create a like or a comment for an album, or an asset in an album.

Immich operation: POST /activities · tag: Activities

immich_create_albumB

Create an album

Create a new album. The album can also be created with initial users and assets.

Immich operation: POST /albums · tag: Albums

immich_create_api_keyC

Create an API key

Creates a new API key. It will be limited to the permissions specified.

Immich operation: POST /api-keys · tag: API keys

immich_create_cluster_group_requestA

Create a cluster group request

Ask another user to join the cluster group of the current user.

Immich operation: PUT /cluster-groups/{id}/requests · tag: Cluster groups

immich_create_faceB

Create a face

Create a new face that has not been discovered by facial recognition. The content of the bounding box is considered a face.

Immich operation: POST /faces · tag: Faces

immich_create_jobB

Create a manual job

Run a specific job. Most jobs are queued automatically, but this endpoint allows for manual creation of a handful of jobs, including various cleanup tasks, as well as creating a new database backup.

Immich operation: POST /jobs · tag: Jobs

immich_create_libraryB

Create a library

Create a new external library.

Immich operation: POST /libraries · tag: Libraries

immich_create_memoryC

Create a memory

Create a new memory by providing a name, description, and a list of asset IDs to include in the memory.

Immich operation: POST /memories · tag: Memories

immich_create_notificationB

Create a notification

Create a new notification for a specific user.

Immich operation: POST /admin/notifications · tag: Notifications (admin)

immich_create_partnerC

Create a partner

Create a new partner to share assets with.

Immich operation: POST /partners · tag: Partners

immich_create_partner_deprecatedB

Create a partner

Create a new partner to share assets with.

Immich operation: POST /partners/{id} · tag: Partners

DEPRECATED — prefer the replacement operation if one exists.

immich_create_personC

Create a person

Create a new person that can have multiple faces assigned to them.

Immich operation: POST /people · tag: People

immich_create_profile_imageB

Create user profile image

Upload and set a new profile image for the current user.

Immich operation: POST /users/profile-image · tag: Users

immich_create_sessionB

Create a session

Create a session as a child to the current session. This endpoint is used for casting.

Immich operation: POST /sessions · tag: Sessions

immich_create_shared_linkC

Create a shared link

Create a new shared link.

Immich operation: POST /shared-links · tag: Shared links

immich_create_stackB

Create a stack

Create a new stack by providing a name and a list of asset IDs to include in the stack. If any of the provided asset IDs are primary assets of an existing stack, the existing stack will be merged into the newly created stack.

Immich operation: POST /stacks · tag: Stacks

immich_create_tagB

Create a tag

Create a new tag by providing a name and optional color.

Immich operation: POST /tags · tag: Tags

immich_create_user_adminC

Create a user

Create a new user.

Immich operation: POST /admin/users · tag: Users (admin)

immich_create_workflowB

Create a workflow

Create a new workflow, the workflow can also be created with empty filters and actions.

Immich operation: POST /workflows · tag: Workflows

immich_delete_activityB

Delete an activity

Removes a like or comment from a given album or asset in an album.

Immich operation: DELETE /activities/{id} · tag: Activities

immich_delete_albumA

Delete an album

Delete a specific album by its ID. Note the album is initially trashed and then immediately scheduled for deletion, but relies on a background job to complete the process.

Immich operation: DELETE /albums/{id} · tag: Albums

immich_delete_all_sessionsA

Delete all sessions

Delete all sessions for the user. This will not delete the current session.

Immich operation: DELETE /sessions · tag: Sessions

immich_delete_api_keyA

Delete an API key

Deletes an API key identified by its ID. The current user must own this API key.

Immich operation: DELETE /api-keys/{id} · tag: API keys

immich_delete_asset_fileB

Delete an asset file

Delete a file and remove it from the database.

Immich operation: DELETE /asset-files/{id} · tag: Asset files

immich_delete_asset_metadataB

Delete asset metadata by key

Delete a specific metadata key-value pair associated with the specified asset.

Immich operation: DELETE /assets/{id}/metadata/{key} · tag: Assets

immich_delete_assetsC

Delete assets

Deletes multiple assets at the same time.

Immich operation: DELETE /assets · tag: Assets

immich_delete_bulk_asset_metadataA

Delete asset metadata

Delete metadata key-value pairs for multiple assets.

Immich operation: DELETE /assets/metadata · tag: Assets

immich_delete_cluster_group_requestB

Decline a cluster group request

Delete a pending request to join a cluster group.

Immich operation: DELETE /cluster-groups/requests/{id} · tag: Cluster groups

immich_delete_database_backupB

Delete database backup

Delete a backup by its filename

Immich operation: DELETE /admin/database-backups · tag: Database Backups (admin)

immich_delete_duplicateA

Dismiss a duplicate group

Dismiss a duplicate group by its ID, unlinking all assets in the group without deleting them.

Immich operation: DELETE /duplicates/{id} · tag: Duplicates

immich_delete_duplicatesB

Delete duplicates

Delete multiple duplicate assets specified by their IDs.

Immich operation: DELETE /duplicates · tag: Duplicates

immich_delete_faceC

Delete a face

Delete a face identified by the id. Optionally can be force deleted.

Immich operation: DELETE /faces/{id} · tag: Faces

immich_delete_integrity_reportA

Delete integrity report item

Delete a given report item and perform corresponding deletion (e.g. trash asset, delete file)

Immich operation: DELETE /admin/integrity/report/{id} · tag: Maintenance (admin)

immich_delete_libraryB

Delete a library

Delete an external library by its ID.

Immich operation: DELETE /libraries/{id} · tag: Libraries

immich_delete_memoryA

Delete a memory

Delete a specific memory by its ID.

Immich operation: DELETE /memories/{id} · tag: Memories

immich_delete_notificationC

Delete a notification

Delete a specific notification.

Immich operation: DELETE /notifications/{id} · tag: Notifications

immich_delete_notificationsC

Delete notifications

Delete a list of notifications at once.

Immich operation: DELETE /notifications · tag: Notifications

immich_delete_peopleB

Delete people

Bulk delete a list of people at once.

Immich operation: DELETE /people · tag: People

immich_delete_personC

Delete person

Delete an individual person.

Immich operation: DELETE /people/{id} · tag: People

immich_delete_profile_imageB

Delete user profile image

Delete the profile image of the current user.

Immich operation: DELETE /users/profile-image · tag: Users

immich_delete_server_licenseA

Delete server product key

Delete the currently set server product key.

Immich operation: DELETE /server/license · tag: Server

immich_delete_sessionA

Delete a session

Delete a specific session by id.

Immich operation: DELETE /sessions/{id} · tag: Sessions

immich_delete_stackB

Delete a stack

Delete a specific stack by its ID.

Immich operation: DELETE /stacks/{id} · tag: Stacks

immich_delete_stacksA

Delete stacks

Delete multiple stacks by providing a list of stack IDs.

Immich operation: DELETE /stacks · tag: Stacks

immich_delete_sync_ackC

Delete acknowledgements

Delete specific synchronization acknowledgments.

Immich operation: DELETE /sync/ack · tag: Sync

immich_delete_tagB

Delete a tag

Delete a specific tag by its ID.

Immich operation: DELETE /tags/{id} · tag: Tags

immich_delete_user_adminC

Delete a user

Delete a user.

Immich operation: DELETE /admin/users/{id} · tag: Users (admin)

immich_delete_user_licenseB

Delete user product key

Delete the registered product key for the current user.

Immich operation: DELETE /users/me/license · tag: Users

immich_delete_user_onboardingB

Delete user onboarding

Delete the onboarding status of the current user.

Immich operation: DELETE /users/me/onboarding · tag: Users

immich_delete_workflowB

Delete a workflow

Delete a workflow by its ID.

Immich operation: DELETE /workflows/{id} · tag: Workflows

immich_detect_prior_installB

Detect existing install

Collect integrity checks and other heuristics about local data.

Immich operation: GET /admin/maintenance/detect-install · tag: Maintenance (admin)

immich_download_archiveA

Download asset archive

Download a ZIP archive containing the specified assets. The assets must have been previously requested via the "getDownloadInfo" endpoint.

Immich operation: POST /download/archive · tag: Download

immich_download_assetB

Download original asset

Downloads the original file of the specified asset.

Immich operation: GET /assets/{id}/original · tag: Assets

immich_download_asset_fileB

Download an asset file

Serve the contents of a specific asset file.

Immich operation: GET /asset-files/{id}/download · tag: Asset files

immich_download_database_backupC

Download database backup

Downloads the database backup file

Immich operation: GET /admin/database-backups/{filename} · tag: Database Backups (admin)

immich_edit_assetB

Apply edits to an existing asset

Apply a series of edit actions (crop, rotate, mirror) to the specified asset.

Immich operation: PUT /assets/{id}/edits · tag: Assets

immich_empty_queueB

Empty a queue

Removes all jobs from the specified queue.

Immich operation: DELETE /queues/{name}/jobs · tag: Queues

immich_empty_trashB

Empty trash

Permanently delete all items in the trash.

Immich operation: POST /trash/empty · tag: Trash

immich_end_sessionB

End HLS streaming session

Releases server resources for the streaming session.

Immich operation: DELETE /assets/{id}/video/stream/{sessionId} · tag: Assets

immich_finish_o_authA

Finish OAuth

Complete the OAuth authorization process by exchanging the authorization code for a session token.

Immich operation: POST /oauth/callback · tag: Authentication

immich_get_about_infoC

Get server information

Retrieve a list of information about the server.

Immich operation: GET /server/about · tag: Server

immich_get_activitiesA

List all activities

Returns a list of activities for the selected asset or album. The activities are returned in sorted order, with the oldest activities appearing first.

Immich operation: GET /activities · tag: Activities

immich_get_activity_statisticsA

Retrieve activity statistics

Returns the number of likes and comments for a given album or asset in an album.

Immich operation: GET /activities/statistics · tag: Activities

immich_get_admin_configC

Get the admin configuration

Retrieve admin configuration.

Immich operation: GET /admin/config · tag: Config (admin)

immich_get_admin_config_defaultsA

Get the system configuration defaults

Retrieve the default value of every system configuration property.

Immich operation: GET /admin/config/defaults · tag: Config (admin)

immich_get_admin_onboardingB

Retrieve admin onboarding

Retrieve the current admin onboarding status.

Immich operation: GET /system-metadata/admin-onboarding · tag: System metadata

immich_get_album_infoB

Retrieve an album

Retrieve information about a specific album by its ID.

Immich operation: GET /albums/{id} · tag: Albums

immich_get_album_map_markersB

Retrieve album map markers

Retrieve map marker information for a specific album by its ID.

Immich operation: GET /albums/{id}/map-markers · tag: Albums

immich_get_album_statisticsB

Retrieve album statistics

Returns statistics about the albums available to the authenticated user.

Immich operation: GET /albums/statistics · tag: Albums

immich_get_all_albumsB

List all albums

Retrieve a list of albums available to the authenticated user.

Immich operation: GET /albums · tag: Albums

immich_get_all_librariesB

Retrieve libraries

Retrieve a list of external libraries.

Immich operation: GET /libraries · tag: Libraries

immich_get_all_peopleC

Get all people

Retrieve a list of all people.

Immich operation: GET /people · tag: People

immich_get_all_shared_linksC

Retrieve all shared links

Retrieve a list of all shared links.

Immich operation: GET /shared-links · tag: Shared links

immich_get_all_tagsA

Retrieve tags

Retrieve a list of all tags.

Immich operation: GET /tags · tag: Tags

immich_get_api_keyA

Retrieve an API key

Retrieve an API key by its ID. The current user must own this API key.

Immich operation: GET /api-keys/{id} · tag: API keys

immich_get_api_keysA

List all API keys

Retrieve all API keys of the current user.

Immich operation: GET /api-keys · tag: API keys

immich_get_apk_linksB

Get APK links

Retrieve links to the APKs for the current server version.

Immich operation: GET /server/apk-links · tag: Server

immich_get_asset_duplicatesB

Retrieve duplicates

Retrieve a list of duplicate assets available to the authenticated user.

Immich operation: GET /duplicates · tag: Duplicates

immich_get_asset_editsB

Retrieve edits for an existing asset

Retrieve a series of edit actions (crop, rotate, mirror) associated with the specified asset.

Immich operation: GET /assets/{id}/edits · tag: Assets

immich_get_asset_fileB

Retrieve an asset file

Returns metadata about a specific asset file.

Immich operation: GET /asset-files/{id} · tag: Asset files

immich_get_asset_infoB

Retrieve an asset

Retrieve detailed information about a specific asset.

Immich operation: GET /assets/{id} · tag: Assets

immich_get_asset_metadataA

Get asset metadata

Retrieve all metadata key-value pairs associated with the specified asset.

Immich operation: GET /assets/{id}/metadata · tag: Assets

immich_get_asset_metadata_by_keyC

Retrieve asset metadata by key

Retrieve the value of a specific metadata key associated with the specified asset.

Immich operation: GET /assets/{id}/metadata/{key} · tag: Assets

immich_get_asset_ocrB

Retrieve asset OCR data

Retrieve all OCR (Optical Character Recognition) data associated with the specified asset.

Immich operation: GET /assets/{id}/ocr · tag: Assets

immich_get_asset_statisticsB

Get asset statistics

Retrieve various statistics about the assets owned by the authenticated user.

Immich operation: GET /assets/statistics · tag: Assets

immich_get_assets_by_cityA

Retrieve assets by city

Retrieve a list of assets with each asset belonging to a different city. This endpoint is used on the places pages to show a single thumbnail for each city the user has assets in.

Immich operation: GET /search/cities · tag: Search

immich_get_assets_by_original_pathC

Retrieve assets by original path

Retrieve assets that are children of a specific folder.

Immich operation: GET /view/folder · tag: Views

immich_get_auth_statusB

Retrieve auth status

Get information about the current session, including whether the user has a password, and if the session can access locked assets.

Immich operation: GET /auth/status · tag: Authentication

immich_get_cluster_group_requestsA

Retrieve cluster group requests

Retrieve the pending requests for the current user to join a cluster group.

Immich operation: GET /cluster-groups/requests · tag: Cluster groups

immich_get_cluster_group_requests_for_groupB

Retrieve the requests sent by a cluster group

Retrieve the pending requests for other users to join the cluster group.

Immich operation: GET /cluster-groups/{id}/requests · tag: Cluster groups

immich_get_cluster_group_usersC

Retrieve the users of a cluster group

Retrieve the users that are a member of the cluster group.

Immich operation: GET /cluster-groups/{id}/users · tag: Cluster groups

immich_get_configB

Get system configuration

Retrieve the current system configuration.

Immich operation: GET /system-config · tag: System config

DEPRECATED — prefer the replacement operation if one exists.

immich_get_config_defaultsB

Get system configuration defaults

Retrieve the default values for the system configuration.

Immich operation: GET /system-config/defaults · tag: System config

DEPRECATED — prefer the replacement operation if one exists.

immich_get_download_infoB

Retrieve download information

Retrieve information about how to request a download for the specified assets or album. The response includes groups of assets that can be downloaded together.

Immich operation: POST /download/info · tag: Download

immich_get_explore_dataB

Retrieve explore data

Retrieve data for the explore section, such as popular people and places.

Immich operation: GET /search/explore · tag: Search

immich_get_facesB

Retrieve faces for asset

Retrieve all faces belonging to an asset.

Immich operation: GET /faces · tag: Faces

immich_get_integrity_reportB

Get integrity report by type

Get all flagged items by integrity report type

Immich operation: GET /admin/integrity/report · tag: Maintenance (admin)

immich_get_integrity_report_csvB

Export integrity report by type as CSV

Get all integrity report entries for a given type as a CSV

Immich operation: GET /admin/integrity/report/{type}/csv · tag: Maintenance (admin)

immich_get_integrity_report_fileB

Download flagged file

Download the untracked/broken file if one exists

Immich operation: GET /admin/integrity/report/{id}/file · tag: Maintenance (admin)

immich_get_integrity_report_summaryB

Get integrity report summary

Get a count of the items flagged in each integrity report

Immich operation: GET /admin/integrity/summary · tag: Maintenance (admin)

immich_get_libraryB

Retrieve a library

Retrieve an external library by its ID.

Immich operation: GET /libraries/{id} · tag: Libraries

immich_get_library_statisticsB

Retrieve library statistics

Retrieve statistics for a specific external library, including number of videos, images, and storage usage.

Immich operation: GET /libraries/{id}/statistics · tag: Libraries

immich_get_main_playlistB

Get HLS main playlist

Returns an HLS main playlist with all available variants for the asset.

Immich operation: GET /assets/{id}/video/stream/main.m3u8 · tag: Assets

immich_get_maintenance_statusA

Get maintenance mode status

Fetch information about the currently running maintenance action.

Immich operation: GET /admin/maintenance/status · tag: Maintenance (admin)

immich_get_map_markersB

Retrieve map markers

Retrieve a list of latitude and longitude coordinates for every asset with location data.

Immich operation: GET /map/markers · tag: Map

immich_get_media_playlistB

Get HLS media playlist

Returns an HLS media playlist for one variant of the streaming session.

Immich operation: GET /assets/{id}/video/stream/{sessionId}/{variantIndex}/playlist.m3u8 · tag: Assets

immich_get_memoryA

Retrieve a memory

Retrieve a specific memory by its ID.

Immich operation: GET /memories/{id} · tag: Memories

immich_get_my_api_keyB

Retrieve the current API key

Retrieve the API key that is used to access this endpoint.

Immich operation: GET /api-keys/me · tag: API keys

immich_get_my_calendar_heatmapB

Retrieve calendar heatmap activity

Retrieve activity counts for a specified period, in a calendar heatmap format.

Immich operation: GET /users/me/calendar-heatmap · tag: Users

immich_get_my_preferencesB

Get my preferences

Retrieve the preferences for the current user.

Immich operation: GET /users/me/preferences · tag: Users

immich_get_my_shared_linkC

Retrieve current shared link

Retrieve the current shared link associated with authentication method.

Immich operation: GET /shared-links/me · tag: Shared links

immich_get_my_userB

Get current user

Retrieve information about the user making the API request.

Immich operation: GET /users/me · tag: Users

immich_get_notificationA

Get a notification

Retrieve a specific notification identified by id.

Immich operation: GET /notifications/{id} · tag: Notifications

immich_get_notification_template_adminB

Render email template

Retrieve a preview of the provided email template.

Immich operation: POST /admin/notifications/templates/{name} · tag: Notifications (admin)

immich_get_notificationsC

Retrieve notifications

Retrieve a list of notifications.

Immich operation: GET /notifications · tag: Notifications

immich_get_partnersA

Retrieve partners

Retrieve a list of partners with whom assets are shared.

Immich operation: GET /partners · tag: Partners

immich_get_personC

Get a person

Retrieve a person by id.

Immich operation: GET /people/{id} · tag: People

immich_get_person_statisticsB

Get person statistics

Retrieve statistics about a specific person.

Immich operation: GET /people/{id}/statistics · tag: People

immich_get_person_thumbnailB

Get person thumbnail

Retrieve the thumbnail file for a person.

Immich operation: GET /people/{id}/thumbnail · tag: People

immich_get_pluginB

Retrieve a plugin

Retrieve information about a specific plugin by its ID.

Immich operation: GET /plugins/{id} · tag: Plugins

immich_get_profile_imageB

Retrieve user profile image

Retrieve the profile image file for a user.

Immich operation: GET /users/{id}/profile-image · tag: Users

immich_get_public_configA

Get the public configuration

Retrieve the system configuration properties that are visible to everyone.

Immich operation: GET /public/config · tag: Config (public)

immich_get_public_config_defaultsA

Get the public configuration defaults

Retrieve the default value of the configuration properties that are visible to everyone.

Immich operation: GET /public/config/defaults · tag: Config (public)

immich_get_queueB

Retrieve a queue

Retrieves a specific queue by its name.

Immich operation: GET /queues/{name} · tag: Queues

immich_get_queue_jobsB

Retrieve queue jobs

Retrieves a list of queue jobs from the specified queue.

Immich operation: GET /queues/{name}/jobs · tag: Queues

immich_get_queuesB

List all queues

Retrieves a list of queues.

Immich operation: GET /queues · tag: Queues

immich_get_queues_legacyA

Retrieve queue counts and status

Retrieve the counts of the current queue, as well as the current status.

Immich operation: GET /jobs · tag: Jobs

DEPRECATED — prefer the replacement operation if one exists.

immich_get_reverse_geocoding_stateB

Retrieve reverse geocoding state

Retrieve the current state of the reverse geocoding import.

Immich operation: GET /system-metadata/reverse-geocoding-state · tag: System metadata

immich_get_search_suggestionsA

Retrieve search suggestions

Retrieve search suggestions based on partial input. This endpoint is used for typeahead search features.

Immich operation: GET /search/suggestions · tag: Search

immich_get_segmentB

Get HLS segment or init file

Streams an HLS init segment (init.mp4) or media segment (seg_N.m4s).

Immich operation: GET /assets/{id}/video/stream/{sessionId}/{variantIndex}/{filename} · tag: Assets

immich_get_server_configC

Get config

Retrieve the current server configuration.

Immich operation: GET /server/config · tag: Server

DEPRECATED — prefer the replacement operation if one exists.

immich_get_server_featuresB

Get features

Retrieve available features supported by this server.

Immich operation: GET /server/features · tag: Server

DEPRECATED — prefer the replacement operation if one exists.

immich_get_server_licenseB

Get product key

Retrieve information about whether the server currently has a product key registered.

Immich operation: GET /server/license · tag: Server

immich_get_server_statisticsB

Get statistics

Retrieve statistics about the entire Immich instance such as asset counts.

Immich operation: GET /server/statistics · tag: Server

immich_get_server_versionB

Get server version

Retrieve the current server version in semantic versioning (semver) format.

Immich operation: GET /server/version · tag: Server

immich_get_sessionsB

Retrieve sessions

Retrieve a list of sessions for the user.

Immich operation: GET /sessions · tag: Sessions

immich_get_shared_link_by_idB

Retrieve a shared link

Retrieve a specific shared link by its ID.

Immich operation: GET /shared-links/{id} · tag: Shared links

immich_get_stackB

Retrieve a stack

Retrieve a specific stack by its ID.

Immich operation: GET /stacks/{id} · tag: Stacks

immich_get_storageA

Get storage

Retrieve the current storage utilization information of the server.

Immich operation: GET /server/storage · tag: Server

immich_get_storage_template_optionsB

Get storage template options

Retrieve exemplary storage template options.

Immich operation: GET /system-config/storage-template-options · tag: System config

immich_get_supported_media_typesB

Get supported media types

Retrieve all media types supported by the server.

Immich operation: GET /server/media-types · tag: Server

immich_get_sync_ackB

Retrieve acknowledgements

Retrieve the synchronization acknowledgments for the current session.

Immich operation: GET /sync/ack · tag: Sync

immich_get_sync_streamB

Stream sync changes

Retrieve a JSON lines streamed response of changes for synchronization. This endpoint is used by the mobile app to efficiently stay up to date with changes.

Immich operation: POST /sync/stream · tag: Sync

immich_get_tag_by_idB

Retrieve a tag

Retrieve a specific tag by its ID.

Immich operation: GET /tags/{id} · tag: Tags

immich_get_time_bucketB

Get time bucket

Retrieve a string of all asset ids in a given time bucket.

Immich operation: GET /timeline/bucket · tag: Timeline

immich_get_time_bucketsC

Get time buckets

Retrieve a list of all minimal time buckets.

Immich operation: GET /timeline/buckets · tag: Timeline

immich_get_unique_original_pathsA

Retrieve unique paths

Retrieve a list of unique folder paths from asset original paths.

Immich operation: GET /view/folder/unique-paths · tag: Views

immich_get_userC

Retrieve a user

Retrieve a specific user by their ID.

Immich operation: GET /users/{id} · tag: Users

immich_get_user_adminB

Retrieve a user

Retrieve a specific user by their ID.

Immich operation: GET /admin/users/{id} · tag: Users (admin)

immich_get_user_calendar_heatmap_adminB

Retrieve calendar heatmap activity

Retrieve activity counts for a specified period, in a calendar heatmap format.

Immich operation: GET /admin/users/{id}/calendar-heatmap · tag: Users (admin)

immich_get_user_configB

Get the configuration with user visibility

Retrieve the system configuration properties that are visible to logged in users.

Immich operation: GET /config · tag: Config (user)

immich_get_user_config_defaultsA

Get the default configuration with user visibility

Retrieve the default value of the configuration properties that are visible to logged in users.

Immich operation: GET /config/defaults · tag: Config (user)

immich_get_user_licenseB

Retrieve user product key

Retrieve information about whether the current user has a registered product key.

Immich operation: GET /users/me/license · tag: Users

immich_get_user_onboardingB

Retrieve user onboarding

Retrieve the onboarding status of the current user.

Immich operation: GET /users/me/onboarding · tag: Users

immich_get_user_preferences_adminA

Retrieve user preferences

Retrieve the preferences of a specific user.

Immich operation: GET /admin/users/{id}/preferences · tag: Users (admin)

immich_get_user_sessions_adminB

Retrieve user sessions

Retrieve all sessions for a specific user.

Immich operation: GET /admin/users/{id}/sessions · tag: Users (admin)

immich_get_user_statistics_adminB

Retrieve user statistics

Retrieve asset statistics for a specific user.

Immich operation: GET /admin/users/{id}/statistics · tag: Users (admin)

immich_get_version_checkA

Get version check status

Retrieve information about the last time the version check ran.

Immich operation: GET /server/version-check · tag: Server

immich_get_version_check_stateB

Retrieve version check state

Retrieve the current state of the version check process.

Immich operation: GET /system-metadata/version-check-state · tag: System metadata

immich_get_version_historyB

Get version history

Retrieve a list of past versions the server has been on.

Immich operation: GET /server/version-history · tag: Server

immich_get_workflowB

Retrieve a workflow

Retrieve information about a specific workflow by its ID.

Immich operation: GET /workflows/{id} · tag: Workflows

immich_get_workflow_for_shareC

Retrieve a workflow

Retrieve a workflow details without ids, default values, etc.

Immich operation: GET /workflows/{id}/share · tag: Workflows

immich_get_workflow_logsB

Retrieve workflow logs

Retrieve logs of a workflows runs by ID

Immich operation: GET /workflows/{id}/logs · tag: Workflows

immich_get_workflow_triggersB

List all workflow triggers

Retrieve a list of all available workflow triggers.

Immich operation: GET /workflows/triggers · tag: Workflows

immich_leave_cluster_groupB

Leave a cluster group

Move the current user into a new cluster group of their own.

Immich operation: POST /cluster-groups/{id}/leave · tag: Cluster groups

immich_link_o_auth_accountB

Link OAuth account

Link an OAuth account to the authenticated user.

Immich operation: POST /oauth/link · tag: Authentication

immich_list_database_backupsB

List database backups

Get the list of the successful and failed backups

Immich operation: GET /admin/database-backups · tag: Database Backups (admin)

immich_lock_auth_sessionB

Lock auth session

Remove elevated access to locked assets from the current session.

Immich operation: POST /auth/session/lock · tag: Authentication

immich_lock_sessionB

Lock a session

Lock a specific session by id.

Immich operation: POST /sessions/{id}/lock · tag: Sessions

immich_loginB

Login

Login with username and password and receive a session token.

Immich operation: POST /auth/login · tag: Authentication

immich_logoutA

Logout

Logout the current user and invalidate the session token.

Immich operation: POST /auth/logout · tag: Authentication

immich_logout_o_authB

Backchannel OAuth logout

Logout the OAuth account and invalidate the session specified by the sid claim or all sessions if the sid claim is not present.

Immich operation: POST /oauth/backchannel-logout · tag: Authentication

immich_maintenance_loginA

Log into maintenance mode

Login with maintenance token or cookie to receive current information and perform further actions.

Immich operation: POST /admin/maintenance/login · tag: Maintenance (admin)

immich_memories_statisticsB

Retrieve memories statistics

Retrieve statistics about memories, such as total count and other relevant metrics.

Immich operation: GET /memories/statistics · tag: Memories

immich_merge_peopleA

Merge people

Merge an ordered list of people together into a single person. The final name and birth date are always the first defined value, following the order. Also automatically merges people for other users in the cluster group, skipping people that would result in overriding a previously set name or birth date.

Immich operation: POST /people/merge · tag: People

immich_merge_person_legacyA

Merge people

Merge a list of people into the person specified in the path parameter.

Immich operation: POST /people/{id}/merge · tag: People

DEPRECATED — prefer the replacement operation if one exists.

immich_ping_serverC

Ping

Pong

Immich operation: GET /server/ping · tag: Server

immich_play_asset_videoB

Play asset video

Streams the video file for the specified asset. This endpoint also supports byte range requests.

Immich operation: GET /assets/{id}/video/playback · tag: Assets

immich_reassign_facesB

Reassign faces

Bulk reassign a list of faces to a different person.

Immich operation: PUT /people/{id}/reassign · tag: People

immich_reassign_faces_by_idB

Re-assign a face to another person

Re-assign the face provided in the body to the person identified by the id in the path parameter.

Immich operation: PUT /faces/{id} · tag: Faces

immich_redirect_o_auth_to_mobileB

Redirect OAuth to mobile

Requests to this URL are automatically forwarded to the mobile app, and is used in some cases for OAuth redirecting.

Immich operation: GET /oauth/mobile-redirect · tag: Authentication

immich_remove_asset_editsA

Remove edits from an existing asset

Removes all edit actions (crop, rotate, mirror) associated with the specified asset.

Immich operation: DELETE /assets/{id}/edits · tag: Assets

immich_remove_asset_from_albumC

Remove assets from an album

Remove multiple assets from a specific album by its ID.

Immich operation: DELETE /albums/{id}/assets · tag: Albums

immich_remove_asset_from_stackB

Remove an asset from a stack

Remove a specific asset from a stack by providing the stack ID and asset ID.

Immich operation: DELETE /stacks/{id}/assets/{assetId} · tag: Stacks

immich_remove_memory_assetsB

Remove assets from a memory

Remove a list of asset IDs from a specific memory.

Immich operation: DELETE /memories/{id}/assets · tag: Memories

immich_remove_partnerB

Remove a partner

Stop sharing assets with a partner.

Immich operation: DELETE /partners/{id} · tag: Partners

immich_remove_shared_linkB

Delete a shared link

Delete a specific shared link by its ID.

Immich operation: DELETE /shared-links/{id} · tag: Shared links

immich_remove_shared_link_assetsA

Remove assets from a shared link

Remove assets from a specific shared link by its ID. This endpoint is only relevant for shared link of type individual.

Immich operation: DELETE /shared-links/{id}/assets · tag: Shared links

immich_remove_user_from_albumB

Remove user from album

Remove a user from an album. Use an ID of "me" to leave a shared album.

Immich operation: DELETE /albums/{id}/user/{userId} · tag: Albums

immich_reset_pin_codeA

Reset pin code

Reset the pin code for the current user by providing the account password

Immich operation: DELETE /auth/pin-code · tag: Authentication

immich_resolve_duplicatesB

Resolve duplicate groups

Resolve duplicate groups by synchronizing metadata across assets and deleting/trashing duplicates.

Immich operation: POST /duplicates/resolve · tag: Duplicates

immich_restore_assetsA

Restore assets

Restore specific assets from the trash.

Immich operation: POST /trash/restore/assets · tag: Trash

immich_restore_trashB

Restore trash

Restore all items in the trash.

Immich operation: POST /trash/restore · tag: Trash

immich_restore_user_adminB

Restore a deleted user

Restore a previously deleted user.

Immich operation: POST /admin/users/{id}/restore · tag: Users (admin)

immich_reverse_geocodeA

Reverse geocode coordinates

Retrieve location information (e.g., city, country) for given latitude and longitude coordinates.

Immich operation: GET /map/reverse-geocode · tag: Map

immich_rotate_api_keyA

Rotate an API key

Generates a new secret for an API key, immediately invalidating the previous one. The current user must own this API key.

Immich operation: POST /api-keys/{id}/rotate · tag: API keys

immich_run_asset_jobsC

Run an asset job

Run a specific job on a set of assets.

Immich operation: POST /assets/jobs · tag: Assets

immich_run_queue_command_legacyB

Run jobs

Queue all assets for a specific job type. Defaults to only queueing assets that have not yet been processed, but the force command can be used to re-process all assets.

Immich operation: PUT /jobs/{name} · tag: Jobs

DEPRECATED — prefer the replacement operation if one exists.

immich_scan_libraryA

Scan a library

Queue a scan for the external library to find and import new assets.

Immich operation: POST /libraries/{id}/scan · tag: Libraries

immich_search_asset_filesC

Search asset files

Returns all matching asset files.

Immich operation: GET /asset-files · tag: Asset files

immich_search_asset_statisticsC

Search asset statistics

Retrieve statistical data about assets based on search criteria, such as the total matching count.

Immich operation: POST /search/statistics · tag: Search

immich_search_assetsC

Search assets by metadata

Search for assets based on various metadata criteria.

Immich operation: POST /search/metadata · tag: Search

immich_search_large_assetsC

Search large assets

Search for assets that are considered large based on specified criteria.

Immich operation: POST /search/large-assets · tag: Search

DEPRECATED — prefer the replacement operation if one exists.

immich_search_memoriesB

Retrieve memories

Retrieve a list of memories. Memories are sorted descending by creation date by default, although they can also be sorted in ascending order, or randomly.

Immich operation: GET /memories · tag: Memories

immich_search_personC

Search people

Search for people by name.

Immich operation: GET /search/person · tag: Search

immich_search_placesC

Search places

Search for places by name.

Immich operation: GET /search/places · tag: Search

immich_search_plugin_methodsC

Retrieve plugin methods

Retrieve a list of plugin methods

Immich operation: GET /plugins/methods · tag: Plugins

immich_search_plugin_templatesB

Retrieve workflow templates

Retrieve workflow templates provided by installed plugins

Immich operation: GET /plugins/templates · tag: Plugins

immich_search_pluginsB

List all plugins

Retrieve a list of plugins available to the authenticated user.

Immich operation: GET /plugins · tag: Plugins

immich_search_randomB

Search random assets

Retrieve a random selection of assets based on the provided criteria.

Immich operation: POST /search/random · tag: Search

immich_search_smartC

Smart asset search

Perform a smart search for assets by using machine learning vectors to determine relevance.

Immich operation: POST /search/smart · tag: Search

immich_search_stacksC

Retrieve stacks

Retrieve a list of stacks.

Immich operation: GET /stacks · tag: Stacks

immich_search_usersB

Get all users

Retrieve a list of all users on the server.

Immich operation: GET /users · tag: Users

immich_search_users_adminC

Search users

Search for users.

Immich operation: GET /admin/users · tag: Users (admin)

immich_search_workflowsB

List all workflows

Retrieve a list of workflows available to the authenticated user.

Immich operation: GET /workflows · tag: Workflows

immich_send_sync_ackB

Acknowledge changes

Send a list of synchronization acknowledgements to confirm that the latest changes have been received.

Immich operation: POST /sync/ack · tag: Sync

immich_send_test_email_adminA

Send test email

Send a test email using the provided SMTP configuration.

Immich operation: POST /admin/notifications/test-email · tag: Notifications (admin)

immich_set_maintenance_modeC

Set maintenance mode

Put Immich into or take it out of maintenance mode

Immich operation: POST /admin/maintenance · tag: Maintenance (admin)

immich_set_server_licenseB

Set server product key

Validate and set the server product key if successful.

Immich operation: PUT /server/license · tag: Server

immich_set_user_licenseB

Set user product key

Register a product key for the current user.

Immich operation: PUT /users/me/license · tag: Users

immich_set_user_onboardingB

Update user onboarding

Update the onboarding status of the current user.

Immich operation: PUT /users/me/onboarding · tag: Users

immich_setup_pin_codeB

Setup pin code

Setup a new pin code for the current user.

Immich operation: POST /auth/pin-code · tag: Authentication

immich_shared_link_loginC

Shared link login

Login to a password protected shared link

Immich operation: POST /shared-links/login · tag: Shared links

immich_sign_up_adminB

Register admin

Create the first admin user in the system.

Immich operation: POST /auth/admin-sign-up · tag: Authentication

immich_start_database_restore_flowA

Start database backup restore flow

Put Immich into maintenance mode to restore a backup (Immich must not be configured)

Immich operation: POST /admin/database-backups/start-restore · tag: Database Backups (admin)

immich_start_o_authC

Start OAuth

Initiate the OAuth authorization process.

Immich operation: POST /oauth/authorize · tag: Authentication

immich_tag_assetsB

Tag assets

Add a tag to all the specified assets.

Immich operation: PUT /tags/{id}/assets · tag: Tags

immich_unlink_all_o_auth_accounts_adminB

Unlink all OAuth accounts

Unlinks all OAuth accounts associated with user accounts in the system.

Immich operation: POST /admin/auth/unlink-all · tag: Authentication (admin)

immich_unlink_o_auth_accountA

Unlink OAuth account

Unlink the OAuth account from the authenticated user.

Immich operation: POST /oauth/unlink · tag: Authentication

immich_unlock_auth_sessionA

Unlock auth session

Temporarily grant the session elevated access to locked assets by providing the correct PIN code.

Immich operation: POST /auth/session/unlock · tag: Authentication

immich_untag_assetsB

Untag assets

Remove a tag from all the specified assets.

Immich operation: DELETE /tags/{id}/assets · tag: Tags

immich_update_admin_configC

Update the system configuration

Update the system configuration with a new system configuration.

Immich operation: PUT /admin/config · tag: Config (admin)

immich_update_admin_onboardingC

Update admin onboarding

Update the admin onboarding status.

Immich operation: POST /system-metadata/admin-onboarding · tag: System metadata

immich_update_album_infoA

Update an album

Update the information of a specific album by its ID. This endpoint can be used to update the album name, description, sort order, etc. However, it is not used to add or remove assets or users from the album.

Immich operation: PATCH /albums/{id} · tag: Albums

immich_update_album_userA

Update user role

Change the role for a specific user in a specific album.

Immich operation: PUT /albums/{id}/user/{userId} · tag: Albums

immich_update_api_keyA

Update an API key

Updates the name and permissions of an API key by its ID. The current user must own this API key.

Immich operation: PUT /api-keys/{id} · tag: API keys

DEPRECATED — prefer the replacement operation if one exists.

immich_update_assetB

Update an asset

Update information of a specific asset.

Immich operation: PUT /assets/{id} · tag: Assets

DEPRECATED — prefer the replacement operation if one exists.

immich_update_asset_metadataB

Update asset metadata

Update or add metadata key-value pairs for the specified asset.

Immich operation: PUT /assets/{id}/metadata · tag: Assets

immich_update_assetsB

Update assets

Updates multiple assets at the same time.

Immich operation: PUT /assets · tag: Assets

DEPRECATED — prefer the replacement operation if one exists.

immich_update_bulk_asset_metadataB

Upsert asset metadata

Upsert metadata key-value pairs for multiple assets.

Immich operation: PUT /assets/metadata · tag: Assets

immich_update_configC

Update system configuration

Update the system configuration with a new system configuration.

Immich operation: PUT /system-config · tag: System config

DEPRECATED — prefer the replacement operation if one exists.

immich_update_libraryA

Update a library

Update an existing external library.

Immich operation: PUT /libraries/{id} · tag: Libraries

DEPRECATED — prefer the replacement operation if one exists.

immich_update_memoryB

Update a memory

Update an existing memory by its ID.

Immich operation: PUT /memories/{id} · tag: Memories

DEPRECATED — prefer the replacement operation if one exists.

immich_update_my_preferencesB

Update my preferences

Update the preferences of the current user.

Immich operation: PUT /users/me/preferences · tag: Users

DEPRECATED — prefer the replacement operation if one exists.

immich_update_my_userB

Update current user

Update the current user making the API request.

Immich operation: PUT /users/me · tag: Users

DEPRECATED — prefer the replacement operation if one exists.

immich_update_notificationA

Update a notification

Update a specific notification to set its read status.

Immich operation: PUT /notifications/{id} · tag: Notifications

immich_update_notificationsA

Update notifications

Update a list of notifications. Allows to bulk-set the read status of notifications.

Immich operation: PUT /notifications · tag: Notifications

immich_update_partnerA

Update a partner

Specify whether a partner's assets should appear in the user's timeline.

Immich operation: PUT /partners/{id} · tag: Partners

immich_update_peopleB

Update people

Bulk update multiple people at once.

Immich operation: PUT /people · tag: People

immich_update_personC

Update person

Update an individual person.

Immich operation: PUT /people/{id} · tag: People

DEPRECATED — prefer the replacement operation if one exists.

immich_update_queueB

Update a queue

Change the paused status of a specific queue.

Immich operation: PUT /queues/{name} · tag: Queues

immich_update_sessionB

Update a session

Update a specific session identified by id.

Immich operation: PUT /sessions/{id} · tag: Sessions

DEPRECATED — prefer the replacement operation if one exists.

immich_update_shared_linkB

Update a shared link

Update an existing shared link by its ID.

Immich operation: PATCH /shared-links/{id} · tag: Shared links

immich_update_stackB

Update a stack

Update an existing stack by its ID.

Immich operation: PUT /stacks/{id} · tag: Stacks

DEPRECATED — prefer the replacement operation if one exists.

immich_update_tagB

Update a tag

Update an existing tag identified by its ID.

Immich operation: PUT /tags/{id} · tag: Tags

DEPRECATED — prefer the replacement operation if one exists.

immich_update_user_adminB

Update a user

Update an existing user.

Immich operation: PUT /admin/users/{id} · tag: Users (admin)

DEPRECATED — prefer the replacement operation if one exists.

immich_update_user_preferences_adminB

Update user preferences

Update the preferences of a specific user.

Immich operation: PUT /admin/users/{id}/preferences · tag: Users (admin)

DEPRECATED — prefer the replacement operation if one exists.

immich_update_workflowB

Update a workflow

Update the information of a specific workflow by its ID. This endpoint can be used to update the workflow name, description, trigger type, filters and actions order, etc.

Immich operation: PUT /workflows/{id} · tag: Workflows

DEPRECATED — prefer the replacement operation if one exists.

immich_upload_assetC

Upload asset

Uploads a new asset to the server.

Immich operation: POST /assets · tag: Assets

immich_upload_database_backupA

Upload database backup

Uploads .sql/.sql.gz file to restore backup from

Immich operation: POST /admin/database-backups/upload · tag: Database Backups (admin)

immich_upsert_tagsC

Upsert tags

Create or update multiple tags in a single request.

Immich operation: PUT /tags · tag: Tags

immich_validateC

Validate library settings

Validate the settings of an external library.

Immich operation: POST /libraries/{id}/validate · tag: Libraries

immich_validate_access_tokenB

Validate access token

Validate the current authorization method is still valid.

Immich operation: POST /auth/validateToken · tag: Authentication

immich_view_assetB

View asset thumbnail

Retrieve the thumbnail image for the specified asset. Viewing the fullsize thumbnail might redirect to downloadAsset, which requires a different permission.

Immich operation: GET /assets/{id}/thumbnail · tag: Assets

Prompts

Interactive templates invoked by user choice

NameDescription
search_mediaGuide the assistant to search for assets using the Immich search tools.
organize_albumCreate or update an album based on search criteria.
library_reportSummarise the state of the Immich library.

Resources

Contextual data attached and managed by the client

NameDescription
immich-server-aboutServer version and build information.
immich-server-versionCurrent server version and release channel.
immich-server-storageDisk usage per storage location.
immich-server-statisticsAggregate asset, user and album statistics.
immich-user-meProfile of the authenticated user.
immich-albumsAll albums with asset counts and cover images.
immich-peopleAll recognized people.
immich-tagsAll tags in the library.
immich-memoriesAvailable memories for the current user.

TDQS

C2.9/5.0

Scored across 276 tools

Disambiguation2/5

With 276 tools there is heavy overlap: many near-identical config getters (get_config, get_admin_config, get_user_config, get_public_config, get_server_config plus their *_defaults variants), duplicate partner creators (create_partner vs create_partner_deprecated), and deprecated tools sitting alongside their replacements (update_tag/upsert_tags, update_asset/update_assets, get_user/get_user_admin). An agent will frequently struggle to pick the right tool. Some resource+action pairs are distinct, but the sheer volume of deprecated/duplicate variants muddies boundaries.

Naming Consistency4/5

Names use a predictable immich_<verb>_<noun> snake_case pattern (immich_create_album, immich_get_asset_info, immich_delete_stack), which is highly consistent and readable. A few exceptions drop the noun (immich_login, immich_logout, immich_validate, immich_ping_server), but these are minor deviations within an otherwise uniform convention.

Tool Count1/5

276 tools is an extreme count that far exceeds a manageable surface, reflecting a 1:1 mechanical mapping of the entire Immich REST API rather than a curated, agent-friendly set. This makes discovery, selection, and context management impractical.

Completeness5/5

The surface mirrors the full Immich API exhaustively — assets, albums, people, faces, tags, libraries, memories, queues, jobs, admin, auth, sync, workflows, and more — leaving essentially no CRUD or lifecycle gaps. Coverage is as complete as a tool set can be.

Maintenance

ActivityMaintained
ResponsivenessNo issues