VOOZH about

URL: https://glama.ai/mcp/servers/8enSmith/mcp-open-library?locale=de-DE

⇱ mcp-open-library by 8enSmith | Glama


MCP Open Library

👁 Trust Score
👁 Listed on Spark

Ein Model Context Protocol (MCP)-Server für die Open Library API, der es KI-Assistenten ermöglicht, nach Buch- und Autoreninformationen zu suchen.

Übersicht

Dieses Projekt implementiert einen MCP-Server, der Tools für KI-Assistenten bereitstellt, um mit der Open Library zu interagieren. Er ermöglicht die Suche nach Buchinformationen anhand des Titels, die Suche nach Autoren anhand des Namens, das Abrufen detaillierter Autoreninformationen mithilfe ihres Open Library-Schlüssels sowie das Abrufen von URLs für Autorenfotos mithilfe ihrer Open Library ID (OLID). Der Server liefert strukturierte Daten für Buch- und Autoreninformationen zurück.

Related MCP server: OpenAI MCP Server

Funktionen

  • Buchsuche nach Titel: Suche nach Büchern anhand ihres Titels (get_book_by_title).

  • Autorensuche nach Name: Suche nach Autoren anhand ihres Namens (get_authors_by_name).

  • Autorendetails abrufen: Abrufen detaillierter Informationen zu einem bestimmten Autor mithilfe seines Open Library-Schlüssels (get_author_info).

  • Autorenfoto abrufen: Abrufen der URL für das Foto eines Autors mithilfe seiner Open Library ID (OLID) (get_author_photo).

  • Buchcover abrufen: Abrufen der URL für das Coverbild eines Buches mithilfe verschiedener Identifikatoren (ISBN, OCLC, LCCN, OLID, ID) (get_book_cover).

  • Buch nach ID abrufen: Abrufen detaillierter Buchinformationen mithilfe verschiedener Identifikatoren (ISBN, LCCN, OCLC, OLID) (get_book_by_id).

Installation

Installation über Smithery

Um MCP Open Library für Claude Desktop automatisch über Smithery zu installieren:

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

Manuelle Installation

# 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

Verwendung

Ausführen des Servers

  1. Stellen Sie sicher, dass Sie Node v22.21.1 verwenden (es funktioniert wahrscheinlich auch mit einer neueren Node-Version, aber diese verwende ich für diesen Test). Wenn Sie nvm installiert haben, führen Sie nvm use aus.

  2. Führen Sie im Stammverzeichnis von mcp-open-library den Befehl npm run build aus.

  3. Führen Sie anschließend npm run inspector aus. Klicken Sie nach dem Build auf die URL mit dem Abfrageparameter MCP_PROXY_AUTH_TOKEN, um den Inspector zu öffnen.

  4. Wählen Sie im Inspector den Transport 'STDIO'.

  5. Stellen Sie sicher, dass der Befehl auf 'build/index.js' gesetzt ist.

  6. Klicken Sie im Inspector auf die Schaltfläche 'Connect' – Sie werden nun mit dem Server verbunden.

  7. Klicken Sie in der oberen rechten Menüleiste auf 'Tools'.

  8. Versuchen Sie, ein Tool auszuführen, z. B. klicken Sie auf get_book_by_title.

  9. Suchen Sie nach einem Buch, z. B. geben Sie im Titelfeld 'The Hobbit' ein und klicken Sie dann auf 'Run Tool'. Der Server gibt daraufhin die Buchdetails zurück.

Verwendung mit einem MCP-Client

Dieser Server implementiert das Model Context Protocol, was bedeutet, dass er von jedem MCP-kompatiblen KI-Assistenten oder Client verwendet werden kann, z. B. Claude Desktop. Der Server stellt die folgenden Tools bereit:

  • get_book_by_title: Suche nach Buchinformationen anhand des Titels

  • get_authors_by_name: Suche nach Autoreninformationen anhand des Namens

  • get_author_info: Abrufen detaillierter Informationen zu einem bestimmten Autor mithilfe seines Open Library Author Key

  • get_author_photo: Abrufen der URL für das Foto eines Autors mithilfe seiner Open Library Author ID (OLID)

  • get_book_cover: Abrufen der URL für das Coverbild eines Buches mithilfe eines bestimmten Identifikators (ISBN, OCLC, LCCN, OLID oder ID)

  • get_book_by_id: Abrufen detaillierter Buchinformationen mithilfe eines bestimmten Identifikators (ISBN, LCCN, OCLC oder OLID)

Beispiel für get_book_by_title Eingabe:

{
 "title": "The Hobbit"
}

Beispiel für get_book_by_title Ausgabe:

[
 {
 "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"
 }
]

Beispiel für get_authors_by_name Eingabe:

{
 "name": "J.R.R. Tolkien"
}

Beispiel für get_authors_by_name Ausgabe:

[
 {
 "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
 }
]

Beispiel für get_author_info Eingabe:

{
 "author_key": "OL26320A"
}

Beispiel für get_author_info Ausgabe:

{
 "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"
 }
}

Beispiel für get_author_photo Eingabe:

{
 "olid": "OL26320A"
}

Beispiel für get_author_photo Ausgabe:

https://covers.openlibrary.org/a/olid/OL26320A-L.jpg

Beispiel für get_book_cover Eingabe:

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

Beispiel für get_book_cover Ausgabe:

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

Das Tool get_book_cover akzeptiert die folgenden Parameter:

  • key: Der Typ des Identifikators (einer der folgenden: ISBN, OCLC, LCCN, OLID oder ID)

  • value: Der Wert des Identifikators

  • size: Optionale Covergröße (S für klein, M für mittel, L für groß, Standard ist L)

Beispiel für get_book_by_id Eingabe:

{
 "idType": "isbn",
 "idValue": "9780547928227"
}

Beispiel für get_book_by_id Ausgabe:

{
 "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"
}

Das Tool get_book_by_id akzeptiert die folgenden Parameter:

  • idType: Der Typ des Identifikators (einer der folgenden: isbn, lccn, oclc, olid)

  • idValue: Der Wert des Identifikators

Ein Beispiel für die Verwendung dieses Tools in Claude Desktop finden Sie hier:

Docker

Sie können diesen MCP-Server mit Docker testen. Führen Sie dazu zuerst Folgendes aus:

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

Sie können dann den in Docker laufenden Server über den Inspector testen, z. B.:

npm run inspector http://localhost:8080

Entwicklung

Projektstruktur

  • src/index.ts - Hauptserver-Implementierung

  • src/types.ts - TypeScript-Typdefinitionen

  • src/index.test.ts - Test-Suite

Verfügbare Skripte

  • npm run build - TypeScript-Code bauen

  • npm run watch - Auf Änderungen achten und neu bauen

  • npm test - Test-Suite ausführen

  • npm run format - Code mit Prettier formatieren

  • npm run inspector - MCP Inspector gegen den Server ausführen

Tests ausführen

npm test

Mitwirken

Beiträge sind willkommen! Bitte zögern Sie nicht, einen Pull Request einzureichen.

Danksagungen

A
license - permissive license
A
quality
A
maintenance

Maintenance

Maintainers
1dResponse time
6moRelease cycle
2Releases (12mo)
Commit activity
Issues opened vs closed

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