mcpField
D
Dhamma.Gift — Pāli Canon

Dhamma.Gift — Pāli Canon

远程服务
dhamma.gift搜索与检索11 天前更新

关于 Dhamma.Gift — Pāli Canon

Dhamma.Gift 的 Node.js 后端,用于搜索和阅读巴利经典,面向需要查阅原文及俄语、英语译文的读者。它采用 SQLite/FTS5 索引,并支持分段链接和离线镜像数据。

主要功能

  1. 01使用 SQLite/FTS5 搜索经典
  2. 02提供经典文本阅读路由
  3. 03支持分段链接与滚动定位
  4. 04兼容离线镜像数据
  5. 05保留旧版 PHP/Apache 兼容层

适用场景

  1. 01按词语检索巴利经典
  2. 02打开经典全文或指定段落
  3. 03使用离线镜像部署文本数据

配置

远程服务无需本地安装。选择你使用的客户端,复制配置或使用一键安装。

服务地址https://api.dhamma.gift/mcp
一键复制安装命令
Claude CodeTerminal
Cursor.cursor/mcp.json
VS Code.vscode/mcp.json
Claude Desktopclaude_desktop_config.json
Windsurf~/.codeium/windsurf/mcp_config.json

命令在终端中运行;JSON 粘贴到对应客户端的 MCP 配置后重启。需要授权的服务会在首次连接时提示登录。

工具

详细介绍

dg-node

用于搜索和阅读巴利圣典文本的 Node.js 后端,使用 SuttaCentral Bilara 和 DhammaGift 译文。

本项目为旧版 Dhamma.Gift 技术栈提供搜索索引、阅读器端点、静态资源和兼容层。生产服务器使用 Fastify;较旧的 Express 实现仅为兼容旧版而保留。

架构和开发规则:CLAUDE.md

功能

  • 使用 SQLite/FTS5 搜索巴利圣典
  • 阅读器路由支持 /dn22 和 /dn22:12.1 等简洁 URL
  • 支持按段落生成链接和滚动定位
  • 支持离线镜像数据和基于环境的路径解析
  • 兼容较旧的 PHP/Apache 前端

快速开始

git pull
npm install
npm run build-search-db   # build dg.db (SQLite/FTS5) from fresh Bilara data
npm start                 # run the production server (dg-fastify.js), port 3000

每当源文本或译文在磁盘上发生变化时,都应重新运行 build-search-db。服务器直接从磁盘读取数据,并按需重建搜索索引。

SC_BILARA、DG_OFFLINE 和离线镜像等数据路径会根据运行环境(Termux、Windows 开发环境、本地服务器等)自动解析。

unused/dg-light.js 和 unused/dblight.js(npm run start:express)是旧版 Express + grep 服务,生产环境不会使用。详情请参阅 CLAUDE.md。

部署检查

curl "http://localhost:3000/search?q=kacchapa&scope=dhamma&langs=ru,en"
curl -I "http://localhost:3000/assets/js/datatables/datatables.min.js"   # 200 from public/overrides/js/datatables, not from the legacy repo
curl -I "http://localhost:3000/dn22"                                  # reader via clean URL
curl -I "http://localhost:3000/dn22:10.5"                             # segment link (scroll to 10.5)

手动浏览器检查:

  • /nodejs/res/?q=kacchapa&scope=dhamma — 搜索、DataTables、导出
  • /dn22 — 全文阅读器
  • 巴利语 / 俄语切换(三种模式:巴利语 + 译文 → 仅巴利语 → 仅译文)——应能正确隐藏/显示内容
  • /?q=dn22#12.1(旧版格式)——应与 /dn22:12.1 一样继续正常工作

Apache/PHP 部署说明

如果公开的 Dhamma.Gift 网站目前由 Apache/PHP 托管,而 Node 作为独立后端运行,且仅代理 /search,请注意以下事项:

  • 搜索请求可能会路由到 Node 后端
  • 静态文件和阅读器路由仍可能由 Apache/PHP 提供
  • 根域名路由可能与本地开发环境不同
  • dg-fastify 是现代后端,而旧版 PHP 页面仍并行保留以确保兼容性

项目结构

dg-fastify.js         — production server (Fastify + SQLite/FTS5, dg.db): /search, /api/text/:suttaId,
                         static files (search/, reader/, siteroot/assets/), offline mirrors,
                         clean URLs (/dn22, /dn22:12.1)
unused/dg-light.js    — legacy Express + grep server, not used in production (see CLAUDE.md)
unused/dblight.js     — build script for dg-light.js → dg_db_light.json (legacy, not needed with dg.db)
search/               — search page (DataTables); legacy URL remains /nodejs/res/... (see CLAUDE.md)
reader/               — reader frontend (reader-template.html + megareader.js)
configs/              — project JSON configs (openapi, reader/*, search/*), see CLAUDE.md
docs/                 — project documentation and compatibility notes (SPA plans, backward compatibility)
siteroot/             — root-site publication: assets/ (legacy assets), 4nt/config/login/,
                         memo/read (legacy tools), see CLAUDE.md

许可证

请参阅仓库许可证及项目根目录中的项目专属说明。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。