古籍检索服务

书格MCP Server是一个通过Model Context Protocol封装书格公开API的结构化工具,提供古籍搜索、浏览、下载等功能,适用于AI助手直接检索和浏览中国古籍数字图书馆。

  • by Mocooa
  • TypeScript
  • 本地部署
  • 1 星标
  • 更新于
在 GitHub 查看 Mocooa/shuge-mcp-server

使用说明

shuge-mcp-server

书格(shuge.org)MCP Server —— 让 AI 助手直接检索和浏览中国古籍数字图书馆。

书格是一个自由开放的在线古籍图书馆,收录 700+ 部高清古籍资源(PDF),涵盖经、史、子、集四部分类。本项目通过 Model Context Protocol 将书格的公开 API 封装为结构化工具,供 Claude Code、Claude Desktop 等 MCP 客户端调用。

功能

提供 7 个工具:

工具 功能
shuge_search 按关键词搜索古籍
shuge_get_book 获取单本古籍详情(HTML 自动清洗为纯文本)
shuge_list_categories 列出所有分类(四部分类、朝代等)
shuge_browse_category 按分类浏览古籍列表
shuge_get_tags 获取标签列表
shuge_get_download_links 获取古籍 PDF 下载链接
shuge_latest 获取最新发布的古籍

特性

  • HTML → 纯文本:自动清洗 WordPress 富文本,节省 token
  • 分页支持:所有列表工具支持 page + per_page 参数
  • 分类缓存:分类数据内存缓存 30 分钟
  • 内容截断:超长内容优雅截断至 25000 字符
  • 无需认证:书格 API 完全公开

安装

git clone https://github.com/Mocooa/shuge-mcp-server.git
cd shuge-mcp-server
npm install
npm run build

注册到 Claude Code

claude mcp add shuge -- node /path/to/shuge-mcp-server/dist/index.js

注册到 Claude Desktop

编辑 ~/Library/Application Support/Claude/claude_desktop_config.json:

{
  "mcpServers": {
    "shuge": {
      "command": "node",
      "args": ["/path/to/shuge-mcp-server/dist/index.js"]
    }
  }
}

使用示例

注册后重启客户端,即可用自然语言调用:

  • "搜索书格上的山海经"
  • "看看书格最近更新了什么古籍"
  • "列出书格的所有分类"
  • "帮我找到《本草纲目》的下载链接"

技术栈

  • TypeScript + Node.js
  • @modelcontextprotocol/sdk — MCP 协议 SDK
  • stdio 传输(标准 MCP 接入方式)
  • 原生 fetch(Node.js 内置)

数据来源

所有数据来自 书格 的公开 WordPress REST API。本项目仅作为 API 的结构化封装,不存储任何古籍内容。

License

MIT