DevDocs:抓取并整理技术文档的MCP服务

news2025/4/13 1:34:58

GitHub:https://github.com/cyberagiinc/DevDocs

更多AI开源软件:发现分享好用的AI工具、AI开源软件、AI模型、AI变现 - 小众AI

DevDocs 是一个完全免费的开源工具,由 CyberAGI 团队开发,托管在 GitHub 上。它专为程序员和软件开发者设计,能从技术文档的网址开始,自动爬取相关页面并整理成简洁的 Markdown 或 JSON 文件。它内置 MCP 服务器,支持与 Claude 等大模型集成,让用户可以用自然语言查询文档内容。DevDocs 的目标是把几周的文档研究时间缩短到几小时,帮助开发者快速上手新技术。它适合个人开发者、团队和企业用户,目前无需付费,任何人都可以下载使用。

主要功能:

🧠 智能爬行
  • 智能深度控制:从 1-5 个级别中选择爬行深度
  • 自动链接发现:查找并分类所有相关内容
  • 选择性抓取:准确选择要提取的内容
  • 子 URL 检测:自动发现和映射网站结构
⚡ 性能与速度
  • 并行处理:同时抓取多个页面
  • 智能缓存:永远不要在重复内容上浪费时间
  • 延迟加载支持:轻松处理现代 Web 应用程序
  • 速率限制:不会使服务器过载的尊重爬网
🎯 内容处理
  • 干净提取:获取没有绒毛的内容
  • 多种格式:导出为 MD 或 JSON 以进行 LLM 微调
  • 结构化输出:逻辑组织的内容
  • MCP 服务器集成:为 AI 处理做好准备
🛡️ 企业功能
  • 错误恢复:失败时自动重试
  • 完整日志记录:跟踪每个作
  • API 访问:与您的工具集成
  • 团队管理:多个席位和角色

安装和使用

DevDocs 使用 Docker 运行,安装简单。以下是详细步骤:

  1. 准备环境

    • 需要安装 Git 和 Docker:

      • Git:从 git-scm.com 下载并安装。
      • Docker:从 docker.com 下载 Docker Desktop 并安装。
    • 检查 Docker 是否正常运行,终端输入 docker --version​,看到版本号即成功。

  2. 克隆代码

    • 打开终端(Windows 用 CMD 或 PowerShell,Mac/Linux 用 Terminal)。

    • 输入命令下载 DevDocs:

      git clone https://github.com/cyberagiinc/DevDocs.git
      
    • 进入项目目录:

      cd DevDocs
      
  3. 启动服务

    • 根据操作系统运行启动脚本:

      • Mac/Linux:

        ./docker-start.sh
        
      • Windows:

        docker-start.bat
        
    • Windows 用户若遇到权限问题,可手动设置文件夹权限:

      icacls logs /grant Everyone:F /T
      icacls storage /grant Everyone:F /T
      icacls crawl_results /grant Everyone:F /T
      
    • 启动后,等待几秒,终端显示服务运行成功。

  4. 访问工具

    • 打开浏览器,输入 http://localhost:3001​,进入 DevDocs 前端界面。

    • 其他服务地址:

      • 后端 API:http://localhost:24125​
      • Crawl4AI 服务:http://localhost:11235​

实战演习

场景1. 爬取技术文档
  • 步骤:

    1. 在界面输入框粘贴目标网址,如 https://docs.example.com​。
    2. 选择爬取深度(1-5 层,默认 5)。
    3. 点击“开始爬取”。
    4. 等待完成,界面会显示抓取的页面列表。
  • 注意:

    • 爬取速度快,每分钟可处理 1000 页。
    • 结果保存在 <项目目录>/crawl_results​ 文件夹。
  • 高级选项:

    • 可选择性爬取,勾选需要的内容。
场景2. 整理文档内容
  • 操作:

    • 爬取完成后,内容自动整理为 Markdown 或 JSON 文件。
    • 在 <项目目录>/crawl_results​ 查看,默认是 Markdown 格式。
  • 切换格式:

    • 在界面设置中选择“导出为 JSON”,适合大模型微调。
场景3. 使用 MCP 服务器和大模型
  • 准备:

    • 下载并安装 Claude Desktop App(anthropic.com)。
    • DevDocs 的 MCP 服务器默认运行在本地,无需额外配置。
  • 步骤:

    1. 打开 Claude App。
    2. 输入问题,如“这个文档讲了什么”。
    3. Claude 会从 MCP 服务器读取数据并回答。
  • 扩展用法:

    • 将本地文档放入 <项目目录>/storage​,Claude 可直接访问。
    • 支持复杂问题,如“这个技术怎么实现”。
场景4. 日志与监控
  • 查看日志:

    • 日志文件在 <项目目录>/logs​,包括:

      • ​frontend.log​:前端日志。
      • ​backend.log​:后端日志。
      • ​mcp.log​:MCP 服务器日志。
    • 用 Docker 查看实时日志:

      docker logs -f devdocs-backend
      
  • 停止服务:

    • 在终端按 Ctrl+C​,关闭所有服务。
场景5. 实用脚本
  • 项目提供多种脚本,位于 <项目目录>/scripts​:

    • ​check_mcp_health.sh​:检查 MCP 服务器状态。
    • ​debug_crawl4ai.sh​:调试爬取服务。
    • ​view_result.sh​:查看爬取结果。
  • 运行方式:

    • 在终端进入脚本目录,输入 ./脚本名​ 执行。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2333487.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

第十四届蓝桥杯大赛软件赛国赛Python大学B组题解

文章目录 弹珠堆放划分偶串交易账本背包问题翻转最大阶梯最长回文前后缀贸易航线困局 弹珠堆放 递推式 a i a i − 1 i a_ia_{i-1}i ai​ai−1​i&#xff0c; n 20230610 n20230610 n20230610非常小&#xff0c;直接模拟 答案等于 494 494 494 划分 因为总和为 1 e 6 1e6…

折叠屏手机:技术进步了,柔性OLED面板测试技术需求跟上了吗?

全球智能手机市场陷入创新焦虑&#xff0c;折叠屏手机被寄予厚望&#xff0c;2023 年出货量同比增长 62%。但在供应链技术狂欢背后&#xff0c;存在诸多问题。消费端数据显示&#xff0c;用户使用频率低&#xff0c;定价策略反常。产业链重构虽让部分企业获利&#xff0c;却推高…

30天学Java第九天——线程

并行与并发的区别 并行是多核 CPU 上的多任务处理&#xff0c;多个任务在同一时间真正的同时执行并发是单核 CPU 上的多任务处理&#xff0c;多个任务在同一时间段内交替执行&#xff0c;通过时间片轮转实现交替执行&#xff0c;用于解决 IO 密集型任务的瓶颈 线程的创建方式…

自行搭建一个Git仓库托管平台

1.安装Git sudo apt install git 2.Git本地仓库创建&#xff08;自己选择一个文件夹&#xff09; git init 这里我在 /home/test 下面初始化了代码仓库 1. 首先在仓库中新建一个txt文件&#xff0c;并输入一些内容 2. 将文件添加到仓库 git add test.txt 执行之后没有任何输…

LeeCode 409.最长回文串

给定一个包含大写字母和小写字母的字符串 s &#xff0c;返回 通过这些字母构造成的 最长的 回文串 的长度。 在构造过程中&#xff0c;请注意 区分大小写 。比如 "Aa" 不能当做一个回文字符串。 示例 1: 输入:s "abccccdd" 输出:7 解释: 我们可以构造的…

【前端分享】JavaScript异步编程详解!

JavaScript 的异步编程是其核心特性之一&#xff0c;主要用于处理非阻塞操作&#xff08;如网络请求、文件读写、定时任务等&#xff09;。由于 JavaScript 是单线程的&#xff0c;异步机制可以避免代码阻塞&#xff0c;提高性能和用户体验。以下是 JavaScript 异步编程的核心概…

工厂模式(简单工厂,工厂方法,抽象工厂)

工厂模式 工厂模式是java中最常用的设计模式&#xff0c;主要是用来完成对象的创建&#xff0c;使得对象创建过程和对象使用过程分离。 简单来说是取消对象创建者和使用者的耦合&#xff0c;简化new 对象的创建。 优势 &#xff1a;对象的属性创建完整。 缺点&#xff1a; 创建…

Axure RP9教程 【数据传输】(页面值传递)| 作用域 :全局变量、局部变量

文章目录 引言作用域:全局变量作用域>局部变量作用域I 基于全局变量实现一个简单的登陆操作设置变量值的交互动作打开链接的交互动作接收并显示变量值注意点see also共享原型引言 全局变量在交互效果作用是页面值传递 作用域:全局变量作用域>局部变量作用域 全局变量…

IBM Rational Software Architect安装感受及使用初体验

1 安装感受 最近准备用UML 2.0绘制模型图。在读UML创始人之一Grady Booch写的书《Object-Oriented Analysis and Design with Applications》&#xff08;第3版&#xff09;1时&#xff0c;发现书中用的UML工具之一为IBM Rational Software Architect&#xff08;RSA&#xff…

VRRP学习

虚拟路由器冗余技术【三层技术】&#xff1a;网关冗余VRRP设计了VRRP组的概念&#xff0c;在一个 VRRP 组中&#xff0c;多台路由器共同构成一个虚拟路由器。这个虚拟路由器拥有一个虚拟 IP 地址【VRRP-ID默认是8位二进制&#xff0c;范围是0~255&#xff0c;用以标识和区别不同…

GPT-5、o3和o4-mini即将到来

原计划有所变更: 关于我们应有何期待的一些零散想法。 深度研究(Deep Research)确实强大但成本高昂且速度较慢(当前使用o3模型)。即将推出的o4-mini在性能上可能与o3相近,但将突破这些限制,让全球用户——甚至免费用户(尽管会有速率限制)——都能用上世界顶级AI研究助…

C#MVC项目引用Swagger的详细步骤

目录 一、安装Swagger依赖包二、配置Swagger服务三、启用XML注释四、调整启动配置五、验证与访问常见问题解决 以下是基于ASP.NET Core项目集成Swagger的详细步骤&#xff08;已适配当前项目结构&#xff09;&#xff1a; 一、安装Swagger依赖包 通过NuGet安装 右键点击项目…

golang 对象池sync.Pool

Golang中的sync.Pool是什么&#xff1f; sync.Pool 是 Go 标准库中提供的一个对象池&#xff08;Object Pool&#xff09;实现&#xff0c;用于缓存和复用临时对象&#xff0c;以减少内存分配和垃圾回收&#xff08;GC&#xff09;的压力。它的主要特点是&#xff1a; 临时对…

聚焦AI与大模型创新,紫光云如何引领云计算行业快速演进?

【全球云观察 &#xff5c; 科技热点关注】 随着近年来AI与大模型的兴起&#xff0c;云计算行业正在发生着一场大变局。 “在2025年春节期间&#xff0c;DeepSeek两周火爆全球&#xff0c;如何进行私域部署成了企业关心的问题。”紫光云公司总裁王燕平强调指出&#xff0c;AI与…

解决前后端时区不一致问题

前后端时区不一致导致&#xff1a; 》数据不显示在前端 》页面显示时间有误 》一些对时间有要求的方法&#xff0c;无法正确执行&#xff0c;出现null值&#xff0c;加上我们对null值有判断/注解&#xff0c;程序就会报错中断&#xff0c;以为是业务逻辑问题&#xff0c;其实…

STL之序列式容器(Vector/Deque/List)

序列式容器 序列式容器包括&#xff1a;静态数组 array 、动态数组 vector 、双端队列 deque 、单链表 forward_ list 、双链表 list 。这五个容器中&#xff0c;我们需要讲解三个 vector 、 deque 、 list 的使 用&#xff0c;包括&#xff1a;初始化、遍历、尾部插入与删除、…

小试牛刀-抽奖程序

编写抽奖程序 需求&#xff1a;设计一个抽奖程序&#xff0c;点击抽奖按钮随机抽取一个名字作为中奖者 目标&#xff1a;了解项目结构&#xff0c;简单UI布局&#xff0c;属性方法、事件方法&#xff0c;程序运行及调试 界面原型 ​ 待抽奖&#xff1a; 点击抽奖按钮&#x…

从 MySQL 切换到国产 YashanDB 数据库时,需要在数据库字段和应用连接方面进行适配 ,使用总结

YashanDB | 崖山数据库系统 - 崖山科技官网崖山数据库系统YashanDB是深圳计算科学研究院完全自主研发设计的新型数据库系统&#xff0c;融入原创理论&#xff0c;支持单机/主备、共享集群、分布式等多种部署方式&#xff0c;覆盖OLTP/HTAP/OLAP交易和分析混合负载场景&#xff…

【学习笔记】头文件中定义函数出现重复定义报错

目录 错误复现原因解决方案inlinestatic 扩展参考 错误复现 现在有一个头文件 duplicate_define.h 和两个源文件 duplicate_define_1.cpp 和 duplicate_define_2.cpp。 两个源文件都引入了头文件 duplicate_define.h&#xff0c;且在各自的函数中调用了定义在头文件中的全局函…

游戏开发中 C#、Python 和 C++ 的比较

&#x1f3ac; Verdure陌矣&#xff1a;个人主页 &#x1f389; 个人专栏: 《C/C》 | 《转载or娱乐》 &#x1f33e; 种完麦子往南走&#xff0c; 感谢您的点赞、关注、评论、收藏、是对我最大的认可和支持&#xff01;❤️ 摘要&#xff1a; 那么哪种编程语言最适合游戏开发…