Token导航 LogoToken导航TokenDH.com
MCP Open Library logo
AI代理stdio官方级别未说明来源级核验

MCP Open Library

MCP Server

@smithery/cli

一个基于Model Context Protocol (MCP)的服务,提供图书和作者信息的查询功能,适用于AI助手集成。

工具数

6

提示词数

0

GitHub Stars

71

资源数

0
TypeScriptClaudeAPI集成Claude DesktopClaude

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

8enSmith

提供方

8enSmith

最后核验

2026/5/17 20:21

运行时

Node.js

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

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

详细介绍

MCP开放库

![Trust Score](https://archestra.ai/mcp-catalog/8ensmith__mcp-open-library) ![Listed on Spark](https://spark.entire.vc/assets/vb-mcp-open-library?utm_source=github&utm_medium=readme) ](https://smithery.ai/server/@8enSmith/mcp-open-library)

用于开放库API的模型上下文协议(MCP)服务器,使人工智能助手能够搜索书籍和作者信息。

概述

该项目实现了一个MCP服务器,为AI助手提供了与 开放图书馆。它允许按标题搜索图书信息,按姓名搜索作者,使用Open Library密钥检索详细的作者信息,并使用Open Library ID(OLID)获取作者照片的URL。服务器返回书籍和作者信息的结构化数据。

特性

  • 按标题搜索书籍:使用书名搜索书籍(get_book_by_title).
  • 按姓名搜索作者:使用作者姓名搜索作者(get_authors_by_name).
  • 获取作者详细信息:使用特定作者的Open Library密钥检索其详细信息(get_author_info).
  • 获取作者照片:使用作者的开放库ID(OLID)获取作者照片的URL(get_author_photo).
  • 获取书籍封面:使用各种标识符(ISBN、OCLC、LCCN、OLID、ID)获取书籍封面图像的URL(get_book_cover).
  • 按ID获取图书:使用各种标识符(ISBN、LCCN、OCLC、OLID)检索详细的图书信息(get_book_by_id).

安装

通过史密瑟里安装

通过以下方式自动安装MCP Open Library for Claude Desktop 史密瑟里:

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

手动安装

# 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

用法

运行服务器

  1. 确保您运行的是node v22.21.1(它可能适用于较新版本的node,但这是我用于此测试的)。如果你有 nvm 已安装运行 nvm use.
  2. mcp-open-library 根目录运行 npm run build
  3. 下次运行 npm run inspector。构建完成后,单击带有 MCP_PROXY_AUTH_TOKEN 查询字符串参数以打开检查器。
  4. 在检查器中,选择“STDIO”传输
  5. 确保命令设置为“build/index.js”
  6. 单击检查器中的“连接”按钮-您现在将连接到服务器
  7. 单击右上角菜单栏中的“工具”
  8. 尝试运行一个工具,例如单击get_book_by_title
  9. 搜索一本书,例如在标题框中输入“霍比特人”,然后单击“运行工具”。服务器将返回图书详细信息。

与MCP客户端一起使用

该服务器实现了模型上下文协议,这意味着它可以由任何兼容MCP的AI助手或客户端使用,例如。 克劳德桌面。服务器公开以下工具:

  • get_book_by_title:按标题搜索图书信息
  • get_authors_by_name:按姓名搜索作者信息
  • get_author_info:使用开放库作者密钥获取特定作者的详细信息
  • get_author_photo:使用作者的开放库作者ID(OLID)获取作者照片的URL
  • get_book_cover:使用特定标识符(ISBN、OCLC、LCCN、OLID或ID)获取书籍封面图像的URL
  • 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中使用的此工具的示例:

码头工人

您可以使用Docker测试此MCP服务器。要进行首次运行,请执行以下操作:

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

然后,您可以通过检查器测试在Docker中运行的服务器,例如。

npm 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检查器

运行测试

npm test

贡献

欢迎投稿!请随时提交拉取请求。

致谢

目录标签

目录标签

TypeScriptClaudeAPI集成图书查询本地部署作者信息API服务MCP协议OpenLibrary

支持客户端

Claude DesktopClaude

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

none

运行时(runtime,运行环境)

Node.js

部署方式(deploymentType,部署类型)

remote-capable

来源包(packageName,安装包名)

@smithery/cli

工具数量(toolCount,工具数)

6

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdiononeremote-capable

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP