关于 Hathitrust
Hathitrust 是查询 HathiTrust 数字化馆藏书目记录的 MCP 服务,面向需要按标准标识符查找藏书与扫描副本的用户。它还标注副本是否可在线阅读全文,并提供相关阅读链接。
主要功能
- 01按多种标准标识符查询记录
- 02查看书目元数据与扫描副本
- 03识别全文可读或仅可检索副本
- 04查询全文可读副本及阅读链接
适用场景
- 01用 ISBN 或 OCLC 号查找馆藏
- 02核对扫描副本的访问权限
- 03查找可在线阅读的副本
MCP 相关
向 MCP 客户端提供按标识符查询、获取书目记录和检查全文可读状态的工具。可通过 Pipeworx 网关连接,或作为本地 stdio MCP 服务运行;网关访问需要账户。
配置
远程服务无需本地安装。选择你使用的客户端,复制配置或使用一键安装。
https://gateway.pipeworx.io/hathitrust/mcpclaude mcp add --transport http pipeworx-io-hathitrust https://gateway.pipeworx.io/hathitrust/mcp{"mcpServers":{"pipeworx-io-hathitrust":{"type":"http","url":"https://gateway.pipeworx.io/hathitrust/mcp"}}}在 Cursor 中打开{"servers":{"pipeworx-io-hathitrust":{"type":"http","url":"https://gateway.pipeworx.io/hathitrust/mcp"}}}在 VS Code 中打开{"mcpServers":{"pipeworx-io-hathitrust":{"type":"http","url":"https://gateway.pipeworx.io/hathitrust/mcp"}}}{"mcpServers":{"pipeworx-io-hathitrust":{"serverUrl":"https://gateway.pipeworx.io/hathitrust/mcp"}}}命令在终端中运行;JSON 粘贴到对应客户端的 MCP 配置后重启。需要授权的服务会在首次连接时提示登录。
工具
详细介绍
@pipeworx/hathitrust
按标准标识符(OCLC、LCCN、ISSN、ISBN、HathiTrust 项目 ID、目录记录编号)查询 HathiTrust 的数字化图书馆藏:返回书目记录以及每份扫描副本,并标明是全文可读(可在线阅读)还是受限(仅可搜索)。
属于 Pipeworx — 一个将 AI Agent 连接到 1881+ 个实时数据源的 MCP 网关。这是独立的非官方集成,与上游提供方无关联、未获其认可,也非由其发布。
工具
lookup_by_identifier(id_type, id):查询一个标识符对应的记录和扫描副本。get_record(record_number):获取一条包含完整书目元数据的目录记录。check_full_view(id_type, id):查询是否存在可读副本,并返回阅读链接。
身份验证
上游无需密钥,但只有 Pipeworx 账户可用。清单条目包含
accountOnly: true,因此网关会拒绝匿名调用方以及仅发送 X-API-Key(自带密钥但无账户)的调用方,并返回 account_required 及指向 https://pipeworx.io/signup?via=hathitrust 的链接。OAuth 和付费 Bearer 令牌账户、x402 付款方及内部流量(X-Pipeworx-Internal,因此也包括监控流量)仍可完全访问。拒绝发生在 pack 运行之前,因此被拒绝的调用方不会向 HathiTrust 发出请求。
原因(Bruce 于 2026-10-13 裁定,fleet #2964):一个约有 171k 个 IP 的住宅代理池通过 REST
/v1/tools/lookup_by_identifier 使用 OCLC 编号枚举 HathiTrust 目录,每小时约发起 600k 次调用,且每个 IP 都未超过其单 IP 限制。该 pack 每天约收到 2 次真实调用。单 IP 限制无法阻止这种模式,而 X-API-Key 从未经过验证,因此也不能作为身份凭据。风险在于 HathiTrust 会屏蔽所有调用方使用的出口流量。账户是无法批量创建的最廉价身份凭据。
取消此限制只需修改一行清单(删除 accountOnly),然后运行
node scripts/sync-pack-manifest.mjs。请先询问 Bruce。限制逻辑本身位于
workers/gateway/src/account-only.ts。
数据源
- HathiTrust Digital Library,Bibliographic API:目录记录和每份副本的权利代码。
快速开始
添加到你的 MCP 客户端(Claude Desktop、Cursor、Windsurf 等):
{
"mcpServers": {
"hathitrust": {
"url": "https://gateway.pipeworx.io/hathitrust/mcp"
}
}
}
此端点实际提供的内容
https://gateway.pipeworx.io/hathitrust/mcp 上的 tools/list 会返回上表中的工具,以及 Pipeworx 共享元工具 — ask_pipeworx、
discover_tools、search_within、remember/recall 及其他网关通用工具。因此,你看到的工具数量会多于此表:单个 pack 端点目前会同时列出约 30 个共享工具和该 pack 自有的工具。连接的 initialize 响应会说明其确切范围,并且是特定日期下的权威答案。
这是有意为之,并非意外的多路复用。元工具让限定范围的连接也能回答此 pack 未涵盖的问题 — 通过可跨整个目录路由的
ask_pipeworx — 无需再添加第二个 MCP 服务。目前无法挂载不带这些元工具的 pack 端点;如果额外的 schema 消耗的上下文多于路由功能带来的收益,请连接一次完整网关,而不是连接多个 pack 端点。
也可以连接完整的 Pipeworx 网关,直接列出所有 pack 的工具,而不仅仅是此 pack 的工具:
{
"mcpServers": {
"pipeworx": {
"url": "https://gateway.pipeworx.io/mcp"
}
}
}
两个 URL 都连接到同一个网关和相同的 1881+ 个数据源。唯一的区别是哪些 pack 的工具会被直接列出;无论连接哪一个,ask_pipeworx 都能访问所有工具。
没有 MCP 客户端?通过 HTTP 调用
curl -X POST https://gateway.pipeworx.io/v1/tools/lookup_by_identifier \
-H 'Content-Type: application/json' \
-d '{"id_type":"isbn","id":"9780030110405"}'
首次调用无需账户。查看任意工具:GET https://gateway.pipeworx.io/v1/tools/lookup_by_identifier。查找工具:使用 {"query":"..."} 调用 POST https://gateway.pipeworx.io/v1/tools/search_packs。
独立运行(无需网关账户)
此软件包也可作为本地 stdio MCP 服务运行,无需 Pipeworx 账户,也无需经过网关往返:
{
"mcpServers": {
"hathitrust": {
"command": "npx",
"args": ["-y", "@pipeworx/mcp-hathitrust"]
}
}
}
也可以直接运行,确认它能正常启动:
npx -y @pipeworx/mcp-hathitrust
它通过 stdin/stdout 使用 MCP 通信,并针对仅限此软件包的工具响应 initialize/tools/list/tools/call——不包含上方网关连接所添加的任何共享元工具。相同的源代码,相同的工具,无需 ask_pipeworx 路由。
使用 ask_pipeworx
你也可以用通俗的英语提问,而不是直接调用工具——这既适用于上方的软件包端点,也适用于完整网关:
ask_pipeworx({ question: "your question about Hathitrust data" })
网关会选择合适的工具并自动填写参数。
更多信息
许可证
MIT
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。