Skip to main content
Glama

mcp-open-library

Открытая библиотека 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

Внося вклад

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

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

Install Server
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

          • -
            security
            F
            license
            -
            quality
            A Model Context Protocol server implementation that enables connection between OpenAI APIs and MCP clients for coding assistance with features like CLI interaction, web API integration, and tool-based architecture.
            Last updated -
            33
            Python
            • Linux
            • Apple
          • -
            security
            A
            license
            -
            quality
            A Model Context Protocol (MCP) based search API server that provides standardized access to Google Maps, Google Flights, Google Hotels and other services. This server enables AI assistants to access various search services through a unified interface.
            Last updated -
            57
            Python
            MIT License
            • Apple
          • A
            security
            F
            license
            A
            quality
            An open-source server implementing the Model Context Protocol (MCP) that enables capturing insights from AI sessions and transforming them into persistent, searchable knowledge accessible across tools.
            Last updated -
            7
            5
            TypeScript
            • Apple
          • -
            security
            A
            license
            -
            quality
            Model Context Protocol (MCP) server that provides AI assistants with advanced web research capabilities, including Google search integration, intelligent content extraction, and multi-source synthesis.
            Last updated -
            52
            3
            TypeScript
            MIT License

          View all related MCP servers

          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