My Docs Mcp Server

My Docs Mcp Server

🚀 我的文档MCP服务器

此MCP服务器可对指定目录下的所有Markdown(.md)文件进行全文索引,并借助MCP协议提供搜索与访问功能,为用户提供便捷的Markdown文件搜索和获取服务。

🚀 快速开始

此MCP服务器会索引指定目录下所有Markdown(.md)文件的全文,并通过MCP协议提供搜索和访问功能。

✨ 主要特性

  • 作为MCP的tools提供全文搜索(search_docs)。
  • 作为MCP的resources提供文件全文获取(read_doc)。
  • 使用TypeScript开发。

📦 安装指南

安装依赖包

npm install

创建docs目录并放置Markdown文件

mkdir docs
# 示例:创建测试文件
echo "# 测试\n这是测试内容。" > docs/测试.md

TypeScript构建

npm run build

💻 使用示例

服务器启动方法

开发模式(直接运行TypeScript)

npm run dev -- [docs目录路径]
# 示例:npm run dev -- ./docs

生产环境(使用已构建文件)

npm start -- [docs目录路径]
# 示例:npm start -- ./docs
  • docs目录路径可选,默认为docs/

在MCP Inspector中测试

使用MCP Inspector可通过GUI测试服务器的工具和服务资源。

npm run inspect -- [docs目录路径]
# 示例:npm run inspect -- ./docs

或使用已构建文件:

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

在Claude Desktop中的使用示例

配置Claude Desktop

打开Claude Desktop的配置文件(例如:~/Library/Application Support/Claude/claude_desktop_config.json),添加以下服务器配置:

{
"mcpServers": {
"文档搜索": {
"command": "node",
"args": [
"/path/to/docs-search/build/index.js",
"/path/to/your-project/docs"
]
}
}
}
  • command设为nodeargs中填入已构建服务器文件的路径和docs目录路径。
  • 建议使用绝对路径

查看效果

重启Claude Desktop后,在MCP工具列表中会显示search_docs

📚 详细文档

提供的工具与资源

工具:search_docs

  • 概要:搜索Markdown文件全文(支持通过wakachigaki分词实现的日语搜索)。
  • 输入参数:支持模糊搜索和精确匹配。
  • 输出格式:JSON数组,包含搜索结果和高亮部分。

资源:read_doc

  • 说明:通过MCP资源URI获取文件内容。
  • 支持的 MIME 类型:text/markdown

日志记录

服务器在主要处理步骤中会输出详细日志到标准错误输出(stderr)。

🔧 技术细节

技术栈与实现技术

属性 详情
实现语言 TypeScript是服务器主体的实现语言
通信协议 @modelcontextprotocol/sdk用于MCP协议的通信和协议实现
全文索引 MiniSearch用于Markdown文件的全文索引创建和搜索,轻量且高效
分词库 wakachigaki是日本语文本分词(Tokenization)库,作为MiniSearch的分词器使用,显著提升日语搜索精度
文件遍历 fast-glob用于递归遍历docs目录下的Markdown文件
文件操作模块 Node.js标准fs/promises, path模块用于文件读取和路径操作
通信方式 Stdio服务器通过标准输入输出与MCP客户端(如Claude Desktop或Inspector)通信

📄 许可证

MIT

  • 0 关注
  • 0 收藏,10 浏览
  • system 提出于 2025-09-23 10:39

相似服务问题