Skip to main content
Glama

lore

License: MIT TypeScript lore MCP server

针对您的 Claude Code 对话进行语义搜索。 查找您讨论过的任何内容——跨越所有项目、所有会话和任何分支。

lore MCP server

功能

  • 混合搜索(向量 + 关键词) 结合了 multilingual-e5-small 嵌入与 FTS5/BM25,并通过倒数排名融合(Reciprocal Rank Fusion)进行排序。既能按语义查找,也能按精确术语查找。

  • 完全本地化,无需 API 密钥 一切都在您的机器上运行。使用 ONNX Runtime 进行嵌入,使用 sqlite-vec 进行存储。没有任何数据会离开您的设备。

  • 会话结束自动索引 SessionEnd 钩子会在后台自动索引所有新会话。无需手动触发。

  • 后台索引 手动触发索引会立即返回。您可以在继续工作的同时监控进度。在其余内容完成索引的同时,您可以搜索已索引的内容。

  • 默认选择性退出 所有项目都会自动索引。您可以排除不需要的项目。无需注册。

  • 对话感知分块 按逻辑轮次(用户问题 + 完整的助手响应链)进行拆分,而不是任意的 token 窗口。正确处理工具使用链、思考块和多步交互。

  • 100+ 种语言 支持韩语、日语、中文、英语等 90 多种语言。具备 CJK 感知的分词估算,以实现精确的分块。

快速入门

添加到 Claude Code

# No install needed — always runs latest version
claude mcp add -s user lore -- npx getlore

# Or for a single project only
claude mcp add -s project lore -- npx getlore

添加到 OpenAI Codex CLI

# No install needed
codex mcp add lore -- npx getlore
npm install -g getlore

# Then register with your tool:
claude mcp add -s user lore -- getlore   # Claude Code
codex mcp add lore -- getlore            # Codex CLI

# Manage your install:
getlore --version   # Check installed version
getlore update      # Update to latest

使用方法

连接后,AI 可以直接使用 lore 的工具:

You: "What did we discuss about auth refactoring last week?"

Claude: [calls lore search] Found 3 relevant conversations...
        In your "my-webapp" project on March 15, you decided to...

首次设置:

  1. 索引 (Index) -- index() 会自动扫描所有项目,并在后台运行

  2. 搜索 (Search) -- 询问关于过去对话的任何内容

  3. 排除 (Exclude)(可选)-- 隐藏您不关心的嘈杂项目

工具

工具

用途

manage_projects

从索引中排除/包含项目(选择性退出模型)

index

启动后台索引。索引所有未排除的项目。模式:incremental(默认)、rebuildcancel

status

检查索引进度、预计完成时间、跳过原因、数据库健康状况

search

跨对话进行语义 + 关键词搜索

get_context

使用周围的对话内容扩展搜索结果

list_sessions

按项目浏览已索引的会话

为什么存在这个工具

Claude Code 将每次对话存储为 ~/.claude/projects/ 中的 JSONL 转录文件。几周后,您会在几十个项目中拥有数百个会话——关于架构决策、调试会话、代码审查和设计探索的讨论。

但目前没有办法搜索它们。您无法询问“我们对身份验证中间件采取了什么方法?”或“哪个项目进行了那次数据库迁移讨论?”

现有的工具要么需要云 API,要么会产生僵尸进程,要么将对话视为通用文档。lore 是专为 Claude Code 会话构建的:它理解轮次边界、工具使用链和思考块。它完全在本地运行,除了 Node.js 之外没有任何依赖。

工作原理

~/.claude/projects/*/*.jsonl
        |
   JSONL Parser (extracts user/assistant messages, skips noise)
        |
   Turn-pair Chunker (groups by logical conversation turns)
        |
   Transformers.js (multilingual-e5-small, INT8 quantized, 384d)
        |
   sqlite-vec + FTS5 (hybrid vector + keyword storage)
        |
   Reciprocal Rank Fusion (combines both signals for ranking)

存储: 单个 SQLite 文件位于 ~/.lore/lore.db,使用 WAL 模式以支持并发读取。

配置: 项目排除项存储在 ~/.lore/config.json 中。

环境变量

变量

默认值

描述

LORE_DIR

~/.lore

数据目录

LORE_DB

~/.lore/lore.db

数据库路径

CLAUDE_PROJECTS_DIR

~/.claude/projects

Claude Code 转录文件位置

在 Apple Silicon (M 系列) 上测得:

指标

数值

搜索延迟

20-30ms

索引速度

~10 个会话/秒

首次搜索(冷模型加载)

~5s

数据库大小

每 10 个会话约 0.1MB

模型大小(下载一次)

~112MB

“未找到会话”

运行 manage_projects 并使用 list 操作查看可用项目。除非被排除,否则所有项目默认都会被索引。

过期的锁文件

如果索引被中断,锁文件会在下次运行时自动清理(基于 PID 的检测)。

数据库损坏

删除 ~/.lore/lore.db 并重新索引。您的源数据 (~/.claude/projects/) 永远不会被修改。

开发

git clone https://github.com/hyunjae-labs/lore.git
cd lore
npm install
npm run build
npm test          # 118 tests

技术栈

许可证

MIT

Install Server
A
security – no known vulnerabilities
A
license - permissive license
-
quality - not tested

Latest Blog Posts

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/hyunjae-labs/lore'

If you have feedback or need assistance with the MCP directory API, please join our Discord server