mcp-open-library

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

Сервер протокола контекста модели (MCP) для API открытой библиотеки, который позволяет помощникам на основе искусственного интеллекта искать информацию о книгах и авторах.

Обзор

Этот проект реализует сервер MCP, который предоставляет инструменты для помощников ИИ для взаимодействия с Open Library . Он позволяет искать информацию о книгах по названию, искать авторов по имени, получать подробную информацию об авторах с использованием их ключа Open Library и получать URL-адреса фотографий авторов с использованием их идентификатора Open Library (OLID). Сервер возвращает структурированные данные для информации о книгах и авторах.

Функции

  • Поиск книг по названию : поиск книг по их названию ( get_book_by_title ).
  • Поиск автора по имени : поиск авторов по имени ( get_authors_by_name ).
  • Получить сведения об авторе : получить подробную информацию об определенном авторе, используя его ключ Open Library ( get_author_info ).
  • Получить фотографию автора : получить URL-адрес фотографии автора, используя его идентификатор Open Library ID (OLID) ( get_author_photo ).
  • Получить обложку книги : получить URL-адрес изображения обложки книги, используя различные идентификаторы (ISBN, OCLC, LCCN, OLID, ID) ( get_book_cover ).
  • Получить книгу по идентификатору : получить подробную информацию о книге, используя различные идентификаторы (ISBN, LCCN, OCLC, OLID) ( get_book_by_id ).

Установка

Установка через Smithery

Чтобы автоматически установить MCP Open Library для Claude Desktop через Smithery :

npx -y @smithery/cli install @8enSmith/mcp-open-library --client claude

Ручная установка

# Clone the repository git clone https://github.com/your-username/mcp-open-library.git cd mcp-open-library # Install dependencies npm install # Build the project npm run build

Использование

Запуск сервера

Для тестирования сервера можно использовать MCP Inspector:

npm run inspector

Откройте MCP Inspector и протестируйте инструмент, например:

Использование с клиентом MCP

Этот сервер реализует протокол контекста модели, что означает, что он может использоваться любым совместимым с MCP помощником или клиентом AI, например, Claude Desktop . Сервер предоставляет следующие инструменты:

  • get_book_by_title : Поиск информации о книге по названию
  • get_authors_by_name : Поиск информации об авторе по имени
  • get_author_info : Получить подробную информацию об авторе, используя его ключ Open Library Author
  • get_author_photo : получить URL-адрес фотографии автора, используя его идентификатор автора Open Library (OLID)
  • get_book_cover : получить URL-адрес изображения обложки книги, используя определенный идентификатор (ISBN, OCLC, LCCN, OLID или ID)
  • 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.jpg

Пример входных данных get_book_cover :

{ "key": "ISBN", "value": "9780547928227", "size": "L" }

Пример вывода get_book_cover :

https://covers.openlibrary.org/b/isbn/9780547928227-L.jpg

Инструмент get_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 можно увидеть здесь:

Докер

Вы можете протестировать этот сервер MCP с помощью Docker. Для этого выполните первый запуск:

docker build -t mcp-open-library . docker run -p 8080:8080 mcp-open-library

Затем вы можете протестировать сервер, работающий в Docker, с помощью инспектора, например:

pnpm 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

Внося вклад

Вклады приветствуются! Пожалуйста, не стесняйтесь отправлять запрос на включение.

Благодарности

You must be authenticated.

A
security – no known vulnerabilities
A
license - permissive license
A
quality - confirmed to work

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.

Сервер протокола контекста модели (MCP) для API открытой библиотеки, который позволяет помощникам на основе искусственного интеллекта искать информацию о книгах.

  1. Обзор
    1. Функции
      1. Установка
        1. Установка через Smithery
        2. Ручная установка
      2. Использование
        1. Запуск сервера
        2. Использование с клиентом MCP
        3. Докер
      3. Разработка
        1. Структура проекта
        2. Доступные сценарии
        3. Проведение тестов
      4. Внося вклад
        1. Благодарности

          Related MCP Servers

          • A
            security
            A
            license
            A
            quality
            A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
            Last updated -
            1
            1,997
            1,526
            TypeScript
            MIT License
            • Apple
          • -
            security
            A
            license
            -
            quality
            A Model Context Protocol (MCP) server implementation for the OpenLedger API. This server provides structured context to AI models according to the MCP specification.
            Last updated -
            8
            TypeScript
            Apache 2.0
          • A
            security
            A
            license
            A
            quality
            A Model Context Protocol server that enables AI assistants to search and access information stored in Kibela, supporting note search, retrieval, creation and updating.
            Last updated -
            6
            107
            9
            TypeScript
            MIT License
          • A
            security
            A
            license
            A
            quality
            A Model Context Protocol server that enables AI assistants like Claude to interact with Outline document services, supporting document searching, reading, creation, editing, and comment management.
            Last updated -
            25
            1
            Python
            MIT License

          View all related MCP servers

          ID: qhkblspta2