关于 loci
loci 是一款本地优先的知识库,可搜索笔记和文档、回答问题,并在 AI 工具间共享持久上下文。它结合向量检索与 BM25,答案附带来源引用,并提供 MCP、命令行和网页控制台。
主要功能
- 01结合向量与 BM25 的混合搜索
- 02答案附带文件和章节引用
- 03索引笔记及多种文档格式
- 04保存和撤回持久记忆
- 05通过网页控制台浏览和管理
适用场景
- 01跨笔记目录查找项目决策
- 02提问时核对引用的证据
- 03在 AI 工具间共享持久上下文
- 04检查和更新 Agent 记忆
MCP 相关
MCP 服务提供搜索、问答、记忆、链接、图谱、wiki、harness、统计和索引工具,并公开笔记资源与提示词。多个 MCP 客户端可通过使用相同的 LOCI_HOME 共享一个实例。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
8收录的工具列表 · 更新于 2 周前
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| k | integer | 否 | 要返回的命中数,1-20(默认值为 5) |
| in | string | 否 | 仅返回源路径包含此子字符串的结果,例如 'docs/en' 或 'projects' |
| tag | string | 否 | 仅返回 frontmatter 标签包含此内容的结果,例如 'rag' 或 'memory' |
| query | string | 是 | 要查找的内容,支持任意语言 |
详细介绍
English · 简体中文 · 繁體中文 · 日本語 · 한국어
将散落的笔记、项目文档和 Agent 记忆整理成可搜索、可提问的知识库——可通过 MCP 服务、终端或浏览器使用。
loci 将向量搜索与 BM25 结合,并在回答中附上 file > section 格式的引用。你的文件和索引始终保存在本机。嵌入和聊天请求会发送给你配置的提供商;使用本地端点则可让整个工作流离线运行。
MCP 是核心。 在 Claude Desktop、Cursor、Cline 或其他 MCP 宿主中挂载 loci-mcp,助手即可将整个知识库作为工具使用。控制台和桌面外壳只是同一索引的备用前端——你完全不必使用它们。
快速开始 · 配置 MCP · Web 控制台 · 使用指南 · 中文说明

真实控制台界面,使用虚构演示数据。未连接任何个人知识库、账户或 API 密钥;数量仅供示意。
深色主题预览

你可以做什么
| 需求 | loci 如何帮助你 |
|---|---|
| 找到埋在笔记中的某项决策 | 跨目录混合搜索,并支持按标签、路径和日期筛选 |
| 提问并核查依据 | 回答引用来源章节;可选择逐条核验主张 |
| 在 AI 工具之间传递上下文 | MCP 工具共享同一个实例;持久记忆以 Markdown 文件保存 |
| 查看每个编码 Agent 记得什么 | 发现 Harness、浏览文件、查看各工具统计信息和摘要笔记 |
| 直观管理知识库 | 内置 Web 控制台,支持搜索、问答、记忆、索引和审计 |
Markdown、纯文本、HTML、org-mode 和聊天导出文件均可开箱即用。可选扩展还支持 PDF、Word 和 OCR。继续使用你现有的笔记编辑器或 Obsidian 知识库即可。
快速开始
先试用,无需配置
pip install loci-rag
loci demo
loci demo 会将六篇虚构笔记复制到 ./loci-demo-notes,对其分块,并回答三个示例问题——引用精确到 file > section,无需 config.toml、API 密钥或网络。它仅使用关键词(BM25;这是混合搜索与向量搜索结果融合时采用的同一排序方式),这正是它的意义所在:在你决定配置密钥之前,就能先运行起来。之后添加 [embed],同一索引即可切换为混合搜索。

在随附示例笔记上运行 loci demo 的真实输出;路径已缩短,耗时因情况而异。
为自己的笔记建立索引
需要 Python 3.11+。从源码开始,以便使用示例配置:
git clone https://github.com/IvenKooLab/loci.git
cd loci
python -m pip install -e .
cp config.example.toml config.toml
编辑 config.toml:填写 [llm] 和 [embed],并将 [[sources]].path 改为你的笔记目录。嵌入端点必须支持 /embeddings;聊天和嵌入可以使用不同的提供商。
loci ingest
loci search "deployment decisions"
loci ask "What did we decide about deployment, and why?"
已有配置?使用 python -m pip install loci-rag 安装软件包,并将 LOCI_HOME 设为你的实例目录。若需支持可选文档格式,请使用 python -m pip install 'loci-rag[pdf,docx]'。
可通过
BRAIN_LLM_API_KEY和BRAIN_EMBED_API_KEY提供 API 密钥。更改嵌入模型后,使用loci ingest --force重建索引。
Web 控制台
loci serve-http
打开 127.0.0.1:8765/ui,浏览 Harness 记忆、搜索、提问、编辑共享笔记并检查索引活动。点击搜索结果会打开证据窗格,显示摘录来源的段落——引用格式为 file > section,无需离开控制台即可核查。控制台支持中英文和浅色/深色切换;无需构建前端。
默认情况下,匿名的本机回环客户端拥有管理员权限。若通过反向代理或 SSH 隧道访问,请设置 [http] local_admin = false 并配置基于角色的令牌。详见访问控制。
对于 DeepSeek Harness,loci-dsh 通过同一 HTTP 后端,将搜索、问答和记忆捕获功能引入 Harness 工作台。
连接你的 AI 工具
将每个 MCP 客户端指向同一个 LOCI_HOME,以便它们共享相同的配置、索引和记忆文件:
{
"mcpServers": {
"loci": {
"command": "loci-mcp",
"env": { "LOCI_HOME": "/absolute/path/to/your/loci-instance" }
}
}
}
如果客户端无法找到 loci-mcp,请使用绝对可执行文件路径。实例目录必须包含你的 config.toml。
| MCP 工具 | 用途 |
|---|---|
brain_search · brain_ask | 检索摘录或获取附有引用的答案 |
brain_remember · brain_forget | 存储或撤回持久记忆 |
brain_links · brain_graph | 探索笔记链接和提取出的关系 |
brain_wiki · brain_harness | 整合知识并检查 Agent 记忆 |
brain_stats · brain_ingest | 检查并刷新索引 |
服务还会提供笔记资源,以及简报、学习计划和矛盾检查提示词。详情请参阅 MCP 指南。

实际的 loci-mcp 输出:真实二进制程序中的 initialize、tools/list 和 prompts/list。
原生构建(Rust)
使用相同的检索流程和 MCP 接口,无需安装 Python 运行时—— 只需一个二进制文件,索引也会存储在单个 SQLite 文件中,而非数据库 目录中:
cargo build --release -p loci-cli # in native/
./target/release/loci-mcp --config ~/.loci/config.toml
状态:核心功能和 MCP 已完成;打包和桌面外壳正在开发中。
参见 native/,了解已移植的内容以及用于确保行为一致的测试
(分块、冻结的 default 分词器、CJK 二元组误判案例、RRF 和
增量导入)。两个构建版本使用独立的索引——原生版本不会读取 ChromaDB
实例;迁移命令已列入计划。
简单的日常工作流
loci watch # keep changed documents indexed
loci remember "Use staging for demos" --title "Demo environment"
loci search "demo environment" --tag memory
loci ask "How should I prepare a demo?" --verify
loci harness # inspect detected agent memories
索引采用增量方式。笔记仍以 Markdown 格式保持可读。若要在多台设备上使用,请同步源文件和记忆笔记,然后在每台设备上重建本地索引;不要将凭据放入代码仓库。
## 文档| 指南 | 内容 |
|---|---|
| 使用指南 / 中文指南 | 命令、筛选器、Harness 设置、访问控制和本地模型 |
| 配置示例 | 提供方设置、来源目录和运行时选项 |
| 架构 | 模块和检索流程 |
| 更新日志 · 路线图 | 已发布的变更和计划中的工作 |
| 参与贡献 | 开发规范和离线测试 |
loci 使用兼容 OpenAI 的 SDK 和 ChromaDB,不依赖 LangChain 或 LlamaIndex。BM25、加载器和 MCP 传输均在项目中实现。
python -m pip install -e '.[dev,pdf]'
pytest # offline tests; no API keys required
在 Glama、ModelScope 和 awesome-mcp-servers 上查找 loci。源码:GitHub · Gitee。基于 MIT 许可。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。
