Markdown全文搜索服务

该服务是一个基于MCP协议的Markdown全文搜索服务器,能够对指定目录下的Markdown文件进行索引和搜索,支持高精度的日语分词搜索。

  • by kbyk004-diy
  • TypeScript
  • 本地部署
  • 1 星标
  • 更新于
在 GitHub 查看 kbyk004/my-docs-mcp-server

使用说明

我的docs-mcp服务器

概要

这个MCP服务器在指定目录下的Markdown(.md)对文件进行全文检索索引MCP可以通过协议进行检索、参照MCP服务器。

  • MCP的,之tools中描述的场景,使用下列步骤创建明细表,以便在概念设计中分析体量的周长
  • MCP的,之resources中描述的场景,使用以下步骤创建明细表,以便在概念设计中分析体量的体积
  • TypeScript製

技术栈安装技术

  • TypeScript:服务器主体的实现语言。
  • @模型上下文协议/sdk: MCP用于服务器的协议实现和通信。
  • 搜索: Markdown用于文件的全文检索索引制作、检索。轻松快速的全文搜索库。
  • wakachigaki:分享写日语文本(脱口秀)的轻量库。MiniSearch的谈话器,大幅提高日语检索的精度。
  • 快速地球仪: docs目录下的Markdown递归搜索文件。
  • Node.js標準のfs/promises,路径:文件导入和路径操作。
  • Stdio服务器: MCP客户端(Claude Desktop或Inspector等)和通过标准输入输出进行通信。

安装,安装

  1. 安装依赖包
npm install
  1. docs创建目录和Markdown文件放置
mkdir docs
# 例: サンプルファイル作成
echo "# サンプル\nこれはテストです。" > docs/sample.md
  1. TypeScript构建
npm run build

如何启动服务器

开発用(TypeScriptを直接実行)

npm run dev -- [docsディレクトリのパス]
# 例: npm run dev -- ./docs

生产(已构建)

npm start -- [docsディレクトリのパス]
# 例: npm start -- ./docs
  • docsディレクトリのパス可省略(省略时docs/使用)

MCP Inspector中的动作确认

MCP检查员使用的话GUI在服务器上tools/resources中所述修改相应参数的值。

npm run inspect -- [docsディレクトリのパス]
# 例: npm run inspect -- ./docs

或已构建:

npx -y @modelcontextprotocol/inspector node build/index.js ./docs

Claude Desktopー利用例

  1. Claude Desktop配置文件(例如: ~/Library/Application Support/Claude/claude_desktop_config.json),然后按如下所示添加服务器。
{
  "mcpServers": {
    "docs-search": {
      "command": "node",
      "args": [
        "/path/to/docs-search/build/index.js",
        "/path/to/your-project/docs"
      ]
    }
  }
}
  • command表示node、args构建的服务器路径和docs请指定目录路径。
  • 路径是绝对路径推荐。
  1. Claude Desktop重新启动时MCP在工具列表中search_docs对话框,您可以在此定义自定义格式。

交付工具资源

工具:search_docs

  • 概述:Markdown全文检索文件(日语为分写、谈话、高精度检索)
  • 入力: query(检索字,必需)、limit(最大件数,可省略,默认5)
  • 输出:搜索结果(文件名、路径、片段)
  • 注:搜索查询和正文wakachigaki用分享写,可以进行自然的日语检索。

资源:read_doc

  • 关于文件全文获取
  • 入力: filePath(MCP资源URI),模板名称将采用不同的格式
  • 输出:文件全文

记录

服务器将详细记录输出到每个主要处理的标准错误输出(stderr)。

许可证

麻省理工学院