
docs-mcp-server MCP Server

2025.04.28
2
TypeScript文档管理搜索工具开发效率
MCP-DOC-Server-OpenRouter 是一个用于获取和搜索第三方软件包文档的 MCP 服务器。它支持从多种来源(如网站、GitHub、npm、PyPI 或本地文件)抓取文档,并通过智能处理(如语义分割和嵌入生成)和优化存储(使用 SQLite 和 `sqlite-vec`)来提供强大的混合搜索功能。该服务器还支持异步任务处理和简单部署(通过 Docker 或 npx)。
View on GitHub
Overview
基本能力
产品定位
MCP-DOC-Server-OpenRouter 是一个专门用于抓取、处理和搜索第三方软件包文档的 MCP 服务器。它通过智能处理和优化存储,提供高效的文档搜索和管理功能。
核心功能
- 多源抓取:支持从网站、GitHub、npm、PyPI 或本地文件抓取文档。
- 智能处理:自动进行语义分割和嵌入生成(支持多种模型,如 OpenAI、Google Gemini、Azure OpenAI 等)。
- 优化存储:使用 SQLite 和
sqlite-vec
进行高效的向量存储和全文搜索。 - 混合搜索:结合向量相似性和全文搜索,提供高度相关的搜索结果。
- 异步任务处理:通过后台任务队列管理抓取和索引任务。
- 简单部署:支持 Docker 或 npx 快速部署。
适用场景
- 开发者需要快速查找和理解第三方库的文档。
- 团队需要集中管理和搜索多个项目的文档。
- 需要自动化文档抓取和索引的场景。
工具列表
scrape_docs
:启动抓取任务,返回jobId
。get_job_status
:检查任务状态。list_jobs
:列出当前和已完成的任务。cancel_job
:取消任务。search_docs
:搜索文档。list_libraries
:列出已索引的库。find_version
:查找合适的版本。remove_docs
:删除已索引的文档。fetch_url
:抓取单个 URL 并返回其 Markdown 内容。
常见问题解答
- 如何配置嵌入模型?:通过环境变量
DOCS_MCP_EMBEDDING_MODEL
配置,支持多种模型和提供商。 - 如何持久化数据?:使用 Docker 时,通过挂载卷(如
-v docs-mcp-data:/data
)实现数据持久化。 - 如何调试?:推荐使用 MCP Inspector 进行调试。
使用教程
使用依赖
- Docker 方式:确保已安装并运行 Docker。
- npx 方式:确保已安装 Node.js。
安装教程
Docker 方式
- 配置 MCP 设置文件,示例配置如下:
json { "mcpServers": { "docs-mcp-server": { "command": "docker", "args": [ "run", "-i", "--rm", "-e", "OPENAI_API_KEY", "-v", "docs-mcp-data:/data", "ghcr.io/arabold/docs-mcp-server:latest" ], "env": { "OPENAI_API_KEY": "sk-proj-..." }, "disabled": false, "autoApprove": [] } } }
- 替换
OPENAI_API_KEY
为你的实际 API 密钥。 - 重启应用。
npx 方式
- 配置 MCP 设置文件,示例配置如下:
json { "mcpServers": { "docs-mcp-server": { "command": "npx", "args": ["-y", "--package=@arabold/docs-mcp-server", "docs-server"], "env": { "OPENAI_API_KEY": "sk-proj-..." }, "disabled": false, "autoApprove": [] } } }
- 替换
OPENAI_API_KEY
为你的实际 API 密钥。 - 重启应用。
调试方式
- Docker 方式:
bash docker run -i --rm \ -e OPENAI_API_KEY="your-key-here" \ -e DOCS_MCP_EMBEDDING_MODEL="text-embedding-3-small" \ -v docs-mcp-data:/data \ ghcr.io/arabold/docs-mcp-server:latest
- npx 方式:
bash npx -y --package=@arabold/docs-mcp-server docs-cli --help