Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
KOMGA_URLYesThe URL of the Komga server, e.g. https://your-komga-host. Without /api.
KOMGA_API_KEYYesKomga API key created in user settings.
KOMGA_VERIFY_TLSNoWhether to verify TLS certificates. Set to false when using self-signed certificates.true

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
}
logging
{}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}
extensions
{
  "io.modelcontextprotocol/ui": {}
}
experimental
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
komga_librariesA

komga libraries operations on Komga. Pass operation and an arguments dict matching that operation's parameters.

  • analyze_library(library_id) — Analyze all books in a library. Requires ADMIN.

  • create_library(library) — Create a library. Requires the Komga ADMIN role.

  • delete_library(library_id) — Delete a library without deleting its files. Requires ADMIN.

  • empty_library_trash(library_id) — Permanently empty a library's trash. Requires ADMIN.

  • get_library(library_id) — Get one library by ID.

  • list_libraries() — List libraries visible to the authenticated Komga user.

  • refresh_library_metadata(library_id) — Refresh embedded metadata for a library. Requires ADMIN.

  • scan_library(library_id, deep=False) — Scan a library for new or changed files. Requires ADMIN.

  • update_library(library_id, patch) — Partially update a library. Requires the Komga ADMIN role.

komga_seriesA

komga series operations on Komga. Pass operation and an arguments dict matching that operation's parameters.

  • analyze_series(series_id) — Analyze all books in a series. Requires ADMIN.

  • get_latest_series(library_id=None, deleted=None, oneshot=None, page=0, size=50, sort=None, unpaged=False) — List recently added or updated series.

  • get_new_series(library_id=None, deleted=None, oneshot=None, page=0, size=50, sort=None, unpaged=False) — List newly added series.

  • get_series(series_id) — Get series details and metadata by ID.

  • get_series_collections(series_id) — List collections containing a series.

  • get_updated_series(library_id=None, deleted=None, oneshot=None, page=0, size=50, sort=None, unpaged=False) — List series that were updated but are not newly added.

  • list_series_thumbnails(series_id) — List thumbnail metadata for a series; does not download image bytes.

  • mark_series_read(series_id) — Mark every book in a series as read.

  • mark_series_unread(series_id) — Mark every book in a series as unread.

  • refresh_series_metadata(series_id) — Re-import embedded series metadata. Requires ADMIN.

  • search_series(full_text='', condition=None, page=0, size=50, sort=None, unpaged=False) — Search series using Komga's SeriesSearch body. Structured condition leaves are keyed by fields such as libraryId, collectionId, title, tag, genre, publisher, language, ageRating, readStatus, seriesStatus, mediaStatus, author, deleted, complete, oneShot, releaseDate, numberSort, and seriesId. Each leaf contains an operator object. Use string operators is, isNot, beginsWith, doesNotBeginWith, contains, doesNotContain, endsWith, or doesNotEndWith; booleans use isTrue/isFalse; dates use after/before/isInTheLast/isNotInTheLast/isNull/isNotNull; and group conditions with anyOf (OR) or allOf (AND). Read-status values are UNREAD, READ, IN_PROGRESS; media-status values are UNKNOWN, ERROR, READY, UNSUPPORTED, OUTDATED; series-status values are ENDED, ONGOING, ABANDONED, HIATUS.

  • search_series_alphabetical_groups(full_text='', condition=None, page=0, size=50, sort=None, unpaged=False) — List series grouped alphabetically. Structured condition leaves are keyed by fields such as libraryId, collectionId, title, tag, genre, publisher, language, ageRating, readStatus, seriesStatus, mediaStatus, author, deleted, complete, oneShot, releaseDate, numberSort, and seriesId. Each leaf contains an operator object. Use string operators is, isNot, beginsWith, doesNotBeginWith, contains, doesNotContain, endsWith, or doesNotEndWith; booleans use isTrue/isFalse; dates use after/before/isInTheLast/isNotInTheLast/isNull/isNotNull; and group conditions with anyOf (OR) or allOf (AND). Read-status values are UNREAD, READ, IN_PROGRESS; media-status values are UNKNOWN, ERROR, READY, UNSUPPORTED, OUTDATED; series-status values are ENDED, ONGOING, ABANDONED, HIATUS.

  • update_series_metadata(series_id, patch) — Update series metadata; null unsets a field and omission keeps it. Requires ADMIN.

komga_booksA

komga books operations on Komga. Pass operation and an arguments dict matching that operation's parameters.

  • analyze_book(book_id) — Analyze a book. Requires ADMIN.

  • get_book(book_id) — Get book details, media information, metadata, and read progress.

  • get_book_next(book_id) — Get the next book in the series.

  • get_book_pages(book_id) — List page metadata for a book without downloading page images.

  • get_book_previous(book_id) — Get the previous book in the series.

  • get_book_readlists(book_id) — List readlists containing a book.

  • get_books_ondeck(library_id=None, page=0, size=50, sort=None, unpaged=False) — List books currently on deck for the authenticated user.

  • get_duplicate_books(page=0, size=50, sort=None, unpaged=False) — List duplicate books by file hash. Requires ADMIN.

  • get_latest_books(library_id=None, page=0, size=50, sort=None, unpaged=False) — List recently added or updated books.

  • list_book_thumbnails(book_id) — List thumbnail metadata for a book; does not download image bytes.

  • mark_book_unread(book_id) — Mark a book as unread.

  • refresh_book_metadata(book_id) — Re-import embedded metadata for a book. Requires ADMIN.

  • search_books(full_text='', condition=None, page=0, size=50, sort=None, unpaged=False) — Search books using Komga's BookSearch body. Structured condition leaves are keyed by fields such as libraryId, collectionId, title, tag, genre, publisher, language, ageRating, readStatus, seriesStatus, mediaStatus, author, deleted, complete, oneShot, releaseDate, numberSort, and seriesId. Each leaf contains an operator object. Use string operators is, isNot, beginsWith, doesNotBeginWith, contains, doesNotContain, endsWith, or doesNotEndWith; booleans use isTrue/isFalse; dates use after/before/isInTheLast/isNotInTheLast/isNull/isNotNull; and group conditions with anyOf (OR) or allOf (AND). Read-status values are UNREAD, READ, IN_PROGRESS; media-status values are UNKNOWN, ERROR, READY, UNSUPPORTED, OUTDATED; series-status values are ENDED, ONGOING, ABANDONED, HIATUS.

  • set_book_read_progress(book_id, page=None, completed=None) — Set a book's read position. Supply page and/or completed.

  • update_book_metadata(book_id, patch) — Update book metadata; null unsets a field and omission keeps it. Requires ADMIN.

  • update_books_metadata_bulk(updates) — Bulk update book metadata using a map of book ID to patch. Requires ADMIN.

komga_collectionsA

komga collections operations on Komga. Pass operation and an arguments dict matching that operation's parameters.

  • create_collection(collection) — Create a collection. Requires ADMIN.

  • delete_collection(collection_id) — Delete a collection. Requires ADMIN.

  • get_collection(collection_id) — Get collection details.

  • get_collection_series(collection_id, status=None, read_status=None, publisher=None, language=None, genre=None, tag=None, age_rating=None, release_year=None, author=None, page=0, size=50, sort=None, unpaged=False) — List series in a collection using Komga's legacy filter query params.

  • list_collections(search=None, library_id=None, page=0, size=50, sort=None, unpaged=False) — List collections, optionally filtered by search text or library.

  • update_collection(collection_id, patch) — Update a collection. Requires ADMIN.

komga_readlistsA

komga readlists operations on Komga. Pass operation and an arguments dict matching that operation's parameters.

  • create_readlist(readlist) — Create a readlist. Requires ADMIN.

  • delete_readlist(readlist_id) — Delete a readlist. Requires ADMIN.

  • get_readlist(readlist_id) — Get readlist details.

  • get_readlist_book_next(readlist_id, book_id) — Get the next book in a readlist.

  • get_readlist_book_previous(readlist_id, book_id) — Get the previous book in a readlist.

  • get_readlist_books(readlist_id, library_id=None, read_status=None, tag=None, media_status=None, deleted=None, author=None, page=0, size=50, sort=None, unpaged=False) — List books in a readlist using Komga's filter query params.

  • list_readlists(search=None, library_id=None, page=0, size=50, sort=None, unpaged=False) — List readlists, optionally filtered by search text or library.

  • update_readlist(readlist_id, patch) — Update a readlist. Requires ADMIN.

komga_referential_metadataB

komga referential metadata operations on Komga. Pass operation and an arguments dict matching that operation's parameters.

  • list_age_ratings(search=None, library_id=None, collection_id=None, series_id=None, readlist_id=None, page=0, size=50, sort=None, unpaged=False) — List distinct age ratings.

  • list_author_names(search=None, page=0, size=50, sort=None, unpaged=False) — List distinct author names.

  • list_author_roles(search=None, page=0, size=50, sort=None, unpaged=False) — List distinct author roles.

  • list_authors(search=None, role=None, library_id=None, collection_id=None, series_id=None, readlist_id=None, page=0, size=50, sort=None, unpaged=False) — List author names and roles used by the library.

  • list_genres(search=None, library_id=None, collection_id=None, series_id=None, readlist_id=None, page=0, size=50, sort=None, unpaged=False) — List distinct genres.

  • list_languages(search=None, library_id=None, collection_id=None, series_id=None, readlist_id=None, page=0, size=50, sort=None, unpaged=False) — List distinct languages.

  • list_publishers(search=None, library_id=None, collection_id=None, series_id=None, readlist_id=None, page=0, size=50, sort=None, unpaged=False) — List distinct publishers.

  • list_series_release_years(search=None, library_id=None, collection_id=None, series_id=None, readlist_id=None, page=0, size=50, sort=None, unpaged=False) — List distinct series release years.

  • list_sharing_labels(search=None, library_id=None, collection_id=None, series_id=None, readlist_id=None, page=0, size=50, sort=None, unpaged=False) — List distinct sharing labels.

  • list_tags(search=None, include=None, library_id=None, collection_id=None, series_id=None, readlist_id=None, page=0, size=50, sort=None, unpaged=False) — List distinct tags; include can be SERIES, BOOK, or BOTH.

komga_users_api_keysA

komga users api keys operations on Komga. Pass operation and an arguments dict matching that operation's parameters.

  • change_my_password(password) — Change the current user's password.

  • change_user_password(user_id, password) — Change another user's password. Requires ADMIN.

  • create_api_key(request) — Create an API key for the current user.

  • create_user(user) — Create a user. Requires ADMIN.

  • delete_api_key(key_id) — Revoke one of the current user's API keys.

  • delete_user(user_id) — Delete a user. Requires ADMIN.

  • list_auth_activity(page=0, size=50, sort=None, unpaged=False) — List all authentication activity. Requires ADMIN.

  • list_my_api_keys() — List API keys belonging to the current user.

  • list_my_auth_activity(page=0, size=50, sort=None, unpaged=False) — List authentication activity for the current user.

  • list_users(page=0, size=50, sort=None, unpaged=False) — List users. Requires ADMIN.

  • update_user(user_id, patch) — Update a user. Requires ADMIN.

  • whoami() — Return the currently authenticated user.

komga_serverA

komga server operations on Komga. Pass operation and an arguments dict matching that operation's parameters.

  • clear_server_tasks() — Cancel all queued server tasks and return the number removed. Requires ADMIN.

  • get_server_claim_status() — Return whether the Komga server has been claimed.

  • get_server_history(page=0, size=50, sort=None, unpaged=False) — Get server event history. Requires ADMIN.

  • get_server_info() — Get Komga build and runtime information. Requires ADMIN.

  • get_server_settings() — Get server settings. Requires ADMIN.

  • list_filesystem(path, show_files=False) — List server filesystem directories for library setup. Requires ADMIN.

  • update_server_settings(patch) — Update server settings. Requires ADMIN.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/arr-mcps/komga-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server