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 claudeManuelle 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 buildVerwendung
Ausführen des Servers
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
nvminstalliert haben, führen Sienvm useaus.Führen Sie im Stammverzeichnis von
mcp-open-libraryden Befehlnpm run buildaus.Führen Sie anschließend
npm run inspectoraus. Klicken Sie nach dem Build auf die URL mit dem AbfrageparameterMCP_PROXY_AUTH_TOKEN, um den Inspector zu öffnen.Wählen Sie im Inspector den Transport 'STDIO'.
Stellen Sie sicher, dass der Befehl auf 'build/index.js' gesetzt ist.
Klicken Sie im Inspector auf die Schaltfläche 'Connect' – Sie werden nun mit dem Server verbunden.
Klicken Sie in der oberen rechten Menüleiste auf 'Tools'.
Versuchen Sie, ein Tool auszuführen, z. B. klicken Sie auf get_book_by_title.
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 Titelsget_authors_by_name: Suche nach Autoreninformationen anhand des Namensget_author_info: Abrufen detaillierter Informationen zu einem bestimmten Autor mithilfe seines Open Library Author Keyget_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.jpgBeispiel 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.jpgDas Tool get_book_cover akzeptiert die folgenden Parameter:
key: Der Typ des Identifikators (einer der folgenden:ISBN,OCLC,LCCN,OLIDoderID)value: Der Wert des Identifikatorssize: Optionale Covergröße (Sfür klein,Mfür mittel,Lfür groß, Standard istL)
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-librarySie können dann den in Docker laufenden Server über den Inspector testen, z. B.:
npm run inspector http://localhost:8080Entwicklung
Projektstruktur
src/index.ts- Hauptserver-Implementierungsrc/types.ts- TypeScript-Typdefinitionensrc/index.test.ts- Test-Suite
Verfügbare Skripte
npm run build- TypeScript-Code bauennpm run watch- Auf Änderungen achten und neu bauennpm test- Test-Suite ausführennpm run format- Code mit Prettier formatierennpm run inspector- MCP Inspector gegen den Server ausführen
Tests ausführen
npm testMitwirken
Beiträge sind willkommen! Bitte zögern Sie nicht, einen Pull Request einzureichen.
Danksagungen
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
