基本能力
产品定位
docs-mcp-server 是一个专门用于文档抓取、处理和搜索的 MCP 服务器,旨在为开发者提供高效的第三方库文档搜索和管理能力。
核心功能
- 文档抓取与处理:
- 从指定URL抓取文档内容
- 使用语义分割技术将文档分割成有意义的块
- 利用OpenAI生成向量嵌入
-
支持版本管理(包括无版本内容)
-
搜索能力:
- 结合向量相似性搜索和全文搜索的混合搜索
- 支持按版本过滤搜索结果
-
支持精确匹配和范围匹配
-
任务管理:
- 异步任务队列管理抓取作业
-
支持作业状态查询、列表查看和取消
-
文档管理:
- 支持文档的添加、搜索、版本查找和删除
- 支持无版本文档管理
适用场景
- 开发者需要快速查找第三方库文档
- 团队需要维护多个版本的文档索引
- 需要将文档搜索功能集成到开发工具中
- 需要自动化文档更新和维护
工具列表
- scrape_docs:启动文档抓取作业
- get_job_status:查询作业状态
- list_jobs:列出活动/已完成作业
- cancel_job:取消运行中或排队的作业
- search_docs:搜索文档
- list_libraries:列出已索引的库
- find_version:查找合适的版本
- remove_docs:删除索引文档
常见问题解答
- 版本处理:
- 抓取时需要特定版本或留空(无版本)
- 搜索时支持特定版本、部分版本或范围
-
可以显式搜索无版本文档
-
调试:
- 建议使用 MCP Inspector 进行调试
- 可通过
npx @modelcontextprotocol/inspector node dist/server.js
启动
使用教程
使用依赖
- 安装 Node.js
- 克隆仓库:
bash
git clone <repository-url>
cd docs-mcp-server
安装教程
- 安装依赖:
bash
npm install - 构建服务器:
bash
npm run build - 设置环境变量(创建.env文件):
bash
cp .env.example .env
并编辑.env文件设置OPENAI_API_KEY
Docker运行
- 构建Docker镜像:
bash
docker build -t docs-mcp-server . - 运行容器:
bash
docker run -p 8000:8000 --env-file .env --name docs-mcp-server-container docs-mcp-server
CLI使用
- 查看帮助:
bash
docs-mcp --help - 抓取文档:
bash
docs-mcp scrape <library> <url> [options] - 搜索文档:
bash
docs-mcp search <library> <query> [options] - 查找版本:
bash
docs-mcp find-version <library> [options] - 删除文档:
bash
docs-mcp remove <library> [options]
调试方式
- 使用MCP Inspector调试:
bash
npx @modelcontextprotocol/inspector node dist/server.js