remote-capable server
The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.
Integrations
Referenced in the repository URL for cloning the project.
Used for package management and running scripts.
Used for code formatting in the development workflow.
MCPオープンライブラリ
AI アシスタントが書籍や著者の情報を検索できるようにする Open Library API 用のモデル コンテキスト プロトコル (MCP) サーバー。
概要
このプロジェクトは、AIアシスタントがOpen Libraryと連携するためのツールを提供するMCPサーバーを実装します。タイトルによる書籍情報の検索、著者名による著者検索、Open Libraryキーを使用した著者詳細情報の取得、Open Library ID(OLID)を使用した著者写真のURLの取得が可能です。サーバーは書籍と著者情報の構造化データを返します。
特徴
- タイトルによる書籍検索: タイトルで書籍を検索し、詳細情報を取得します
- 著者名による検索: 著者名で著者を検索し、関連する詳細情報を取得します。
- 構造化レスポンスフォーマット: 書籍と著者の情報を一貫したJSON構造で返します
- エラー処理: 適切な検証とエラー報告
- テスト: Vitestによる包括的なテストカバレッジ
インストール
使用法
サーバーの実行
MCP Inspector を使用してサーバーをテストできます。
MCP Inspectorにアクセスし、ツールをテストします。
MCPクライアントでの使用
このサーバーはモデルコンテキストプロトコル(MCP)を実装しており、MCP対応のAIアシスタントやクライアント(例: Claude Desktop)から利用できます。サーバーは以下のツールを公開しています。
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_by_title
入力例:
get_book_by_title
出力例:
get_authors_by_name
入力例:
get_authors_by_name
出力例:
get_author_info
入力例:
get_author_info
出力例:
get_author_photo
入力例:
get_author_photo
出力例:
Claude Desktop で使用されているこのツールの例は、こちらでご覧いただけます。
ドッカー
このMCPサーバーはDockerを使ってテストできます。まずは以下を実行してください。
その後、インスペクタを使用してDocker内で実行されているサーバーをテストできます。
発達
プロジェクト構造
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インスペクターを実行します
テストの実行
貢献
貢献を歓迎します!お気軽にプルリクエストを送信してください。
謝辞
You must be authenticated.
AI アシスタントが書籍情報を検索できるようにする Open Library API 用の Model Context Protocol (MCP) サーバー。