mcpField
L
lanternkb

lanternkb

本地服务
github.com/ankitb073搜索与检索02 周前更新

关于 lanternkb

lanternkb 是本地 MCP 服务,可按语义和关键词搜索选定文件,适合希望 AI 工具检索个人文件并控制文件夹访问范围的用户。它会在索引前遮蔽检测到的秘密,并将搜索留在本地,模型下载除外。

主要功能

  1. 01语义与关键词文件搜索
  2. 02按文件夹设置访问级别
  3. 03索引前遮蔽秘密
  4. 04沙箱化文件读取
  5. 05可选文件类型插件

适用场景

  1. 01按主题搜索笔记和文档
  2. 02在 PDF 和代码中查找词语
  3. 03向助手开放选定文件夹

MCP 相关

它作为本地 MCP 服务供 Claude Code 和其他 MCP 客户端使用,搜索设置时选定的文件夹。`open` 层级只返回标记为开放的文件夹中的文件。

配置

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

mcp.json · 通用配置
{
"mcpServers": {
"ankitb073-lanternkb": {
"command": "uvx",
"args": [
"lanternkb"
]
}
}
}
启动命令uvx lanternkb

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
pypilanternkb0.1.3

工具

5

收录的工具列表 · 更新于 2 周前

参数类型必填说明
kinteger否
pathstring否仅搜索此文件夹中的文件
querystring是关键词、问题或名称;* 按最新顺序列出文件
typesarray否仅搜索这些文件类型,例如 ["pdf","md"]
modified_afterstring否YYYY-MM-DD,或相对时间:30d、2w、6m、1y 前
modified_beforestring否YYYY-MM-DD(该日期之前)

详细介绍

lanternkb

为你和你选择的 AI 工具,在本地私密地搜索自己的文件。

lanternkb 会为你选择的文件夹建立索引,并按含义和精确词语进行搜索。它以本地 MCP 服务的形式运行,供 Claude Code 和其他助手使用,无需守护进程、开放端口,也不会收集遥测数据。它检测到的机密信息会在存储前进行脱敏;对于会将搜索结果发送到云端的助手,你可以决定它们能访问哪些文件夹。

安装

Apple 芯片的 macOS 14 或更高版本,或 Linux,并安装 uv:

uv tool install --managed-python --python 3.12 "lanternkb[embed,ui]"
lanternkb setup        # asks for folders and whether an assistant may see them, offers the models, indexes

--python 3.12 很重要:不加此参数时,uv 可能会选择机器上已有的较旧 Python,导致安装失败。在 macOS 上,安装大约需要 0.9 GB 空间,嵌入模型还需约 1.2 GB。运行 uv tool upgrade lanternkb 即可更新。

搜索

lanternkb search "what did the plumber say about the boiler"
lanternkb search "boiler quote" --type pdf,docx --since 30d
lanternkb recent       # files changed lately
lanternkb ui           # the settings page, with a search box
lanternkb doctor       # checks the setup and says what to fix

连接助手之前,请运行 lanternkb setup:服务会搜索你在此处选择的文件夹。

在 AI 工具中使用

Claude Code:

  1. lanternkb mcp-setup 会输出一条 claude mcp add 命令。运行它。
  2. 它注册的服务只会返回你标记为开放的文件夹中的文件,不会返回其他内容。
  3. Claude Code 也可以使用自身的工具读取文件,因此 mcp-setup 还会输出拒绝规则。将这些规则添加到 ~/.claude/settings.json,以阻止它的工具访问仅限本地的文件夹和索引。

**Codex、Cursor、VS Code、Gemini CLI 和其他任何 MCP 客户端:**运行 lanternkb serve --tier open,将其用作 stdio 服务。对于 Codex,在 ~/.codex/config.toml 中添加:

[mcp_servers.lanternkb]
command = "lanternkb"
args = ["serve", "--tier", "open"]

用户指南提供了其他客户端所需的 JSON 格式,以及需要留意的事项。

可读取的内容

笔记、代码、PDF、Word 和 OpenDocument 文件、富文本、已保存的网页和字幕;也可选择读取扫描页面和音频。插件可以添加文件类型、嵌入模型,以及决定哪些文件夹开放的规则(插件)。

隐私与安全

  • 每个文件夹都标记为 open 或 local-only,新文件夹默认仅限本地。
  • 凭据文件夹和疑似包含机密信息的文件会被跳过;机密信息扫描器会在内容被拆分或嵌入之前,对检测到的内容进行脱敏。任何检测到机密信息的文件都会被设为仅限本地,即使它位于开放文件夹中。
  • 文件由沙盒工作进程读取,默认拒绝访问:macOS 上使用 sandbox-exec,Linux 上使用 Landlock 和 seccomp。
  • 除了你同意下载的模型,不会有任何内容通过网络传输。

威胁模型说明了哪些内容受到保护,哪些不受保护。

效果如何

在一组人工生成的文件上进行测试(三个开源代码库和 654 篇生成的笔记),使用 330 个留出问题:nDCG@10 为 0.831;grooveseek 使用其重排序器时为 0.777,QMD 为 0.760;单次搜索耗时约 30 ms(使用重排序时约 120 ms,在 M5 Max 上)。在最难的留出测试中,测试内容是植入的虚假机密信息,扫描器将其中 71.9% 排除在索引之外。因此请将它视为第二道防线:将凭据文件夹排除在索引文件夹之外,或将其设为仅限本地。

限制

  • 机密信息扫描器会漏掉某些机密信息;看起来像示例的值(example、changeme、<placeholder>、${VARIABLE})不会被处理。
  • 在 Linux 上,重排序在 CPU 上运行,每次搜索耗时 0.4 至 1 s,因此默认关闭,需启用后才会运行。
  • 不会为电子邮件、浏览器历史记录、日历和联系人卡片建立索引。
  • 扫描版 PDF 和图像需要 OCR,默认关闭。

更多信息

许可证

Apache-2.0:请参阅 LICENSE、NOTICE 和 THIRD_PARTY_NOTICES.md。

评论

支持 Markdown

第一次接触 MCP?

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

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