OmniDocs-RAG-CN
Provides support for crawling JS-rendered Docusaurus documentation sites, enabling full-text search of their content.
Provides support for crawling GitBook documentation sites, enabling full-text search of their content.
Allows indexing of GitHub repositories using the github:// URI scheme, enabling search over code and documentation.
Supports indexing of Jupyter Notebook (.ipynb) files, extracting code cells and markdown for search.
Allows indexing of npm package metadata and README using the npm:// URI scheme.
Allows indexing of PyPI package metadata and README using the pypi:// URI scheme.
Provides support for crawling VitePress documentation sites, enabling full-text search of their content.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@OmniDocs-RAG-CN搜索我在本地文档中关于混合检索的笔记"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
🧠 OmniDocs-RAG-CN
开箱即用的 AI Agent 个人知识库 — 原生中文支持 🇨🇳
索引本地文件、网页、GitHub 仓库、npm/PyPI 包 → 混合 AI 检索引擎 → IDE 聊天框内直接搜索。100% 本地运行,一条命令安装。
English | 中文
缘起
最初只是想搭个个人知识库,但很快发现 Obsidian 对 Agent 并不友好——目录树、双向链接、全文搜索,这些为人设计的功能在 Agent 眼里只是一堆需要遍历的文件路径。Agent 要的不是"翻文件",而是"语义检索":用自然语言问一个问题,从知识库中召回最相关的片段,再基于这些片段生成回答。
于是自然想到了向量数据库。把个人文档向量化存起来,Agent 用向量相似度来"找东西",而不是翻文件夹。但翻遍 GitHub,没有一个现成的工具能直接做到这一点——要么缺 MCP 接口,要么对中文支持几乎为零(分句错、分词烂、BM25 失效)。
所以基于 OmniDocs-RAG v3.4 做了中文化适配和 MCP 接口封装,改出了 OmniDocs-RAG-CN。
最终的使用场景是这样的:
人通过 IDE(Claude Code / Cursor)跟 Agent 对话,问一个问题;Agent 通过 MCP 协议调用 OmniDocs-RAG-CN 的 search_docs,在个人向量知识库中做混合检索(语义 + 关键词 + 重排序),拿到最相关的文档片段后组织回答。
人和 Agent 从两个"端口"访问同一个个人数据库:人看到的是 IDE 聊天窗口里的自然语言回答,Agent 看到的是 chroma_db 里经过向量化的知识片段。人的入口是对话,Agent 的入口是 MCP 工具调用——同一份知识,两种访问方式。
这就是"人与 Agent 协作"的知识管理:不是人翻了文件喂给 Agent,也不是 Agent 替代人去读文档;而是人决定"哪些知识值得存",Agent 负责"在需要的时候精准找到",人再做最终的判断和创造。知识库从一个人的第二大脑,变成了人和 Agent 共享的外部记忆。
Related MCP server: punt-quarry
人-Agent 协作架构
┌─────────────────────────────────────────────────────────┐
│ 人 👤 │
│ IDE 聊天框 │
│ "帮我查一下认证逻辑怎么实现的?" │
│ → 看到自然语言回答,做决策、创作 │
└──────────────────────┬──────────────────────────────────┘
│ 自然语言对话
▼
┌─────────────────────────────────────────────────────────┐
│ Agent 🤖 │
│ Claude Code / Cursor 等 │
│ → 理解问题 → 调 MCP 工具 → 综合回答 │
└──────────────────────┬──────────────────────────────────┘
│ MCP 协议(search_docs)
▼
┌─────────────────────────────────────────────────────────┐
│ OmniDocs-RAG-CN │
│ ┌───────────────────────────────────────────────┐ │
│ │ 混合检索引擎 │ │
│ │ 向量语义 + BM25 关键词(jieba) + RRF 融合 │ │
│ │ + Cross-Encoder 重排序 + 去重 │ │
│ └───────────────────────────────────────────────┘ │
│ │ │
│ ▼ │
│ ┌───────────────────────────────────────────────┐ │
│ │ ChromaDB 向量数据库 (chroma_db/) │ │
│ │ 你的文档 → 向量化 → 语义可检索 │ │
│ └───────────────────────────────────────────────┘ │
└─────────────────────────────────────────────────────────┘两个端口,同一份知识。人从对话进去,Agent 从 MCP 进去。
🚀 快速开始
1. 环境要求
Python 3.10+
git
2. 一键安装
git clone https://github.com/ybhuang995-dev/personal-data-for-agents.git
cd personal-data-for-agents
python install.pyinstall.py 自动完成一切:pip 依赖安装 → GPU 检测 + PyTorch 安装 → AI 模型下载(~2.3GB,仅首次)→ IDE 的 MCP 连接自动配置。
3. 使用
直接在 IDE 聊天框里说人话:
帮我索引我的文档目录
搜索:认证逻辑怎么实现的?
把 https://fastapi.tiangolo.com 的文档也加进知识库
用 rag_status 看看知识库状态Agent 自动调用 MCP 工具,不需要你点任何按钮。
✨ 功能特性
🔍 混合搜索管道
阶段 | 技术 | 说明 |
查询扩展 | CN→EN 同义词映射 | 17 组中文→英文编程同义词,提升混合文档召回率 |
向量搜索 | ChromaDB + bge-m3 | 1024 维语义向量,支持 100+ 语言 |
关键词搜索 | BM25 + jieba 分词 | 中文用结巴分词,英文保持空格切分 |
融合排序 | RRF (k=60) | 向量排名 + 关键词排名数学融合 |
重排序 | bge-reranker-v2-m3 | 交叉编码器对候选集精确打分 |
去重 | >80% 相似度剔除 | 移除近重复结果 |
📁 多源摄入
40+ 文件格式 —
.md.py.js.pdf.docx.xlsx.pptx等网页 — 异步 BFS 爬虫,支持 robots.txt、sitemap.xml
GitHub 仓库 —
github://owner/repo直接抓取npm / PyPI / ZIP —
npm://packagepypi://packagefile:///path.zipJS 渲染页面 — 可选 Playwright 支持
⚡ 性能
GPU 加速 — CUDA 自动检测(索引速度提升 ~11x)
增量索引 — MD5 哈希,只处理变化的文件
BM25 持久化 — pickle 缓存,服务重启即恢复
🛠️ 管理
多集合 — 不同项目用不同知识库
自动分类 — YAML frontmatter → H1 标题 → 文件名
文件监控 — watchdog 监听变动,自动增量索引
100% 本地 — 无 API Key、无云服务、无月费
🛠️ MCP 工具(9 个)
工具 | 说明 |
| 索引本地文件(40+ 格式,增量索引) |
| 索引网页、GitHub、npm、PyPI、ZIP |
| 混合搜索(向量 + BM25 + 重排序) |
| 系统状态:模型、GPU、BM25、分块数 |
| 列出所有知识库集合 |
| 列出集合中已索引的文件 |
| 从索引中删除指定文件 |
| 删除整个集合 |
| 强制全量重建索引 |
index_url() 示例
# 网页(异步 BFS 爬虫)
index_url("https://docs.python.org/3/library/asyncio.html")
# GitHub 仓库
index_url("github://tiangolo/fastapi/docs")
# npm 包
index_url("npm://axios@1.6")
# PyPI 包
index_url("pypi://fastapi")
# ZIP 压缩包
index_url("file:///path/to/docs.zip")🇨🇳 中文适配(7 处改动)
优先级 | 文件 | 改动 |
P0 |
| 分句正则补中文标点( |
P0 |
| 语言感知分块:中文按 2000 字符、英文按 700 词 |
P0 |
| 网页重爬:按 source URL 清旧块再写入,防僵尸数据 |
P1 |
| BM25:中文用 jieba 分词替换空格切分 |
P1 |
| 网页提取:新增 Mozilla Readability 为策略 1(语言无关) |
P2 |
| 查询扩展:17 组中文→英文同义词映射 |
P3 |
| 重叠量:中文取前块最后 150 字,英文保持 2 句 |
所有改动在代码中以
# [中文化]注释标记。详见 CHANGES_CN.md。
⚙️ 环境变量
变量 | 默认值 | 说明 |
| server.py 父目录 | 扫描的文档目录 |
|
| ChromaDB 持久化路径 |
|
|
|
|
| 嵌入模型 |
|
| 交叉编码器重排序模型 |
| 不启用 | 设为 |
| 不启用 | 文件变动自动重索引 |
| — | GitHub API 令牌(提升速率限制) |
❓ 常见问题
Q: 数据会发送到外部吗? A: 不会。100% 本地运行。模型从 HuggingFace 下载一次后离线使用,无 API Key,无云服务。
Q: 需要 GPU 吗?
A: 不必须,但有最好。CPU 搜索约 200ms,GPU 索引加速约 11x。设置 RAG_DEVICE=cuda 开启。
Q: 如何更新索引?
A: 增量索引——只有变化的文件会重新处理。再调一次 index_documents() 即可,或开启文件监控自动更新。
Q: 首次搜索为什么慢? A: Cross-Encoder(~1.1GB)在首次搜索时惰性加载。后续搜索即时响应。
Q: 支持中文吗? A: 这就是做这个项目的原因。原生 jieba 分词、中文分句、中文分块、CN→EN 查询扩展。bge-m3 还支持 100+ 其他语言。
Q: 能建多个知识库吗?
A: 可以。用 collection 参数区分:index_documents(path, collection="项目A"),搜索时指定 collection="项目A"。
📄 许可证
基于 Apache License 2.0 开源。详见 LICENSE。
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/ybhuang995-dev/personal-data-for-agents'
If you have feedback or need assistance with the MCP directory API, please join our Discord server