mcpField
D
doc-scraper

doc-scraper

本地服务
sriram-pr.github.io浏览器自动化107今天更新

关于 doc-scraper

doc-scraper 是用 Go 编写的文档爬虫,可将技术文档整理为本地 Markdown 语料。它通过 MCP 向编码 Agent 提供离线搜索、阅读和变更跟踪能力。

主要功能

  1. 01并发且可恢复的文档爬取
  2. 02识别 30 多种文档生成器
  3. 03生成 Markdown 页面及索引文件
  4. 04离线 BM25 搜索和页面读取
  5. 05增量爬取、监视模式与差异比较

适用场景

  1. 01无网络时搜索技术文档
  2. 02从本地语料阅读文档
  3. 03跟踪多次爬取间的文档变更

MCP 相关

MCP 服务提供搜索和读取已存文档、检查新鲜度及比较爬取结果的工具。编码 Agent 可通过 stdio 连接。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

暂未收录安装方式

我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。

代码仓库
安装包
mcpbdoc-scraper.mcpb

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

LLM 文档抓取工具(doc-scraper)

CI Go Version Go Reference License Glama score

使用 Go 编写的可配置、并发且可续传的网络爬虫。专为抓取技术文档网站而设计,可提取核心内容,将其整洁地转换为适合大模型摄取的 Markdown 格式,并将结果保存在本地。

doc-scraper 抓取文档网站,并离线回答搜索查询

doc-scraper 可将文档网站抓取为整洁的 Markdown,并通过 MCP 提供给编码 Agent。Agent 可以离线搜索和阅读你选择的文档,而不必依赖训练数据猜测或实时网络搜索。将任意文档页面交给 doc-scraper add,它就会检测框架(支持 30 多种文档生成器,包括 Docusaurus、Starlight、Sphinx、VitePress、Material for MkDocs 和 mdBook),验证内容选择器,并为你起草配置。

文档:https://sriram-pr.github.io/doc-scraper/

功能

  • 为 Agent 提供离线搜索: 对存储的语料库进行 BM25 全文搜索(search_docs)和页面读取(read_page),无需网络访问
  • 框架检测: 可识别 30 多种文档生成器,并验证各自的选择器;支持 Readability 回退;如果页面仅由 JavaScript 渲染,则会报告而不会抓取空内容
  • 整洁的输出: 每个页面均生成带 frontmatter 的 GitHub 风格 Markdown,并生成 pages.jsonl、llms.txt 和 llms-full.txt
  • 礼貌且可续传: 支持 robots.txt 和站点地图、按主机设置速率限制、失败后退避重试、续传抓取,以及分阶段输出,确保不会覆盖上一次成功的副本
  • 保持内容最新: 支持增量重新抓取、监视模式和抓取历史(get_freshness、diff_crawl)
  • 同时抓取多个网站: 并行抓取,并共享限制

安装

从 Releases 页面下载发行版二进制文件(Linux、macOS、Windows;amd64 和 arm64),或:

go install github.com/Sriram-PR/doc-scraper/v2/cmd/doc-scraper@latest
docker run --rm --user "$(id -u):$(id -g)" -v "$PWD":/data ghcr.io/sriram-pr/doc-scraper:latest crawl -site rust_cli_book

Claude Desktop 用户也可以从最新发行版安装 doc-scraper.mcpb。详情:安装。

快速开始

doc-scraper add -site rust_cli_book https://rust-cli.github.io/book/index.html   # detect, preview, confirm
doc-scraper crawl -site rust_cli_book             # Markdown lands in ./crawled_docs/rust_cli_book/
doc-scraper search -site rust_cli_book "error handling"

然后将其交给 Claude Code:

claude mcp add --transport stdio doc-scraper -- /path/to/doc-scraper mcp-server -config /path/to/config.yaml

有关作用域和首个提示词,请参阅 Claude Code 设置。

文档

贡献

欢迎贡献。开始之前,请阅读 CONTRIBUTING.md:其中介绍了环境设置、CI 强制执行的测试规则、如何认领问题,以及 AI 辅助贡献政策。标记为 good first issue 的问题是很好的入门选择。

请按照 SECURITY.md 中的说明,私下报告安全问题。所有参与者都必须遵守行为准则。

隐私政策

doc-scraper 不会收集任何信息:没有遥测、分析或账户。所有输出和状态都保留在你的计算机上,它只会发起你明确要求的爬取和获取操作所需的网络请求。完整政策:PRIVACY.md。

许可证

本项目采用 Apache-2.0 License 许可。

致谢

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。