MCP Open Library
👁 Trust Score
👁 Listed on Spark
Open Library API用のModel Context Protocol (MCP) サーバーです。AIアシスタントが書籍や著者の情報を検索できるようにします。
概要
このプロジェクトは、AIアシスタントがOpen Libraryと対話するためのツールを提供するMCPサーバーを実装しています。タイトルによる書籍検索、名前による著者検索、Open Libraryキーを使用した詳細な著者情報の取得、Open Library ID (OLID) を使用した著者写真のURL取得が可能です。サーバーは書籍および著者情報について構造化されたデータを返します。
Related MCP server: OpenAI MCP Server
機能
タイトルによる書籍検索: タイトルを使用して書籍を検索します (
get_book_by_title)。名前による著者検索: 名前を使用して著者を検索します (
get_authors_by_name)。著者詳細の取得: Open Libraryキーを使用して特定の著者の詳細情報を取得します (
get_author_info)。著者写真の取得: Open Library ID (OLID) を使用して著者の写真のURLを取得します (
get_author_photo)。書籍カバーの取得: さまざまな識別子 (ISBN, OCLC, LCCN, OLID, ID) を使用して書籍のカバー画像のURLを取得します (
get_book_cover)。IDによる書籍取得: さまざまな識別子 (ISBN, LCCN, OCLC, OLID) を使用して詳細な書籍情報を取得します (
get_book_by_id)。
インストール
Smithery経由でのインストール
Smithery を介してClaude Desktop用のMCP Open Libraryを自動的にインストールするには:
npx -y @smithery/cli install @8enSmith/mcp-open-library --client claude手動インストール
# Clone the repository
git clone https://github.com/8enSmith/mcp-open-library.git
cd mcp-open-library
# Install dependencies
npm install
# Build the project
npm run build使用方法
サーバーの実行
node v22.21.1を使用していることを確認してください(新しいバージョンでも動作する可能性がありますが、このテストではこれを使用しています)。
nvmがインストールされている場合はnvm useを実行してください。mcp-open-libraryのルートディレクトリでnpm run buildを実行します。次に
npm run inspectorを実行します。ビルドが完了したら、MCP_PROXY_AUTH_TOKENクエリ文字列パラメータを含むURLをクリックしてインスペクターを開きます。インスペクターで「STDIO」トランスポートを選択します。
コマンドが 'build/index.js' に設定されていることを確認します。
インスペクターの「Connect」ボタンをクリックすると、サーバーに接続されます。
右上のメニューバーにある「Tools」をクリックします。
ツールを実行してみます(例: get_book_by_title をクリック)。
書籍を検索します(例: タイトルボックスに 'The Hobbit' と入力し、「Run Tool」をクリック)。サーバーが書籍の詳細を返します。
MCPクライアントでの使用
このサーバーはModel Context Protocolを実装しているため、Claude Desktop などのMCP互換のAIアシスタントやクライアントで使用できます。サーバーは以下のツールを公開しています:
get_book_by_title: タイトルで書籍情報を検索get_authors_by_name: 名前で著者情報を検索get_author_info: Open Library Author Keyを使用して特定の著者の詳細情報を取得get_author_photo: Open Library Author ID (OLID) を使用して著者の写真のURLを取得get_book_cover: 特定の識別子 (ISBN, OCLC, LCCN, OLID, または ID) を使用して書籍のカバー画像のURLを取得get_book_by_id: 特定の識別子 (ISBN, LCCN, OCLC, または OLID) を使用して詳細な書籍情報を取得
get_book_by_title の入力例:
{
"title": "The Hobbit"
}get_book_by_title の出力例:
[
{
"title": "The Hobbit",
"authors": [
"J. R. R. Tolkien"
],
"first_publish_year": 1937,
"open_library_work_key": "/works/OL45883W",
"edition_count": 120,
"cover_url": "https://covers.openlibrary.org/b/id/10581294-M.jpg"
}
]get_authors_by_name の入力例:
{
"name": "J.R.R. Tolkien"
}get_authors_by_name の出力例:
[
{
"key": "OL26320A",
"name": "J. R. R. Tolkien",
"alternate_names": [
"John Ronald Reuel Tolkien"
],
"birth_date": "3 January 1892",
"top_work": "The Hobbit",
"work_count": 648
}
]get_author_info の入力例:
{
"author_key": "OL26320A"
}get_author_info の出力例:
{
"name": "J. R. R. Tolkien",
"personal_name": "John Ronald Reuel Tolkien",
"birth_date": "3 January 1892",
"death_date": "2 September 1973",
"bio": "John Ronald Reuel Tolkien (1892-1973) was a major scholar of the English language, specializing in Old and Middle English. He served as the Rawlinson and Bosworth Professor of Anglo-Saxon and later the Merton Professor of English Language and Literature at Oxford University.",
"alternate_names": ["John Ronald Reuel Tolkien"],
"photos": [6791763],
"key": "/authors/OL26320A",
"remote_ids": {
"viaf": "95218067",
"wikidata": "Q892"
},
"revision": 43,
"last_modified": {
"type": "/type/datetime",
"value": "2023-02-12T05:50:22.881"
}
}get_author_photo の入力例:
{
"olid": "OL26320A"
}get_author_photo の出力例:
https://covers.openlibrary.org/a/olid/OL26320A-L.jpgget_book_cover の入力例:
{
"key": "ISBN",
"value": "9780547928227",
"size": "L"
}get_book_cover の出力例:
https://covers.openlibrary.org/b/isbn/9780547928227-L.jpgget_book_cover ツールは以下のパラメータを受け付けます:
key: 識別子のタイプ (ISBN,OCLC,LCCN,OLID, またはIDのいずれか)value: 識別子の値size: オプションのカバーサイズ (Sは小,Mは中,Lは大, デフォルトはL)
get_book_by_id の入力例:
{
"idType": "isbn",
"idValue": "9780547928227"
}get_book_by_id の出力例:
{
"title": "The Hobbit",
"authors": [
"J. R. R. Tolkien"
],
"publishers": [
"Houghton Mifflin Harcourt"
],
"publish_date": "October 21, 2012",
"number_of_pages": 300,
"isbn_13": [
"9780547928227"
],
"isbn_10": [
"054792822X"
],
"oclc": [
"794607877"
],
"olid": [
"OL25380781M"
],
"open_library_edition_key": "/books/OL25380781M",
"open_library_work_key": "/works/OL45883W",
"cover_url": "https://covers.openlibrary.org/b/id/8231496-M.jpg",
"info_url": "https://openlibrary.org/books/OL25380781M/The_Hobbit",
"preview_url": "https://archive.org/details/hobbit00tolkien"
}get_book_by_id ツールは以下のパラメータを受け付けます:
idType: 識別子のタイプ (isbn,lccn,oclc,olidのいずれか)idValue: 識別子の値
Claude Desktopでこのツールが使用されている例を以下に示します:
Docker
Dockerを使用してこのMCPサーバーをテストできます。これを行うには、まず以下を実行します:
docker build -t mcp-open-library .
docker run -p 8080:8080 mcp-open-libraryその後、インスペクターを介してDocker内で実行されているサーバーをテストできます(例:
npm run inspector http://localhost:8080開発
プロジェクト構造
src/index.ts- メインサーバーの実装src/types.ts- TypeScript型定義src/index.test.ts- テストスイート
利用可能なスクリプト
npm run build- TypeScriptコードのビルドnpm run watch- 変更を監視して再ビルドnpm test- テストスイートの実行npm run format- Prettierによるコードのフォーマットnpm run inspector- サーバーに対してMCP Inspectorを実行
テストの実行
npm testコントリビューション
コントリビューションを歓迎します!プルリクエストを気軽に送信してください。
謝辞
Maintenance
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/8enSmith/mcp-open-library'
If you have feedback or need assistance with the MCP directory API, please join our Discord server
