Skip to main content
Glama
rollecode

Audiobookshelf MCP server

by rollecode

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
AUDIOBOOKSHELF_URLYesThe base URL of your Audiobookshelf server, e.g. http://127.0.0.1:13378
AUDIOBOOKSHELF_TOKENYesYour Audiobookshelf API token (Settings, Users, your user, API token)

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": false
}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}
experimental
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
create_api_keysC

Create or act on api api-keys.

POST /api/api-keys

Args: body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

create_authorizeC

Create or act on api authorize.

POST /api/authorize

Args: body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

create_authors_by_id_imageA

Add an author image to the server.

POST /api/authors/{id}/image

Args: id: Path parameter. body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

create_authors_by_id_matchB

Match the author against Audible using quick match.

POST /api/authors/{id}/match

Args: id: Path parameter. body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

create_backupsC

Create or act on api backups.

POST /api/backups

Args: body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

create_backups_uploadC

Create or act on backups upload.

POST /api/backups/upload

Args: body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

create_cache_items_purgeD

Create or act on items purge.

POST /api/cache/items/purge

Args: body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

create_cache_purgeC

Create or act on cache purge.

POST /api/cache/purge

Args: body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

create_collectionsC

Create or act on api collections.

POST /api/collections

Args: body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

create_collections_by_id_batch_addC

Create or act on batch add.

POST /api/collections/{id}/batch/add

Args: id: Path parameter. body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

create_collections_by_id_batch_removeC

Create or act on batch remove.

POST /api/collections/{id}/batch/remove

Args: id: Path parameter. body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

create_collections_by_id_bookC

Create or act on collections book.

POST /api/collections/{id}/book

Args: id: Path parameter. body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

create_custom_metadata_providersB

Create or act on api custom-metadata-providers.

POST /api/custom-metadata-providers

Args: body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

create_emails_ereader_devicesC

Update e-reader devices.

POST /api/emails/ereader-devices

Args: body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

create_emails_send_ebook_to_deviceB

Send ebook to device.

POST /api/emails/send-ebook-to-device

Args: body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

create_emails_testB

Send test email.

POST /api/emails/test

Args: body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

create_feeds_by_id_closeC

Create or act on feeds close.

POST /api/feeds/{id}/close

Args: id: Path parameter. body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

create_feeds_collection_by_collection_id_openC

Create or act on collection open.

POST /api/feeds/collection/{collectionId}/open

Args: collection_id: Path parameter. body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

create_feeds_item_by_item_id_openC

Create or act on item open.

POST /api/feeds/item/{itemId}/open

Args: item_id: Path parameter. body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

create_feeds_series_by_series_id_openC

Create or act on series open.

POST /api/feeds/series/{seriesId}/open

Args: series_id: Path parameter. body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

create_filesystem_pathexistsD

Create or act on filesystem pathexists.

POST /api/filesystem/pathexists

Args: body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

create_genres_renameD

Create or act on genres rename.

POST /api/genres/rename

Args: body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

create_items_batch_deleteD

Create or act on batch delete.

POST /api/items/batch/delete

Args: body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

create_items_batch_getD

Create or act on batch get.

POST /api/items/batch/get

Args: body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

create_items_batch_quickmatchC

Create or act on batch quickmatch.

POST /api/items/batch/quickmatch

Args: body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

create_items_batch_scanC

Create or act on batch scan.

POST /api/items/batch/scan

Args: body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

create_items_batch_updateC

Create or act on batch update.

POST /api/items/batch/update

Args: body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

create_items_by_id_chaptersC

Create or act on items chapters.

POST /api/items/{id}/chapters

Args: id: Path parameter. body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

create_items_by_id_coverC

Create or act on items cover.

POST /api/items/{id}/cover

Args: id: Path parameter. body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

create_items_by_id_matchC

Create or act on items match.

POST /api/items/{id}/match

Args: id: Path parameter. body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

create_items_by_id_playC

Create or act on items play.

POST /api/items/{id}/play

Args: id: Path parameter. body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

create_items_by_id_play_by_episode_idD

Create or act on items play.

POST /api/items/{id}/play/{episodeId}

Args: id: Path parameter. episode_id: Path parameter. body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

create_items_by_id_scanC

Create or act on items scan.

POST /api/items/{id}/scan

Args: id: Path parameter. body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

create_librariesA

Create a new library on server.

POST /api/libraries

Args: body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

create_libraries_by_id_remove_metadataC

Create or act on libraries remove-metadata.

POST /api/libraries/{id}/remove-metadata

Args: id: Path parameter. body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

create_libraries_by_id_scanC

Create or act on libraries scan.

POST /api/libraries/{id}/scan

Args: id: Path parameter. body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

create_libraries_orderC

Create or act on libraries order.

POST /api/libraries/order

Args: body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

create_me_ereader_devicesC

Create or act on me ereader-devices.

POST /api/me/ereader-devices

Args: body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

create_me_item_by_id_bookmarkC

Create or act on item bookmark.

POST /api/me/item/{id}/bookmark

Args: id: Path parameter. body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

create_notificationsC

Create notification settings.

POST /api/notifications

Args: body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

create_playlistsC

Create or act on api playlists.

POST /api/playlists

Args: body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

create_playlists_by_id_batch_addD

Create or act on batch add.

POST /api/playlists/{id}/batch/add

Args: id: Path parameter. body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

create_playlists_by_id_batch_removeC

Create or act on batch remove.

POST /api/playlists/{id}/batch/remove

Args: id: Path parameter. body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

create_playlists_by_id_itemC

Create or act on playlists item.

POST /api/playlists/{id}/item

Args: id: Path parameter. body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

create_playlists_collection_by_collection_idC

Create or act on playlists collection.

POST /api/playlists/collection/{collectionId}

Args: collection_id: Path parameter. body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

create_podcastsA

Create a new podcast.

POST /api/podcasts

Args: body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

create_podcasts_by_id_download_episodesA

Download podcast episodes.

POST /api/podcasts/{id}/download-episodes

Args: id: Path parameter. body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

create_podcasts_by_id_match_episodesB

Quick match podcast episodes.

POST /api/podcasts/{id}/match-episodes

Args: id: Path parameter. body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects. override: Override existing details if set to 1

create_podcasts_feedC

Get podcast feed.

POST /api/podcasts/feed

Args: body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

create_podcasts_opml_createB

Bulk create podcasts from OPML feed URLs.

POST /api/podcasts/opml/create

Args: body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

create_podcasts_opml_parseB

Get feeds from OPML text.

POST /api/podcasts/opml/parse

Args: body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

create_session_by_id_closeB

Create or act on session close.

POST /api/session/{id}/close

Args: id: Path parameter. body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

create_session_by_id_syncC

Create or act on session sync.

POST /api/session/{id}/sync

Args: id: Path parameter. body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

create_session_localC

Create or act on session local.

POST /api/session/local

Args: body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

create_session_local_allC

Create or act on session local-all.

POST /api/session/local-all

Args: body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

create_sessions_batch_deleteC

Create or act on batch delete.

POST /api/sessions/batch/delete

Args: body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

create_share_mediaitemC

Create or act on share mediaitem.

POST /api/share/mediaitem

Args: body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

create_tags_renameC

Create or act on tags rename.

POST /api/tags/rename

Args: body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

create_tools_batch_embed_metadataC

Create or act on batch embed-metadata.

POST /api/tools/batch/embed-metadata

Args: body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

create_tools_item_by_id_embed_metadataC

Create or act on item embed-metadata.

POST /api/tools/item/{id}/embed-metadata

Args: id: Path parameter. body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

create_tools_item_by_id_encode_m4bC

Create or act on item encode-m4b.

POST /api/tools/item/{id}/encode-m4b

Args: id: Path parameter. body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

create_uploadC

Create or act on api upload.

POST /api/upload

Args: body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

create_usersB

Create or act on api users.

POST /api/users

Args: body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

create_validate_cronC

Create or act on api validate-cron.

POST /api/validate-cron

Args: body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

create_watcher_updateC

Create or act on watcher update.

POST /api/watcher/update

Args: body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

delete_api_keys_by_idC

Delete api api-keys.

DELETE /api/api-keys/{id}

Args: id: Path parameter. body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

delete_authors_by_idA

Delete an author by ID.

DELETE /api/authors/{id}

Args: id: Path parameter. body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

delete_authors_by_id_imageA

Delete an author image by author ID.

DELETE /api/authors/{id}/image

Args: id: Path parameter. body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

delete_backups_by_idB

Delete api backups.

DELETE /api/backups/{id}

Args: id: Path parameter. body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

delete_collections_by_idB

Delete api collections.

DELETE /api/collections/{id}

Args: id: Path parameter. body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

delete_collections_by_id_book_by_book_idC

Delete collections book.

DELETE /api/collections/{id}/book/{bookId}

Args: id: Path parameter. book_id: Path parameter. body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

delete_custom_metadata_providers_by_idB

Delete api custom-metadata-providers.

DELETE /api/custom-metadata-providers/{id}

Args: id: Path parameter. body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

delete_genres_by_genreC

Delete api genres.

DELETE /api/genres/{genre}

Args: genre: Path parameter. body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

delete_items_by_idC

Delete api items.

DELETE /api/items/{id}

Args: id: Path parameter. body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

delete_items_by_id_coverB

Delete items cover.

DELETE /api/items/{id}/cover

Args: id: Path parameter. body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

delete_items_by_id_file_by_fileidB

Delete items file.

DELETE /api/items/{id}/file/{fileid}

Args: id: Path parameter. fileid: Path parameter. body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

delete_libraries_by_idA

Delete a single library by ID on server.

DELETE /api/libraries/{id}

Args: id: Path parameter. body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

delete_libraries_by_id_issuesA

Delete items with issues in a library.

DELETE /api/libraries/{id}/issues

Args: id: Path parameter. body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

delete_libraries_by_id_narrators_by_narrator_idC

Delete libraries narrators.

DELETE /api/libraries/{id}/narrators/{narratorId}

Args: id: Path parameter. narrator_id: Path parameter. body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

delete_me_item_by_id_bookmark_by_timeB

Delete item bookmark.

DELETE /api/me/item/{id}/bookmark/{time}

Args: id: Path parameter. time: Path parameter. body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

delete_me_progress_by_idB

Delete me progress.

DELETE /api/me/progress/{id}

Args: id: Path parameter. body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

delete_me_sessions_by_idB

Delete me sessions.

DELETE /api/me/sessions/{id}

Args: id: Path parameter. body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

delete_notifications_by_idA

Delete a notification.

DELETE /api/notifications/{id}

Args: id: Path parameter. body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

delete_playlists_by_idC

Delete api playlists.

DELETE /api/playlists/{id}

Args: id: Path parameter. body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

delete_playlists_by_id_item_by_library_item_id_by_episode_idC

Delete playlists item.

DELETE /api/playlists/{id}/item/{libraryItemId}/{episodeId}?

Args: id: Path parameter. library_item_id: Path parameter. episode_id: Path parameter. body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

delete_podcasts_by_id_episode_by_episode_idA

Remove a podcast episode.

DELETE /api/podcasts/{id}/episode/{episodeId}

Args: id: Path parameter. episode_id: Path parameter. body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects. hard: Hard delete the episode if set to 1

delete_sessions_by_idB

Delete api sessions.

DELETE /api/sessions/{id}

Args: id: Path parameter. body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

delete_share_mediaitem_by_idA

Delete share mediaitem.

DELETE /api/share/mediaitem/{id}

Args: id: Path parameter. body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

delete_tags_by_tagB

Delete api tags.

DELETE /api/tags/{tag}

Args: tag: Path parameter. body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

delete_tools_item_by_id_encode_m4bB

Delete item encode-m4b.

DELETE /api/tools/item/{id}/encode-m4b

Args: id: Path parameter. body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

delete_users_by_idA

Delete api users.

DELETE /api/users/{id}

Args: id: Path parameter. body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

get_authors_by_idA

Get an author by ID.

GET /api/authors/{id}

Args: id: Path parameter. include: A comma separated list of what to include with the author. The options are items and series. series will only have an effect if items is included. For example, the value items,series will include both library items and series.

get_authors_by_id_imageA

Get an author image by author ID.

GET /api/authors/{id}/image

Args: id: Path parameter.

get_backups_by_id_applyC

Get backups apply.

GET /api/backups/{id}/apply

Args: id: Path parameter.

get_backups_by_id_downloadC

Get backups download.

GET /api/backups/{id}/download

Args: id: Path parameter.

get_collections_by_idC

Get api collections.

GET /api/collections/{id}

Args: id: Path parameter.

get_hls_by_stream_by_fileD

Get hls.

GET /hls/{stream}/{file}

Args: stream: Path parameter. file: Path parameter.

get_items_by_idC

Get api items.

GET /api/items/{id}

Args: id: Path parameter.

get_items_by_id_coverC

Get items cover.

GET /api/items/{id}/cover

Args: id: Path parameter.

get_items_by_id_downloadC

Get items download.

GET /api/items/{id}/download

Args: id: Path parameter.

get_items_by_id_ebook_by_fileidC

Get items ebook.

GET /api/items/{id}/ebook/{fileid}?

Args: id: Path parameter. fileid: Path parameter.

get_items_by_id_ffprobe_by_fileidC

Get items ffprobe.

GET /api/items/{id}/ffprobe/{fileid}

Args: id: Path parameter. fileid: Path parameter.

get_items_by_id_file_by_fileidD

Get items file.

GET /api/items/{id}/file/{fileid}

Args: id: Path parameter. fileid: Path parameter.

get_items_by_id_file_by_fileid_downloadC

Get file download.

GET /api/items/{id}/file/{fileid}/download

Args: id: Path parameter. fileid: Path parameter.

get_items_by_id_metadata_objectC

Get items metadata-object.

GET /api/items/{id}/metadata-object

Args: id: Path parameter.

get_libraries_by_idA

Get a single library by ID on server.

GET /api/libraries/{id}

Args: id: Path parameter. include: Query parameter.

get_libraries_by_id_authorsB

Get all authors in a library.

GET /api/libraries/{id}/authors

Args: id: Path parameter.

get_libraries_by_id_collectionsC

Get libraries collections.

GET /api/libraries/{id}/collections

Args: id: Path parameter.

get_libraries_by_id_downloadC

Get libraries download.

GET /api/libraries/{id}/download

Args: id: Path parameter.

get_libraries_by_id_episode_downloadsC

Get libraries episode-downloads.

GET /api/libraries/{id}/episode-downloads

Args: id: Path parameter.

get_libraries_by_id_filterdataC

Get libraries filterdata.

GET /api/libraries/{id}/filterdata

Args: id: Path parameter.

get_libraries_by_id_itemsB

Get items in a library.

GET /api/libraries/{id}/items

Args: id: Path parameter. sort: The field to sort by from the request. filter: The filter for the library. include: The fields to include in the response. The only current option is rssfeed. collapse_series: Whether to collapse series into a single cover

get_libraries_by_id_matchallC

Get libraries matchall.

GET /api/libraries/{id}/matchall

Args: id: Path parameter.

get_libraries_by_id_narratorsB

Get libraries narrators.

GET /api/libraries/{id}/narrators

Args: id: Path parameter.

get_libraries_by_id_opmlB

Get libraries opml.

GET /api/libraries/{id}/opml

Args: id: Path parameter.

get_libraries_by_id_personalizedC

Get libraries personalized.

GET /api/libraries/{id}/personalized

Args: id: Path parameter.

get_libraries_by_id_playlistsB

Get libraries playlists.

GET /api/libraries/{id}/playlists

Args: id: Path parameter.

get_libraries_by_id_podcast_titlesB

Get libraries podcast-titles.

GET /api/libraries/{id}/podcast-titles

Args: id: Path parameter.

get_libraries_by_id_recent_episodesB

Get libraries recent-episodes.

GET /api/libraries/{id}/recent-episodes

Args: id: Path parameter.

get_libraries_by_id_searchD

Get libraries search.

GET /api/libraries/{id}/search

Args: id: Path parameter.

get_libraries_by_id_seriesB

Get library series.

GET /api/libraries/{id}/series

Args: id: Path parameter. sort: The field to sort by from the request. filter: The filter for the library. include: The fields to include in the response. The only current option is rssfeed.

get_libraries_by_id_series_by_series_idA

Get single series in library.

GET /api/libraries/{id}/series/{seriesId}

Args: id: Path parameter. series_id: Path parameter. sort: The field to sort by from the request. filter: The filter for the library. include: The fields to include in the response. The only current option is rssfeed.

get_libraries_by_id_statsC

Get libraries stats.

GET /api/libraries/{id}/stats

Args: id: Path parameter.

get_me_bookmarks_by_library_item_idC

Get me bookmarks.

GET /api/me/bookmarks/{libraryItemId}

Args: library_item_id: Path parameter.

get_me_item_listening_sessions_by_library_item_id_by_episode_idB

Get item listening-sessions.

GET /api/me/item/listening-sessions/{libraryItemId}/{episodeId}?

Args: library_item_id: Path parameter. episode_id: Path parameter.

get_me_progress_by_id_by_episode_idD

Get me progress.

GET /api/me/progress/{id}/{episodeId}?

Args: id: Path parameter. episode_id: Path parameter.

get_me_progress_by_id_remove_from_continue_listeningD

Get progress remove-from-continue-listening.

GET /api/me/progress/{id}/remove-from-continue-listening

Args: id: Path parameter.

get_me_series_by_id_readd_to_continue_listeningC

Get series readd-to-continue-listening.

GET /api/me/series/{id}/readd-to-continue-listening

Args: id: Path parameter.

get_me_series_by_id_remove_from_continue_listeningC

Get series remove-from-continue-listening.

GET /api/me/series/{id}/remove-from-continue-listening

Args: id: Path parameter.

get_me_stats_year_by_yearD

Get stats year.

GET /api/me/stats/year/{year}

Args: year: Path parameter.

get_notifications_by_id_testC

Send a test notification.

GET /api/notifications/{id}/test

Args: id: Path parameter.

get_playlists_by_idB

Get api playlists.

GET /api/playlists/{id}

Args: id: Path parameter.

get_podcasts_by_id_checknewC

Check and download new episodes.

GET /api/podcasts/{id}/checknew

Args: id: Path parameter. limit: Maximum number of episodes to download

get_podcasts_by_id_clear_queueC

Clear episode download queue.

GET /api/podcasts/{id}/clear-queue

Args: id: Path parameter.

get_podcasts_by_id_downloadsB

Get episode downloads.

GET /api/podcasts/{id}/downloads

Args: id: Path parameter.

get_podcasts_by_id_episode_by_episode_idA

Get a specific podcast episode.

GET /api/podcasts/{id}/episode/{episodeId}

Args: id: Path parameter. episode_id: Path parameter.

get_podcasts_by_id_search_episodeA

Find episode by title.

GET /api/podcasts/{id}/search-episode

Args: id: Path parameter. title: Title of the episode to search for

get_public_session_by_id_track_by_indexC

Get session track.

GET /public/session/{id}/track/{index}

Args: id: Path parameter. index: Path parameter.

get_public_share_by_slugC

Get public share.

GET /public/share/{slug}

Args: slug: Path parameter.

get_public_share_by_slug_coverC

Get share cover.

GET /public/share/{slug}/cover

Args: slug: Path parameter.

get_public_share_by_slug_downloadC

Get share download.

GET /public/share/{slug}/download

Args: slug: Path parameter.

get_public_share_by_slug_track_by_indexC

Get share track.

GET /public/share/{slug}/track/{index}

Args: slug: Path parameter. index: Path parameter.

get_series_by_idC

Get series.

GET /api/series/{id}

Args: id: Path parameter.

get_session_by_idC

Get api session.

GET /api/session/{id}

Args: id: Path parameter.

get_stats_year_by_yearC

Get stats year.

GET /api/stats/year/{year}

Args: year: Path parameter.

get_users_by_idB

Get api users.

GET /api/users/{id}

Args: id: Path parameter.

get_users_by_id_listening_sessionsC

Get users listening-sessions.

GET /api/users/{id}/listening-sessions

Args: id: Path parameter.

get_users_by_id_listening_statsB

Get users listening-stats.

GET /api/users/{id}/listening-stats

Args: id: Path parameter.

list_api_keysB

Get api api-keys.

GET /api/api-keys

list_auth_settingsA

Get api auth-settings.

GET /api/auth-settings

list_backupsB

Get api backups.

GET /api/backups

list_collectionsA

Get api collections.

GET /api/collections

list_custom_metadata_providersC

Get api custom-metadata-providers.

GET /api/custom-metadata-providers

list_emails_settingsA

Get email settings.

GET /api/emails/settings

list_feedsB

Get api feeds.

GET /api/feeds

list_filesystemC

Get api filesystem.

GET /api/filesystem

list_genresB

Get api genres.

GET /api/genres

list_librariesA

Get all libraries on server.

GET /api/libraries

list_logger_dataC

Get api logger-data.

GET /api/logger-data

list_meB

Get api me.

GET /api/me

list_me_bookmarksB

Get me bookmarks.

GET /api/me/bookmarks

list_me_items_in_progressB

Get me items-in-progress.

GET /api/me/items-in-progress

list_me_listening_sessionsC

Get me listening-sessions.

GET /api/me/listening-sessions

list_me_listening_statsB

Get me listening-stats.

GET /api/me/listening-stats

list_me_progressC

Get me progress.

GET /api/me/progress

list_me_sessionsC

Get me sessions.

GET /api/me/sessions

list_notificationdataB

Get notification event data.

GET /api/notificationdata

list_notificationsA

Get notification settings.

GET /api/notifications

list_notifications_testA

Send general test notification.

GET /api/notifications/test

Args: fail: Whether to intentionally cause the notification to fail. 0 for false, 1 for true.

list_playlistsB

Get api playlists.

GET /api/playlists

list_search_authorsC

Get search authors.

GET /api/search/authors

list_search_booksC

Get search books.

GET /api/search/books

list_search_chaptersC

Get search chapters.

GET /api/search/chapters

list_search_coversB

Get search covers.

GET /api/search/covers

list_search_podcastC

Get search podcast.

GET /api/search/podcast

list_search_providersA

Get search providers.

GET /api/search/providers

list_sessionsC

Get api sessions.

GET /api/sessions

list_sessions_openC

Get sessions open.

GET /api/sessions/open

list_stats_serverC

Get stats server.

GET /api/stats/server

list_tagsB

Get api tags.

GET /api/tags

list_tasksC

Get api tasks.

GET /api/tasks

list_usersB

Get api users.

GET /api/users

list_users_onlineA

Get users online.

GET /api/users/online

patch_api_keys_by_idB

Update api api-keys.

PATCH /api/api-keys/{id}

Args: id: Path parameter. body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

patch_auth_settingsB

Update api auth-settings.

PATCH /api/auth-settings

Args: body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

patch_authors_by_idA

Update an author by ID.

PATCH /api/authors/{id}

Args: id: Path parameter. body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

patch_backups_pathC

Update backups path.

PATCH /api/backups/path

Args: body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

patch_collections_by_idA

Update api collections.

PATCH /api/collections/{id}

Args: id: Path parameter. body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

patch_emails_settingsA

Update email settings.

PATCH /api/emails/settings

Args: body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

patch_items_by_id_coverA

Update items cover.

PATCH /api/items/{id}/cover

Args: id: Path parameter. body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

patch_items_by_id_ebook_by_fileid_statusB

Update ebook status.

PATCH /api/items/{id}/ebook/{fileid}/status

Args: id: Path parameter. fileid: Path parameter. body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

patch_items_by_id_mediaB

Update items media.

PATCH /api/items/{id}/media

Args: id: Path parameter. body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

patch_items_by_id_tracksB

Update items tracks.

PATCH /api/items/{id}/tracks

Args: id: Path parameter. body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

patch_libraries_by_idC

Update a single library by ID on server.

PATCH /api/libraries/{id}

Args: id: Path parameter. body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

patch_libraries_by_id_narrators_by_narrator_idB

Update libraries narrators.

PATCH /api/libraries/{id}/narrators/{narratorId}

Args: id: Path parameter. narrator_id: Path parameter. body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

patch_me_item_by_id_bookmarkB

Update item bookmark.

PATCH /api/me/item/{id}/bookmark

Args: id: Path parameter. body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

patch_me_passwordB

Update me password.

PATCH /api/me/password

Args: body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

patch_me_progress_batch_updateC

Update batch update.

PATCH /api/me/progress/batch/update

Args: body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

patch_me_progress_by_library_item_id_by_episode_idB

Update me progress.

PATCH /api/me/progress/{libraryItemId}/{episodeId}?

Args: library_item_id: Path parameter. episode_id: Path parameter. body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

patch_notificationsC

Update select notification settings.

PATCH /api/notifications

Args: body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

patch_notifications_by_idB

Update a notification.

PATCH /api/notifications/{id}

Args: id: Path parameter. body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

patch_playlists_by_idB

Update api playlists.

PATCH /api/playlists/{id}

Args: id: Path parameter. body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

patch_podcasts_by_id_episode_by_episode_idB

Update a podcast episode.

PATCH /api/podcasts/{id}/episode/{episodeId}

Args: id: Path parameter. episode_id: Path parameter. body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

patch_public_share_by_slug_progressA

Update share progress.

PATCH /public/share/{slug}/progress

Args: slug: Path parameter. body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

patch_series_by_idA

Update series.

PATCH /api/series/{id}

Args: id: Path parameter. body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

patch_settingsA

Update api settings.

PATCH /api/settings

Args: body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

patch_sorting_prefixesB

Update api sorting-prefixes.

PATCH /api/sorting-prefixes

Args: body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

patch_users_by_idA

Update api users.

PATCH /api/users/{id}

Args: id: Path parameter. body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

patch_users_by_id_openid_unlinkC

Update users openid-unlink.

PATCH /api/users/{id}/openid-unlink

Args: id: Path parameter. body: Request payload. Read the matching GET or the /schema endpoint first to see the fields this resource expects.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

C2.3/5.0

Scored across 209 tools

Disambiguation2/5

209 auto-generated tools with boilerplate descriptions ('Create or act on...', 'Get api...') make it hard to tell similar actions apart. Many tools share structural patterns (batch add/remove, cache purge, continue-listening modifications) and some descriptions are misleading (e.g., create_podcasts_feed says 'Get podcast feed').

Naming Consistency3/5

There is a consistent snake_case verb-noun pattern based on HTTP method (list_/get_/create_/patch_/delete_), but 'create_' is used for every POST even when the operation is not a create, and 'get_' is used for state-changing actions like remove-from-continue-listening. This makes names predictable in form but semantically misleading.

Tool Count1/5

209 tools is an extreme count for an MCP server, far beyond the 3-15 well-scoped range and well over the 50+ threshold. The surface is essentially the entire REST API dumped into MCP tools, which overwhelms an agent's tool-selection space.

Completeness4/5

The tool set covers most major CRUD and admin workflows for an Audiobookshelf server: libraries, users, collections, playlists, podcasts, notifications, backups, and media items. Minor gaps exist, such as no get_settings or get_podcasts_by_id, but the overall surface is broad enough for typical agent workflows.

Maintenance

ActivityMaintained
ResponsivenessNo issues