VOOZH about

URL: https://glama.ai/mcp/servers/arabold/docs-mcp-server?locale=zh-CN

⇱ docs-mcp-server by arabold | Glama


Grounded Docs:您的 AI 最新文档专家

Docs MCP Server 通过为您的 AI 编码助手提供个人化的、始终保持最新的文档索引,解决了 AI 幻觉和知识过时的问题。它从网站、GitHub、npm、PyPI 和本地文件中获取官方文档,使您的 AI 能够查询您正在使用的确切版本。

👁 Docs MCP Server Web 界面

✨ 为什么选择 Grounded Docs MCP Server?

这是 Context7NiaRef.Tools 的开源替代方案。

  • 最新上下文: 按需直接从官方来源获取文档。

  • 🎯 特定版本: 查询目标为您项目中使用的确切库版本。

  • 💡 减少幻觉: 让大语言模型 (LLM) 基于真实文档进行回答。

  • 🔒 私有且本地: 完全在您的机器上运行;您的代码永远不会离开您的网络。

  • 🧩 广泛兼容: 适用于任何兼容 MCP 的客户端(Claude、Cline 等)。

  • 📁 多源支持: 索引网站、GitHub 仓库、本地文件夹和 zip 压缩包。

  • 📄 丰富的文件支持: 处理 HTML、Markdown、PDF、Office 文档(Word、Excel、PowerPoint)、OpenDocument、RTF、EPUB、Jupyter Notebooks 以及 90 多种源代码语言


Related MCP server: doc-lib-mcp

📄 支持的格式

分类

格式

文档

PDF, Word (.docx/.doc), Excel (.xlsx/.xls), PowerPoint (.pptx/.ppt), OpenDocument (.odt/.ods/.odp), RTF, EPUB, FictionBook, Jupyter Notebooks

归档

ZIP, TAR, gzipped TAR (内容会被单独提取和处理)

网页

HTML, XHTML

标记语言

Markdown, MDX, reStructuredText, AsciiDoc, Org Mode, Textile, R Markdown

源代码

TypeScript, JavaScript, Python, Go, Rust, C/C++, Java, Kotlin, Ruby, PHP, Swift, C#, 以及 更多

数据

JSON, YAML, TOML, CSV, XML, SQL, GraphQL, Protocol Buffers

配置

Dockerfile, Makefile, Terraform/HCL, INI, dotenv, Bazel

请参阅 支持的格式 以获取包括 MIME 类型和处理细节在内的完整参考。


🚀 快速入门

CLI 优先

对于代理和脚本,CLI 通常是使用 Grounded Docs 最简单的方式。

1. 索引文档 (需要 Node.js 22+):

npx @arabold/docs-mcp-server@latest scrape react https://react.dev/reference/react

对于使用哈希路由的单页应用 (SPA) 文档站点,请显式启用哈希保留:

npx @arabold/docs-mcp-server@latest scrape my-spa https://docs.example.com/#/guide --preserve-hashes

2. 查询索引:

npx @arabold/docs-mcp-server@latest search react "useEffect cleanup" --output yaml

3. 将单个页面获取为 Markdown:

npx @arabold/docs-mcp-server@latest fetch-url https://react.dev/reference/react/useEffect

输出行为

  • 在非交互式运行中,结构化命令默认在标准输出 (stdout) 上输出整洁的 JSON。

  • 使用 --output json|yaml|toon 选择结构化格式。

  • 纯文本命令(如 fetch-url)将其文本负载保留在标准输出上。

  • 诊断信息通过共享日志记录器处理,在非交互式运行中不会输出到标准输出。

  • 使用 --quiet 抑制非错误诊断信息,或使用 --verbose 启用调试输出。

代理技能

skills/ 目录包含 Agent Skills,它们教导 AI 编码助手如何使用 CLI——涵盖文档搜索、索引管理和 URL 获取。

MCP 服务器

如果您需要为 Claude、Cline、Copilot、Gemini CLI 或其他 MCP 客户端提供长期运行的 MCP 端点:

1. 启动服务器:

npx @arabold/docs-mcp-server@latest

2. 打开 Web UI,地址为 http://localhost:6280 以添加文档。

3. 连接您的 AI 客户端,通过将其添加到您的 MCP 设置中(例如 claude_desktop_config.json):

{
 "mcpServers": {
 "docs-mcp-server": {
 "type": "sse",
 "url": "http://localhost:6280/sse"
 }
 }
}

请参阅 连接客户端 以获取 VS Code (Cline, Roo) 和其他设置选项。

scrape_docs 也接受 preserveHashes: true,适用于使用基于哈希的客户端路由的文档站点。 仅对哈希路由的 SPA 使用此选项;普通站点通常使用哈希片段作为页内锚点。

docker run --rm \
 -v docs-mcp-data:/data \
 -v docs-mcp-config:/config \
 -p 6280:6280 \
 ghcr.io/arabold/docs-mcp-server:latest \
 --protocol http --host 0.0.0.0 --port 6280

🧠 配置嵌入模型 (推荐)

使用嵌入模型是可选的,但通过启用语义向量搜索,可以显著提高搜索质量。

示例:启用 OpenAI 嵌入

OPENAI_API_KEY="sk-proj-..." npx @arabold/docs-mcp-server@latest

请参阅 嵌入模型 以配置 OllamaGeminiAzure 等。


📚 文档

入门指南

  • 安装:Docker、Node.js (npx) 和嵌入模式的详细设置指南。

  • 连接客户端:如何连接 Claude、VS Code (Cline/Roo) 和其他 MCP 客户端。

  • 基本用法:使用 Web UI、CLI 和抓取本地文件。

  • 配置:配置文件和环境变量的完整参考。

  • 支持的格式:完整的文件格式和 MIME 类型参考。

  • 嵌入模型:配置 OpenAI、Ollama、Gemini 和其他提供商。

哈希路由的 SPA

  • 仅对使用 #/guide 等 URL 进行路由的文档站点使用 --preserve-hashes、MCP preserveHashes 或 Web UI 中的“保留哈希路由”复选框。

  • 当在 scrapeMode=fetch 下启用时,抓取器会自动将任务升级为 Playwright,因为普通的 fetch 无法评估客户端哈希路由。

  • 刷新操作默认重用存储的 preserveHashes 设置,CLI/Web 刷新入口点可以显式覆盖它。

关键概念与架构

  • 部署模式:独立模式 vs. 分布式模式 (Docker Compose)。

  • 身份验证:使用 OAuth2/OIDC 保护您的服务器。

  • 遥测:隐私优先的使用数据收集。

  • 架构:系统设计的深入解析。


🤝 贡献

我们欢迎贡献!请参阅 CONTRIBUTING.md 获取开发指南和设置说明。

许可证

本项目采用 MIT 许可证授权。详情请参阅 LICENSE

A
license - permissive license
-
quality - not tested
B
maintenance

Maintenance

Maintainers
2dResponse time
1wRelease cycle
43Releases (12mo)
Commit activity
Issues opened vs closed

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/arabold/docs-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server