siftivo

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

使うべきか

品質と安全性

A
説明の品質
92%
スキーマの完全性
88%
命名の品質
95%
ポイズニングのリスク
100%
権限の一致
100%
プロトコルへの準拠
100%

検出事項(2)

  • LOWTool 'get_book' description lacks action verbget_book 内
  • LOWTool 'get_author' description lacks action verbget_author 内

ツール定義とプロトコルへの準拠に関する自動分析に基づいています。

コンテキストコスト

~1,825トークン数(ツール定義)
~841 B一般的なレスポンスサイズ
注意への影響は中程度(128k コンテキストの 1.43%)

これは、サーバーのツールがモデルのコンテキストに読み込まれるたびに消費されるおおよそのトークン数です。数が多いほど、ほかのタスクに使える注意が減ります。

インストール

ワンクリックインストール

これを `claude_desktop_config.json` ファイルに追加してください:

{
  "mcpServers": {
    "siftivo": {
      "url": "https://api.siftivo.com/mcp"
    }
  }
}

リモートエンドポイント

https://api.siftivo.com/mcpstreamable-http

できること

ツール一覧

ツール(12)

🟢 読み取り専用🟡 書き込み🔴 削除⚪ 不明
🟢search_books(query, limit, isFiction)

Keyword search over the Siftivo book catalog. Matches titles, authors, and descriptions. Returns works with the ids other Siftivo tools accept.

入力スキーマ

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "minLength": 1,
      "maxLength": 200,
      "description": "Words to search for"
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 20,
      "default": 10
    },
    "isFiction": {
      "type": "boolean",
      "description": "Restrict to fiction (true) or nonfiction (false)"
    }
  },
  "required": [
    "query"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_book(id)

Full detail for one book: synopsis, authors, series position, genres, and its page on siftivo.com. Accepts a work id, an edition id, or a slug.

入力スキーマ

{
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "minLength": 1,
      "description": "A Siftivo work id, edition id, or URL slug"
    }
  },
  "required": [
    "id"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢what_to_read_next(workId)

Given one book, what to read after it: the next books in its series, more by the same author, and books that read like it. This is the same set the book page on siftivo.com shows.

入力スキーマ

{
  "type": "object",
  "properties": {
    "workId": {
      "type": "string",
      "minLength": 1,
      "description": "A workId from search_books, get_book, or a URL slug"
    }
  },
  "required": [
    "workId"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_author(id)

An author, their biography, and the works Siftivo holds for them. Accepts an author id or slug.

入力スキーマ

{
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "minLength": 1
    }
  },
  "required": [
    "id"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_series(id)

A series and its works in reading order. Accepts a series id or slug.

入力スキーマ

{
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "minLength": 1
    }
  },
  "required": [
    "id"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_reading_index(week)

The weekly Siftivo Reading Index: the fiction and nonfiction books moving most in cultural circulation this week, ranked.

入力スキーマ

{
  "type": "object",
  "properties": {
    "week": {
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
      "description": "Edition week, YYYY-MM-DD. Omit for the current edition."
    }
  },
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢recommend_from_description(description, limit, isFiction)

Describe what someone is in the mood for, in their own words, and get books that match. Use this for a theme, subject or feeling ("books about grief", "cozy mysteries set in Cornwall"). Use search_books instead when you already know the title or author.

入力スキーマ

{
  "type": "object",
  "properties": {
    "description": {
      "type": "string",
      "minLength": 1,
      "maxLength": 300,
      "description": "What the reader is after, in plain language"
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 10,
      "default": 5
    },
    "isFiction": {
      "type": "boolean"
    }
  },
  "required": [
    "description"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢recommend_from_titles(titles, limit, isFiction)

Give Siftivo a few books someone liked, by title, and get books like them. Titles are resolved against the catalog first; anything that does not resolve is reported back rather than guessed at.

入力スキーマ

{
  "type": "object",
  "properties": {
    "titles": {
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 1
      },
      "minItems": 1,
      "maxItems": 10,
      "description": "Book titles, optionally \"Title by Author\""
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 10,
      "default": 5
    },
    "isFiction": {
      "type": "boolean"
    }
  },
  "required": [
    "titles"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_my_library(status)

The signed-in reader's own Siftivo library: what they want to read, are reading, finished, or set down, with their ratings.

入力スキーマ

{
  "type": "object",
  "properties": {
    "status": {
      "type": "string",
      "enum": [
        "NOT_STARTED",
        "READING",
        "FINISHED",
        "DNF"
      ],
      "description": "Filter to one shelf. Omit for the whole library."
    }
  },
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟡add_to_library(workId, readingStatus, rating, progress, notes)

Put a book on one of the signed-in reader's shelves, move it to a different shelf, rate it, or record how far through it they are. Pass a workId from search_books, get_book, or recommend_from_titles. "Finished it, four stars" is one call with readingStatus FINISHED and rating 4.

入力スキーマ

{
  "type": "object",
  "properties": {
    "workId": {
      "type": "string",
      "minLength": 1
    },
    "readingStatus": {
      "type": "string",
      "enum": [
        "NOT_STARTED",
        "READING",
        "FINISHED",
        "DNF"
      ],
      "default": "NOT_STARTED"
    },
    "rating": {
      "type": "integer",
      "minimum": 1,
      "maximum": 5,
      "description": "Whole stars, 1 to 5"
    },
    "progress": {
      "type": "integer",
      "minimum": 0,
      "maximum": 100,
      "description": "Percent read, 0 to 100"
    },
    "notes": {
      "type": "string",
      "maxLength": 2000,
      "description": "The reader's own note on the book, private to them"
    }
  },
  "required": [
    "workId"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_my_book(workId)

Whether the signed-in reader has this book on a shelf, and if so which shelf, their rating and how far through they are. Answers "have I read this?" without pulling the whole library.

入力スキーマ

{
  "type": "object",
  "properties": {
    "workId": {
      "type": "string",
      "minLength": 1
    }
  },
  "required": [
    "workId"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🔴remove_from_library(workId)

Take a book off the signed-in reader's shelves entirely, discarding their rating and progress for it. To move it to a different shelf instead, call add_to_library with a new readingStatus.

入力スキーマ

{
  "type": "object",
  "properties": {
    "workId": {
      "type": "string",
      "minLength": 1
    }
  },
  "required": [
    "workId"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}

コミュニティ

このサーバーを評価する

エビデンス

最近の観測

検証済みバージョンは記録されていませんツール 12 件
検証済みバージョンは記録されていませんツール 12 件