Skip to main content
Glama

Server Details

Search books, authors and series, get recommendations, and manage your own reading shelves.

If you are the author of this connector, you can claim ownership by verifying the domain or GitHub account it belongs to. Claimed connector authors can inspect health checks, view analytics, and manage their listing.
Status
Healthy
Uptime
100.0% over 37 days
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL

TDQS

A3.9/5.0

Scored across 12 tools

Disambiguation4/5

Most tools have clearly distinct purposes: search, detail lookups, library reads/writes, and recommendation types are separated. The main possible confusion is between recommend_from_titles and what_to_read_next, since both suggest books based on prior reading, and between search_books and recommend_from_description, though descriptions clarify the distinction.

Naming Consistency4/5

The set uses snake_case consistently and follows a predictable verb_noun pattern for nearly every tool (get_*, recommend_*, add_to_library, remove_from_library, search_books). what_to_read_next is the lone outlier without a clear verb_noun structure, but it remains readable.

Tool Count5/5

Twelve tools is well-scoped for a book catalog plus personal library server. Each tool appears to earn its place, with no obvious redundant wrappers or missing essential operations that would require additional tool sprawl.

Completeness4/5

The surface covers discovery, book/author/series detail, personal shelf management, ratings/progress, and recommendations. Minor gaps exist, such as no explicit way to clear a rating after removal or manage reviews, but the core reader lifecycle is well represented.

Available Tools

13 tools
add_to_libraryAdd a book to my library
DestructiveIdempotent
Inspect

Log reading on the signed-in reader's Siftivo shelves: add a book to want to read (NOT_STARTED), mark it READING, FINISHED or DNF, rate it, or record progress. Suits "add X to my list", "I just finished X, four stars" and "I'm halfway through X". "Finished it, four and a half stars" is one call with readingStatus FINISHED and rating 4.5. The workId comes from search_books. Each field given replaces what the reader had there before, so send a rating or a note only when they asked for that one to change. Omitting readingStatus leaves the book on the shelf it is already on. Needs a linked Siftivo account.

ParametersJSON Schema
NameRequiredDescriptionDefault
notesNoThe reader's own note on the book, private to them
ratingNoStars, 0.5 to 5 in half-star steps
workIdYes
progressNoPercent read, 0 to 100
readingStatusNoThe shelf to put the book on. Omit to leave it where it is, or NOT_STARTED for a book the reader has not opened yet.
get_authorGet an author
Read-only
Inspect

An author's biography and the books Siftivo holds for them, with years. Suits "what else has X written" and "tell me about X". Takes the author's name, an author id, or a siftivo.com slug.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesAn author name, an author id, or a siftivo.com slug
get_bookGet a book
Read-only
Inspect

What one book is about: synopsis, authors, year, series and position, genres, and its siftivo.com page. Suits "what is X about" and "is X part of a series". For a reader who has linked their Siftivo account it also suits "would I like X": when the book fits their taste, the result says why. Takes a workId from search_books, or a siftivo.com slug.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesA Siftivo work id, edition id, or URL slug
get_my_bookGet one book from my library
Read-only
Inspect

Which of up to 25 books the signed-in reader already has on a shelf, and for each one the shelf, their rating and their progress. Takes titles ("Title by Author" resolves best) or workIds. Suits "have I read X", "which of these have I read" and checking a list of book suggestions against what the reader has already read. Titles not in the catalog come back under unmatched. Needs a linked Siftivo account.

ParametersJSON Schema
NameRequiredDescriptionDefault
booksYesWork ids, siftivo.com slugs, or titles, optionally "Title by Author"
get_my_libraryGet my library
Read-only
Inspect

The signed-in reader's Siftivo shelves: what they want to read, are reading, finished or did not finish, with their ratings, progress and private notes. Suits "what am I reading", "what is on my to-read list" and "what have I finished". Filter to one shelf with status. Needs a linked Siftivo account.

ParametersJSON Schema
NameRequiredDescriptionDefault
statusNoFilter to one shelf. Omit for the whole library.
get_my_tasteGet my tasteA
Read-only
Inspect

The signed-in reader's taste: the books, authors, series, genres and moods they love, what they avoid or quit, why each one counts, and how far from their usual taste they like to range. A recommendation for this reader rests on it, so it suits "what should I read next", "recommend me a book", "something I would like" and "what kind of books do I like" when no book or mood is named. The strongest 40 entries come back by default, and limit raises that. Needs a linked Siftivo account. It is the same profile the app's own recommendations use.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMost steering entries to return, strongest first

TDQS

A4.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare this a safe read (readOnlyHint=true, destructiveHint=false, openWorldHint=false), so the safety burden is off the description. It still adds real context: a linked Siftivo account is required, 40 entries return by default, and the data is the same profile the app's own recommendations use — the last point tells the agent the output is authoritative rather than a sample.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded with what the profile contains, then routing conditions, then operational notes. Three dense sentences with no filler, though the opening enumeration is long enough to be slightly heavy for a single-parameter read tool.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

There is no output schema, so the description must characterize the return — and it does, listing the entry types, the ranking (strongest first), the default size, and the reasons attached to each entry. Combined with the account-linking prerequisite, an agent has everything needed to call and interpret this tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% and the single parameter is fully documented with default, min and max, so the schema does the heavy lifting. The description's "strongest 40 entries come back by default, and limit raises that" restates the schema default and ranking order without adding new syntax or format detail.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific resource — the signed-in reader's taste profile — and enumerates its contents (books, authors, series, genres, moods, avoidances, reasons, range). It is clearly distinguishable from siblings like get_my_library or get_reading_index, which cover library holdings and reading activity rather than preference.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives explicit trigger phrasings ("what should I read next", "recommend me a book", "something I would like") and an explicit exclusion: use it only "when no book or mood is named", which implicitly routes the agent to recommend_from_description or recommend_from_titles in the other case. That is genuine when/when-not routing.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_reading_indexGet the Siftivo Reading Index
Read-only
Inspect

The weekly Siftivo Reading Index: the fiction and nonfiction books moving most in cultural circulation this week, ranked, with weeks on the chart and new entries. Suits "what books are popular right now", "what is everyone reading" and "what are the big books this week".

ParametersJSON Schema
NameRequiredDescriptionDefault
weekNoEdition week, YYYY-MM-DD. Omit for the current edition.
get_seriesGet a series
Read-only
Inspect

A book series in reading order: every book with its position and publication year, and whether the series is complete. Suits "what order do the X books go in", "what is book 3 of X" and "is the next X book out". Takes the series name, or a series id from get_book or what_to_read_next.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesA series id, a URL slug, or the series name
recommend_from_descriptionRecommend books from a description
Read-only
Inspect

Book recommendations from a mood, theme or subject in the reader's own words: "cozy fantasy with found family", "a good book about grief", "something light for the beach". Matches on meaning rather than on a title or an author name. For a reader who has linked their Siftivo account, the results leave out books already in their library and books they hid, avoided or recently passed on, and a result that fits their taste says why.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo
isFictionNo
descriptionYesWhat the reader is after, in plain language
recommend_from_titlesRecommend books from titles
Read-only
Inspect

Book recommendations from books the reader already loved, named by title: "books like Project Hail Mary", "I loved Circe and Piranesi, what else would I like", a book club that enjoyed one pick. Titles are resolved against the catalog first, and any that do not resolve are reported back rather than guessed at. Other books by the same authors are left out. For a reader who has linked their Siftivo account, the results leave out books already in their library and books they hid, avoided or recently passed on, and a result that fits their taste says why.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo
titlesYesBook titles, optionally "Title by Author"
isFictionNo
remove_from_libraryRemove a book from my library
DestructiveIdempotent
Inspect

Take a book off the signed-in reader's shelves entirely, discarding its shelf, progress and notes. The reader's rating for the book stays. Suits "take X off my shelves" and "remove X from my list". Moving a book between shelves is add_to_library with a new readingStatus. Needs a linked Siftivo account.

ParametersJSON Schema
NameRequiredDescriptionDefault
workIdYes
search_booksSearch books
Read-only
Inspect

Find a book in the Siftivo catalog by its title or author, or by words from what it is about, and get the workId the other Siftivo tools take. Suits a named book ("add Circe to my list", "what is Babel about", "is Demon Copperhead worth reading") and the book behind a half-remembered plot ("the novel about a man alone in an endless house of statues").

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo
queryYesWords to search for
isFictionNoRestrict to fiction (true) or nonfiction (false)
what_to_read_nextWhat to read next
Read-only
Inspect

What to read after one particular book: the next books in its series, more by the same author, and books that read like it, the same set its siftivo.com page shows. Suits "what should I read after X", "is there a sequel to X" and "more like X". For a reader who has linked their Siftivo account, each list leaves out books already in their library and books they hid, avoided or recently passed on, and a book that fits their taste says why. Takes a workId from search_books.

ParametersJSON Schema
NameRequiredDescriptionDefault
workIdYesA workId from search_books, get_book, or a URL slug

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 4 tool updates
    • Changedget_author1 field changed
      • addedInput schema / properties / id / description
        Added value: +"An author name, an author id, or a siftivo.com slug"
    • Changedget_my_book3 fields changed
      • addedInput schema / properties / books
        Added value: +{
        +  "description": "Work ids, siftivo.com slugs, or titles, optionally \"Title by Author\"",
        +  "items": {
        +    "maxLength": 200,
        +    "minLength": 1,
        +    "type": "string"
        +  },
        +  "maxItems": 25,
        +  "minItems": 1,
        +  "type": "array"
        +}
      • removedInput schema / properties / workId
        Removed value: -{
        -  "minLength": 1,
        -  "type": "string"
        -}
      • changedInput schema / required
        Previous value: -[
        -  "workId"
        -]New value: +[
        +  "books"
        +]
    • Changedget_my_taste2 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • addedInput schema / properties / limit
        Added value: +{
        +  "default": 40,
        +  "description": "Most steering entries to return, strongest first",
        +  "maximum": 500,
        +  "minimum": 1,
        +  "type": "integer"
        +}
    • Changedget_series1 field changed
      • addedInput schema / properties / id / description
        Added value: +"A series id, a URL slug, or the series name"
  2. 1 tool update
    • Addedget_my_taste
  3. 1 tool update
    • Changedadd_to_library4 fields changed
      • changedInput schema / properties / rating / description
        Previous value: -"Whole stars, 1 to 5"New value: +"Stars, 0.5 to 5 in half-star steps"
      • changedInput schema / properties / rating / minimum
        Previous value: -1New value: +0.5
      • addedInput schema / properties / rating / multipleOf
        Added value: +0.5
      • changedInput schema / properties / rating / type
        Previous value: -"integer"New value: +"number"
  4. 1 tool update
    • Changedadd_to_library2 fields changed
      • removedInput schema / properties / readingStatus / default
        Removed value: -"NOT_STARTED"
      • addedInput schema / properties / readingStatus / description
        Added value: +"The shelf to put the book on. Omit to leave it where it is, or NOT_STARTED for a book the reader has not opened yet."
  5. 12 tool updates
    • First observedadd_to_library
    • First observedget_author
    • First observedget_book
    • First observedget_my_book
    • First observedget_my_library
    • First observedget_reading_index
    • First observedget_series
    • First observedrecommend_from_description
    • First observedrecommend_from_titles
    • First observedremove_from_library
    • First observedsearch_books
    • First observedwhat_to_read_next

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    B
    maintenance
    Enables searching for books by title, author, or keyword, retrieving edition details by ISBN, and accessing author profiles and canonical work records through the Open Library API.
    18 npm
    MIT
  • F
    license
    Not graded
    quality
    D
    maintenance
    Enables AI assistants to help users manage their reading experience by searching books, tracking reading progress, managing bookmarks, and generating personalized recommendations and summaries.
    -
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources