Token导航 LogoToken导航TokenDH.com
Doctree MCP logo
文档知识未说明官方级别未说明来源级核验

Doctree MCP

MCP Server

一款基于BM25和树形导航的文档检索工具,支持Markdown、CSV和JSONL格式,适用于技术文档管理和AI辅助检索。

工具数

8

提示词数

0

GitHub Stars

1

资源数

0
文档检索TypeScriptClaudeClaudeCursor

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

joesaby

提供方

joesaby

最后核验

2026/5/17 20:21

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

详细介绍

doctree mcp

通过markdown、CSV和JSONL进行代理文档检索。 BM25+树导航 主控程序 --没有向量数据库,没有嵌入,在索引时没有LLM调用。

球场: MCP提供结构基元(可导航树、BM25、术语表、行查找)。捆绑的技能提供了程序知识(如何走那棵树)。总的来说,代理人的行为就像一个训练有素的研究图书馆员,而不是一个一次性的搜索者。看 技能+MCP模式.

______________________________________________________________________

快速开始

已经有文件了吗? 向客户指出:

# In your AI tool's MCP config — see docs/CLIENTS.md for per-tool snippets
{ "mcpServers": { "doctree": {
    "command": "bunx", "args": ["doctree-mcp"],
    "env": { "DOCS_ROOT": "./docs", "WIKI_WRITE": "1" }
} } }

重新启动工具→ ask *“在文档中搜索X”* 或调用 doc-read 提示。

重新开始? 支架一种Karpathy风格 LLM维基:

bunx doctree-mcp init          # configure current tool
bunx doctree-mcp init --all    # configure every supported client
bunx doctree-mcp init --dry-run

创造 docs/wiki/ (保留法学硕士学位)+ docs/raw-sources/ (您的输入),编写MCP配置,安装写后lint钩子,将wiki约定附加到 CLAUDE.md / AGENTS.md / .cursor/rules/.

______________________________________________________________________

操作模式

模式使用时指南
标准 (默认)您计算机上的本地开发代理客户端设置
超文本传输协议 (流式HTTP)团队、CI、托管代理部署 --铁路·飞行·渲染·Cloudflare容器·Docker
命令行界面init, lint,调试索引操作模式

完整决策树: 操作模式.

______________________________________________________________________

工作原理——检索·整理·添加

Agent: "How does token refresh work?"

→ search_documents("token refresh")
  #1  auth/middleware.md § Token Refresh Flow       score: 12.4
  #2  auth/oauth.md       § Refresh Token Lifecycle  score: 8.7

→ get_tree("docs:auth:middleware")
  [n1] # Auth Middleware
    [n4] ## Token Refresh Flow
      [n5] ### Automatic Refresh

→ navigate_tree("docs:auth:middleware", "n4")   ← n4 + descendants

核心阅读工具 (始终打开):

工具目的
search_documentsBM25关键字搜索+方面过滤器+术语表扩展(markdown·CSV·JSONL)
get_tree目录----标题、字数、摘要
get_node_content按节点ID列出的特定节的全文
navigate_tree一个调用中包含一个部分及其所有子代
lookup_rowO(1)结构化数据行的精确键查找(例如。 PROJ-44)

Wiki编写工具 (选择加入 WIKI_WRITE=1):

工具目的
find_similar使用重叠率进行重复检测
draft_wiki_entry脚手架:建议路径、推断前体、术语表点击
write_wiki_entry验证写入:路径包含、模式、重复保护、模拟运行

安全:路径遏制·前端验证·重复检测·干运行·覆盖保护。

弃用的别名(list_documents, find_files, find_symbol)被取代 search_documents --功能正常,不再推荐。

______________________________________________________________________

技能+MCP模式

大多数检索工具都会给代理一个搜索框,并寄希望于最好的结果。doctree mcp递给它 ,捆绑的技能教它如何走路。

  • MCP=结构图元。 search_documents, get_tree, navigate_tree, get_node_content, lookup_row 返回树将代理原因定位在未完成的答案上。
  • 技能=程序知识。 /doc-read, /doc-write, /doc-lint 对面包屑进行编码:搜索→ 轮廓→ 导航→ 检索。代理学习 *政策*,而不仅仅是API。

这种配对在其他地方并不完全存在:

方法原始技能传授差距
管理混合RAG(Cloudflare AI Search,Nia)扁平块+相似性--黑匣子评分,无审计追踪
工具返回答案(Context7)2个工具返回答案查询形状代理无法对跳过的内容进行推理
技能胜过CLI(QMD)CLI胜过平面搜索查询扩展没有树可导航
doctree mcp+ /doc-read通航树面包屑、多实例路由、维基编译

为什么迭代检索获胜:

  • 上下文腐烂。 在1M的令牌窗口中填充块会降低输出。面包屑导航使工作内存保持较小。
  • 可审计性。 search_documents → get_tree → navigate_tree → get_node_content 这是一条可回放的轨迹。余弦分数不是。受监管的域名可以运送前者。
  • 逐步披露。 更少的可导航原语击败了工具蔓延(参见Cloudflare代码模式)。

多实例=客户端联盟。 以不同的名称注册多个doctree服务器;这 /doc-read skill对路由策略进行编码。在不涉及技能的情况下添加或删除实例。看 客户端设置→ 多实例路由.

______________________________________________________________________

LLM Wiki模式

┌─────────────────┐     ┌─────────────────┐     ┌─────────────────┐
│  Raw Sources    │     │  The Wiki        │     │  The Schema     │
│  (immutable)    │ ──→ │  (LLM-maintained)│ ←── │  (you define)   │
│  notes · logs   │     │  runbooks · refs │     │  CLAUDE.md rules │
└─────────────────┘     └─────────────────┘     └─────────────────┘

______________________________________________________________________

配置(摘要)

---
title: "Descriptive Title"
description: "One-line summary — boosts ranking"
tags: [relevant, terms]
type: runbook          # runbook | guide | reference | tutorial | architecture | adr
category: auth
---

所有非保留的前体字段都成为过滤器方面:

search_documents("auth", filters: { type: "runbook", tags: ["production"] })

常见环境变量:

变量默认值描述
DOCS_ROOT./docsDocs文件夹
DOCS_GLOB**/*.md逗号分隔的球体(**/*.md,**/*.csv,**/*.jsonl)
DOCS_ROOTS--加权多重集合(./wiki:1.0,./rfcs:0.5)
PORT3100HTTP模式端口
WIKI_WRITE*(未设置)*1 启用写入工具
GLOSSARY_PATH$DOCS_ROOT/glossary.json查询扩展术语表

完整参考: docs/CONFIGURATION.md.

术语表 --地点 glossary.json 在用于双向查询扩展的docs-root中:

{ "CLI": ["command line interface"], "K8s": ["kubernetes"] }

首字母缩略词定义如下 "TLS (Transport Layer Security)" 也会自动提取。

结构化数据 --CSV/JSONL文件成为文档,其中每一行都是一个树节点。列角色(id、标题、描述、方面、URL)是从标题中自动检测的。看 docs/STRUCTURE-DATA.md.

______________________________________________________________________

从源头运行

git clone https://github.com/joesaby/doctree-mcp.git
cd doctree-mcp && bun install

DOCS_ROOT=./docs bun run serve          # stdio
DOCS_ROOT=./docs bun run serve:http     # HTTP (port 3100)
DOCS_ROOT=./docs bun run index          # CLI: inspect indexed output
bun test

______________________________________________________________________

演出

操作时间令牌成本
完整索引(900个文档)2-5秒0
增量重新索引~50ms0
搜索5-30ms~300-1K代币
树轮廓\<1ms~200-800个标记

______________________________________________________________________

文档

设置和操作

  • 操作模式 --stdio·HTTP·CLI
  • 客户端设置 --克劳德代码·光标·风帆·Codex·OpenCode·克劳德桌面
  • 部署 --铁路·Fly.io·渲染·Cloudflare容器·Docker
  • 配置 --env-vars、frontmatter、排名调整

模式和概念

______________________________________________________________________

站在肩膀上

许可证

麻省理工学院

目录标签

目录标签

文档检索TypeScriptClaude本地部署树形导航BM25AI辅助技术文档管理

支持客户端

ClaudeCursor

接入字段

传输方式(transport,传输协议)

未说明

鉴权方式(authType,认证方式)

oauth

工具数量(toolCount,工具数)

8

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

未说明oauth部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

仍需确认:installCommand

来源信息

继续浏览同类 MCP