{"_id":"@dhcckb/wenxianxue-mcp","_rev":"2-8e61db54c1f896c35c5ba605f4faadbf","name":"@dhcckb/wenxianxue-mcp","dist-tags":{"latest":"1.1.0"},"versions":{"1.0.0":{"name":"@dhcckb/wenxianxue-mcp","version":"1.0.0","keywords":["mcp","wenxianxue","digital-humanities","chinese-classics","literature-resources"],"license":"MIT","_id":"@dhcckb/wenxianxue-mcp@1.0.0","maintainers":[{"name":"thudh","email":"tangchen@mail.tsinghua.edu.cn"}],"bin":{"wenxianxue-mcp":"dist/index.js"},"mcp":{"tools":[{"name":"wenxianxue_search_resources","description":"按关键词（必填）和分类（选填）在奎章阁（wenxianxue.cn）搜索数字人文资源，返回匹配的资源列表 JSON。不做精确过滤，将所有查询到的条目全部返回。可选分类：古籍影像、古籍全文、古籍目录、鉴定工具、数字人文、期刊论著、收费平台、论坛社区、小学专题、释道专题、敦煌专题、虚拟现实。当用户需求模糊时，由调用方模型判断并生成若干备选关键词分别调用本工具。","inputSchema":{"type":"object","required":["keyword"],"properties":{"keyword":{"type":"string","description":"搜索关键词"},"category":{"type":"string","description":"可选分类筛选，支持：古籍影像、古籍全文、古籍目录、鉴定工具、数字人文、期刊论著、收费平台、论坛社区、小学专题、释道专题、敦煌专题、虚拟现实"}}}},{"name":"wenxianxue_get_resource_detail","description":"根据资源 URL 抓取详情页，提取标题、网址、主办者、基本介绍四项结构化信息并以 JSON 返回。","inputSchema":{"type":"object","required":["url"],"properties":{"url":{"type":"string","description":"资源详情页的完整 URL（如 https://wenxianxue.cn/daohang/707.html）"}}}}]},"dist":{"shasum":"62113a625870b757223e1f56d23e76b2af51dd4e","tarball":"https://registry.npmjs.org/@dhcckb/wenxianxue-mcp/-/wenxianxue-mcp-1.0.0.tgz","fileCount":34,"integrity":"sha512-Viwgc1+GVpQ94NGI9EjTDvOSzT2NxwjisPssWb2kTZL0x/ckpYAbltHXHMNpWPbUqUOZdVyIVsx8xVxWqca3iw==","signatures":[{"sig":"MEYCIQCy10Iy1zoQoZHcaV5Saoh79CpfkhnPY/X2cW0wJfarngIhAMLLPxpSSDNqMYEbvBQwQ0fKaYRd9w5aXbcDGPzgvY8v","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":50953},"main":"dist/index.js","_from":"file:/tmp/dhp-agent-npm-KiMDla/package.tgz","types":"./dist/index.d.ts","engines":{"node":">=18"},"scripts":{"build":"tsc","start":"node dist/index.js"},"_npmUser":{"name":"thudh","email":"tangchen@mail.tsinghua.edu.cn"},"_resolved":"/tmp/dhp-agent-npm-KiMDla/package.tgz","_integrity":"sha512-Viwgc1+GVpQ94NGI9EjTDvOSzT2NxwjisPssWb2kTZL0x/ckpYAbltHXHMNpWPbUqUOZdVyIVsx8xVxWqca3iw==","_npmVersion":"10.9.1","description":"奎章阁（wenxianxue.cn）数字人文资源检索 MCP Server — 支持按关键词搜索资源列表和抓取资源详情页的结构化信息","directories":{},"_nodeVersion":"22.22.2","dependencies":{"zod":"^3.23.0","axios":"^1.7.0","cheerio":"^1.0.0","@modelcontextprotocol/sdk":"^1.0.0"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.4.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/wenxianxue-mcp_1.0.0_1785220653267_0.4515430421104354","host":"s3://npm-registry-packages-npm-production"}},"1.1.0":{"name":"@dhcckb/wenxianxue-mcp","version":"1.1.0","description":"奎章阁（wenxianxue.cn）数字人文资源检索 MCP Server — 支持模糊关键词全资源检索（分类作为关键词维度之一），模型侧自动进行同义词扩展，所有检索限定在「搜资源」标签页范围内。","main":"dist/index.js","bin":{"wenxianxue-mcp":"dist/index.js"},"scripts":{"build":"tsc","start":"node dist/index.js"},"mcp":{"tools":[{"name":"search_resources","description":"在「搜资源」范围内，根据关键词数组进行模糊匹配检索。关键词同时匹配资源的标题、描述、标签以及所属分类名称。多个关键词之间为 OR 关系，结果按匹配度（命中关键词数量）降序排列并去重。当用户提及分类名（如「数字人文」、「书法」）时，模型应将该分类名作为关键词之一传入，而非单独指定 category 参数。模型调用前应先分析用户问题，提取核心概念词，并补充常见同义词/近义词后一并传入 keywords 数组。","inputSchema":{"type":"object","properties":{"keywords":{"type":"array","items":{"type":"string"},"description":"从用户提问中提取并扩展同义/近义词后的关键词列表，可包含分类名、主题词、专有名词等"},"limit":{"type":"number","description":"返回结果数量上限，默认 20"},"offset":{"type":"number","description":"分页偏移量，默认 0"}},"required":["keywords"]}},{"name":"list_categories","description":"列出平台中所有可用的资源分类名称。模型可据此判断用户提到的某个词是否恰好对应一个已有分类，从而决定是否将其纳入 keywords 数组。该工具为辅助性质，不直接参与检索。","inputSchema":{"type":"object","properties":{}}},{"name":"get_resource_detail","description":"根据资源 URL 抓取详情页，提取标题、网址、主办者、基本介绍四项结构化信息并以 JSON 返回。","inputSchema":{"type":"object","properties":{"url":{"type":"string","description":"资源详情页的完整 URL（如 https://wenxianxue.cn/daohang/707.html）"}},"required":["url"]}}]},"keywords":["mcp","wenxianxue","digital-humanities","chinese-classics","literature-resources"],"license":"MIT","engines":{"node":">=18"},"dependencies":{"@modelcontextprotocol/sdk":"^1.0.0","axios":"^1.7.0","cheerio":"^1.0.0","zod":"^3.23.0"},"devDependencies":{"@types/node":"^20.0.0","typescript":"^5.4.0"},"_id":"@dhcckb/wenxianxue-mcp@1.1.0","types":"./dist/index.d.ts","_integrity":"sha512-iT09YVTHYSzYIEc06tFhDfKioHgIwP+FRbcoaQ0LYeDg4Z7TCqjVgMx/YlxSjpYGnK2qZ78EJLEjlye3qZRipg==","_resolved":"/tmp/dhp-agent-npm-AFikkD/package.tgz","_from":"file:/tmp/dhp-agent-npm-AFikkD/package.tgz","_nodeVersion":"22.22.2","_npmVersion":"10.9.1","dist":{"integrity":"sha512-iT09YVTHYSzYIEc06tFhDfKioHgIwP+FRbcoaQ0LYeDg4Z7TCqjVgMx/YlxSjpYGnK2qZ78EJLEjlye3qZRipg==","shasum":"2d9a86c54a2610815f4cb32035a5235db0cd4136","tarball":"https://registry.npmjs.org/@dhcckb/wenxianxue-mcp/-/wenxianxue-mcp-1.1.0.tgz","fileCount":38,"unpackedSize":62189,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQCJzN8RG1orWe1LxSkN8t+VlLO1qCYOamYQimeqSaWnogIhAPq2pZKSsd+/2zW97VvL0Dlmim/xk4EDm+/iuQA2dL1N"}]},"_npmUser":{"name":"thudh","email":"tangchen@mail.tsinghua.edu.cn"},"directories":{},"maintainers":[{"name":"thudh","email":"tangchen@mail.tsinghua.edu.cn"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/wenxianxue-mcp_1.1.0_1785726912623_0.7315457358556368"},"_hasShrinkwrap":false}},"time":{"created":"2026-07-28T06:37:33.106Z","modified":"2026-08-03T03:15:12.932Z","1.0.0":"2026-07-28T06:37:33.414Z","1.1.0":"2026-08-03T03:15:12.769Z"},"license":"MIT","keywords":["mcp","wenxianxue","digital-humanities","chinese-classics","literature-resources"],"description":"奎章阁（wenxianxue.cn）数字人文资源检索 MCP Server — 支持模糊关键词全资源检索（分类作为关键词维度之一），模型侧自动进行同义词扩展，所有检索限定在「搜资源」标签页范围内。","maintainers":[{"name":"thudh","email":"tangchen@mail.tsinghua.edu.cn"}],"readme":"# 奎章阁数字人文资源检索 MCP Server\n\n从[奎章阁（wenxianxue.cn）](https://wenxianxue.cn)检索数字人文资源，支持模糊关键词全资源检索，模型侧自动进行同义词扩展，所有检索限定在「搜资源」标签页范围内。\n\n## 核心设计理念\n\n**分类即关键词** — 资源分类不再作为独立的限定筛选条件，而是视为关键词的一个维度。例如用户询问\"数字人文\"相关，则直接将\"数字人文\"作为关键词传入 search_resources，而非指定 category 参数。\n\n**模糊匹配、非精确检索** — 所有关键词匹配为 LIKE/包含匹配（如输入\"数字\"可匹配到\"数字人文\"分类下的资源）。\n\n**模型侧同义词扩展** — 同义词/近义词扩展由调用方模型（Client 端）在调用 search_resources 前完成，然后一并传入 keywords 数组。\n\n## 工具\n\n### search_resources\n\n在「搜资源」范围内，根据关键词数组进行模糊匹配检索。关键词同时匹配资源的标题、描述、标签以及所属分类名称。多个关键词之间为 OR 关系，结果按匹配度（命中关键词数量）降序排列并去重。\n\n**参数：**\n- `keywords`（必填）：关键词数组，由模型从用户提问中提取并扩展同义/近义词后传入\n- `limit`（选填）：返回结果数量上限，默认 20\n- `offset`（选填）：分页偏移量，默认 0\n\n**最佳实践：**\n- 用户问\"数字人文\" → keywords: [\"数字人文\"]\n- 用户问\"书法\" → keywords: [\"书法\"]\n- 用户问\"古籍数字化\" → keywords: [\"古籍数字化\", \"古籍\", \"数字化\", \"文献数字化\"]\n- 用户问\"数字人文相关的古籍全文资源\" → keywords: [\"数字人文\", \"古籍全文\", \"古籍\"]\n\n### list_categories\n\n列出平台中所有可用资源分类名称的辅助工具。模型可据此判断用户提到的某个词是否恰好对应已有分类。\n\n**参数：** 无\n\n### get_resource_detail\n\n根据资源 URL 抓取详情页的结构化信息。\n\n**参数：**\n- `url`（必填）：资源详情页的完整 URL（如 `https://wenxianxue.cn/daohang/707.html`）\n\n**返回字段：**\n- `title`：资源标题\n- `url`：资源网址\n- `organizer`：主办者（可能为空）\n- `description`：基本介绍\n\n## 使用方式\n\n```bash\nnpx -y @dhcckb/wenxianxue-mcp\n```\n\n## 系统要求\n\n- Node.js >= 18\n\n## 可用分类\n\n古籍影像、古籍全文、古籍目录、鉴定工具、数字人文、期刊论著、收费平台、论坛社区、小学专题、释道专题、敦煌专题、虚拟现实\n","readmeFilename":"README.md"}