← 返回目录
L

Lat MCP Server

社区
用 Markdown 为代码库构建知识图谱
分类
开发工具 第 95 / 438
Stars
★ 2.0k 非常热门
传输方式
stdio(本地进程)
运行环境
Node.js 22+
凭据
可选 API Key
许可证
MIT
最近提交
62FMRS · C

lat.md 是一个以 Markdown 编写、面向代码库的知识图谱工具,由 Vercel Labs 仓库发布(MIT 许可,npm 包名 lat.md)。它把领域知识拆成 lat.md/ 目录下互相链接的 Markdown 文件,用 [[wiki links]]、源码符号链接和 // @lat: 反向注释把文档与代码绑定,并靠 lat check 强制一致性。CLI 还提供 lat search 语义检索、lat expand 展开引用以及 lat mcp 启动 MCP 服务器供编辑器集成。语义检索默认完全离线(内置 all-MiniLM-L6-v2 的 WASM 版本),也支持通过 OpenAI 或 Vercel AI Gateway 密钥使用托管嵌入。README 未提供 MCP 服务器的清单、工具列表或客户端配置示例,因此本档案不含具体工具名与安装配置。总体适合使用编码 agent、且愿意以 Markdown 维护领域知识的团队;对不愿在源码中加注释或不需要 agent 的场景价值有限。

最强项 · 文档质量 15/20 最弱项 · 可靠性 10/20

可靠性
10/20
安全与权限
12/20
维护活跃度
14/20
文档质量
15/20
安装易用性
11/20
查看各项评分依据
可靠性 10/20
README 说明通过 `lat mcp` 启动 MCP 服务器,并提供 `lat check` 校验图的一致性,方案思路清晰;但仓库未缓存服务器清单,本次审查仅见 README,看不到 MCP 初始化握手、工具列表声明、错误处理与测试文件,静态规则下无法把可靠性评到 12 以上。缺少服务器的可执行证据(未见 CI 工作流文件与提交的测试用例)即为扣分项,故给 10。
安全与权限 12/20
依赖边界较清楚:语义搜索默认离线运行,使用打包的本地 all-MiniLM-L6-v2(WASM,无原生二进制、无网络);只有在用户显式提供 OpenAI 或 Vercel AI Gateway 密钥时才走远程嵌入。密钥有明确的解析顺序(环境变量 / 密钥文件 / helper 命令 / 配置文件),helper 有 10 秒超时。但文档未说明密钥是否会被写入磁盘、是否随请求外发到何处、初始化钩子和 GitHub bot 会带来哪些自动化副作用及确认机制,权限与数据流披露不完整,故扣分;未发现恶意、凭据窃取或不可逆默认操作等红线行为。给 12。
维护活跃度 14/20
MIT 许可明确,Star 数较高(仅作发现信号,不计分),有 1913 stars 与 33 个未关闭 issue,说明项目有人使用且仍在维护而非归档;npm 包与版本徽章显示有正式发布渠道。但仓库本身未缓存,看不到提交节奏、issue 响应时长、依赖更新与安全响应通道的具体证据,治理与版本信息存在缺口,因此不能给高分。给 14。
文档质量 15/20
文档层次较好:问题动机、方案概念(`[[wiki links]]`、源码回链注释、`lat check` 强制一致性)、目录结构示例、完整 CLI 命令(init/check/locate/section/refs/search/expand/mcp)以及配置的密钥解析顺序与 `lat reindex` 切换后端的方式均有说明,还包含开发环境要求(Node 22、pnpm、rustup)。扣分项在于:MCP 服务器的配置示例、工具参数细节、成本与故障排查说明缺失,且 README 属不可信证据,需与实际源码交叉验证而无源码可查。给 15。
安装易用性 11/20
安装路径简短清晰:`npm install -g lat.md` 后在目标仓库运行 `lat init` 即可脚手架化 `lat.md/` 目录,语义搜索离线默认可用,无需 API key。但缺少在主流客户端(编辑器/IDE)中接入 MCP 的配置示例,也未见平台兼容性说明;开发构建需要 Rust/WASM 工具链,门槛偏高。因无服务器清单与可执行证据,setup 上限受限于 15,实际因客户端接入示例缺失给 11。

静态评测 · 未实际运行收录于 2026-09-10

查看 FMRS 评分方法 →

选型与风险

能访问什么读取本地文件写入 / 删除本地文件

适合谁

  • 希望为代码库建立可维护知识图谱的团队与个人开发者
  • 使用编码 agent 并希望其获得稳定、可检索上下文的使用者
  • 以 Markdown 为文档载体、希望文档与源码保持同步的项目
  • 需要在离线环境下做语义检索(默认使用本地 WASM 嵌入模型)的场景

不适合谁

  • 只想维护单个扁平 AGENTS.md 文件的小型项目(知识图谱的收益有限)
  • 不使用编码 agent、也不打算维护 Markdown 领域文档的团队
  • 期望开箱即用托管服务或云端多人协同文档平台的用户
  • 不愿在源码中添加 // @lat: 注释的项目

所需权限

  • 对项目仓库的读写权限(lat init 会创建 lat.md/ 目录并配置编码 agent 的钩子与指令)
  • 在配置托管嵌入时读取 API 密钥:LAT_LLM_KEY 环境变量、LAT_LLM_KEY_FILE 指定的文件,或执行 LAT_LLM_KEY_HELPER 指定的 shell 命令
  • 写入本地索引/配置(lat reindex、lat config 涉及本地缓存与配置文件)

风险与副作用

  • 若使用托管嵌入(OpenAI 或 Vercel AI Gateway)并配置密钥,相关文本可能被发送至外部服务;默认离线本地模型无网络请求
  • LAT_LLM_KEY_HELPER 会执行 shell 命令以打印密钥,若该变量被不受信任的来源设置,存在命令执行风险
  • 密钥文件若权限配置不当可能被其他本地进程读取
  • 知识图谱若长期不运行 lat check 维护,可能与代码实际状态漂移,误导 agent
  • lat init 会修改编码 agent 的钩子与指令配置,可能影响既有工作流

安装接入

准备工作

运行环境:Node.js 22+

LAT_LLM_KEY 可选密钥 可选,直接填入 OpenAI(sk-...)或 Vercel AI Gateway(vck_...)API 密钥,用于托管嵌入;不填则使用本地离线模型。
其他可选配置项(2 个)
LAT_LLM_KEY_FILE 可选 可选,指向一个包含 API 密钥的文件路径,作为 LAT_LLM_KEY 的替代。
LAT_LLM_KEY_HELPER 可选 可选,一个打印 API 密钥的 shell 命令(10 秒超时),作为前两者的替代。
  1. 全局安装:npm install -g lat.md
  2. 在要使用 lat 的仓库中运行 lat init,为常用编码 agent 配置钩子与指令。
  3. lat init 会生成 lat.md/ 目录,在其中编写描述架构、业务逻辑、测试规格的 Markdown 文件。
  4. 使用 [[file#Section#Subsection]] 在小节间互链,用 [[src/auth.ts#validateToken]] 链接源码符号。
  5. 在源码中添加 // @lat: [[section-id]] 注释(Python 用 # @lat: [[section-id]])建立实现与概念的关联。
  6. 运行 lat check 校验图谱与文档一致性。
  7. 需要编辑器集成时运行 lat mcp 启动 MCP 服务器。

开发环境要求 Node.js 22、pnpm,以及通过 rustup 安装的 Rust;构建命令为 pnpm install、pnpm buildall、pnpm test。

验证是否装好

运行 lat mcp 启动 MCP 服务器后,在客户端工具列表中应能看到 lat 提供的工具;也可以先用 lat check 确认图谱校验正常。

常见排障

  1. lat check 报错:表示存在引用不一致或缺少 // @lat: 反向引用的规格,按提示补齐链接或注释
  2. 语义检索结果不理想:尝试用 lat reindex 重建索引;如需更高质量可用 --remote 切换托管嵌入,或 --local 强制离线模型
  3. 找不到密钥:确认 LAT_LLM_KEY、LAT_LLM_KEY_FILE、LAT_LLM_KEY_HELPER 的解析顺序,或运行 lat config 查看配置文件位置
  4. 编译或运行失败:确认 Node.js 版本为 22,已安装 pnpm,且 Rust 通过 rustup 安装并具备对应 WASM 目标
  5. lat mcp 无法在编辑器中使用:确认命令已在项目根目录启动,且客户端配置指向该 MCP 服务器
  6. 无法定位小节:先用 lat locate 做精确或模糊查找,再用 lat section 查看该小节的链接与引用

试试这样问

连接成功后,可以直接对 AI 助手这样说:

  • 搜索知识图谱:我们的认证流程是怎样的?
  • 显示 auth#OAuth Flow 这一节的内容及其链接。
  • 哪些地方引用了 architecture#Request Pipeline?
  • 帮我展开这条提示里的 [[OAuth Flow]] 引用。

使用场景

让 agent 通过知识图谱快速检索设计决策、约束与领域上下文,而不是反复 grep 代码库
在评审 diff 时先看 lat.md/ 中的语义变更,理解改了什么、为什么改
让 agent 在会话结束时把提示中的上下文与推理写入图谱,供后续会话复用
把测试用例写成 lat.md/ 中的小节并标记 require-code-mention: true,由 lat check 检查测试代码是否有 // @lat: 反向引用
构建 pre-commit 钩子、GitHub 机器人或 CI 任务在后台维护知识图谱
通过 lat search 做语义检索,通过 lat expand 在提示中展开 [[refs]]

详细介绍

lat.md 是一个以 Markdown 编写、面向代码库的知识图谱工具。它在项目根目录创建 lat.md/ 目录,用互相链接的 Markdown 文件描述架构、业务逻辑与测试规格:小节之间用 [[wiki links]] 相连,文档可链接到源码符号(如 [[src/auth.ts#validateToken]]),源码则用 // @lat: [[section-id]] 注释(Python 为 # @lat: [[section-id]])反向引用,并通过 lat check 保证引用与文档不漂移。其目标是解决单个 AGENTS.md 文件随代码库增长而难以维护的问题,让 agent 通过知识图谱而非反复 grep 来获取设计决策、约束与领域上下文。CLI 提供 lat init、lat check、lat locate、lat section、lat refs、lat search、lat expand 等命令;其中 lat mcp 用于启动 MCP 服务器以集成编辑器。语义检索默认离线运行,使用内置的 all-MiniLM-L6-v2 本地嵌入模型(编译为 WebAssembly,无需网络与原生二进制);也可通过 OpenAI 或 Vercel AI Gateway 密钥切换到托管嵌入。

同类可选方案

Context7 80 · B

Upstash 官方维护,为 AI 编码助手提供实时更新的第三方库文档

★ 63.3k · 工具数 2 与当前对比 →

源版本 e52136e98e06 数据同步于 2026-10-19 查看 FMRS 评分方法