claude-find
claude-find
必要な時に、Claude Codeの全セッションからディープメモリを呼び出します。

過去のすべてのClaude Codeセッションに対してセマンティック検索を行います。意味やキーワードに基づいてコンテキストを見つけ出します。圧縮された要約ではなく、生の会話トランスクリプトを検索するため、Claudeは推論、制約、失敗したアプローチ、決定事項など、全体像を把握できます。
セットアップ
brew install bun ollama
bunx claude-find setupsetupを実行すると、Ollamaが起動し、埋め込みモデルがプルされ、セッションの保持期間が永続に設定され、MCPサーバーがClaude Codeに登録されます。セッションは起動時にバックグラウンドでインデックス化されます。検索は即座に機能し、インデックス化が進むにつれて結果がより完全なものになっていきます。
BunとOllamaをインストールし、bunx claude-find setupを実行してください。プラットフォームを検出し、不足しているものがあればガイドが表示されます。
Related MCP server: am-memory
使用方法
Claude Codeのセッション内で以下のように使用します:
/find that database migration we discussed last week
/find why we chose websockets over polling
/find the session where we kept getting timeout errors
/find refactoring the payment module across all projectsClaudeは過去のセッションをセマンティックに検索し、関連する会話を見つけ出し、コンテキストを統合します。何が試され、何が失敗し、どのような制約を設定し、どのような決定がなされたかを把握します。
仕組み
インデックス化:
~/.claude/projects/にあるすべてのClaude CodeセッションJSONLファイルをインデックス化します。抽出: ユーザーとアシスタントのメッセージ、コンパクトな要約、ツール呼び出しからのファイルパスを抽出します。
強化: 検索精度向上のため、各チャンクにメタデータコンテキスト(プロジェクト、ブランチ、ファイル、日付)を付与します。
埋め込み: Ollama経由でqwen3-embeddingを使用して会話チャンクを埋め込みます(GPUアクセラレーション対応)。
検索: Reciprocal Rank Fusion(RRF)を介して、ハイブリッドセマンティック検索とキーワード検索(FTS5)を統合します。
返却: Claudeが完全なコンテキストで統合できるように、生の会話チャンクを返します。
アップグレード後は、bunx claude-find indexを実行して、最新の改善点を反映したインデックスを再構築してください。
特徴
生のトランスクリプトを検索: 圧縮によって情報が失われることはありません。
遡及的: 既存のすべてのセッションですぐに機能します。フックは不要です。
永続的な履歴: セットアップによりClaude Codeの30日間のセッションクリーンアップが無効化されるため、セッションを永久に検索可能です。
ノンブロッキング: 起動時にバックグラウンドでインデックス化されます。インデックス化の途中であっても、検索は即座に機能します。
コンパクトな要約を活用: Claude自身のセッション理解をランキングで強化します。
ツール呼び出しのメタデータをインデックス化: 触れたファイルや発生したエラーで検索可能です。
高速: Ollama + GPUにより、インデックス化を高速かつメモリ制限内で維持します。
要件
ライセンス
MIT
Available Tools
1 toolsearch_sessionsA
Search the full conversation history from past Claude Code sessions stored in ~/.claude/projects/. This tool has access to the complete raw transcripts of all previous sessions — including the actual back-and-forth discussion, reasoning, failed approaches, user constraints, and code decisions. Use this tool FIRST whenever the user mentions anything from a past session, asks 'what did we discuss', 'pull in context from', 'remember when we', 'how did we handle', or references any prior work. This tool searches semantically — the user doesn't need to remember exact words. Much more detailed than built-in memory.
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | What to search for — natural language description of the past session or topic | |
| max_sessions | No | Max sessions to return (default 3, max 5) | |
| max_chunks | No | Max conversation chunks per session (default 3, max 3) | |
| scope | No | 'current' searches only the current project (default), 'all' searches across all projects. Use 'all' when user says 'across all projects' or doesn't specify a project. | current |
| project_filter | No | Filter to a specific project by name (e.g. 'visk', 'myapp'). Use when user says 'in visk' or 'in the payments project'. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden. It discloses the scope of data ('complete raw transcripts', 'discussion, reasoning, failed approaches') and the semantic search nature. It does not mention any destructive actions or potential privacy concerns, but for a read-only search tool, the disclosure is sufficient.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise with four sentences, starting with the core purpose and then usage guidance. Every sentence contributes meaning, though it could be slightly trimmed without loss.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description adequately explains the tool's function and when to use it, but it does not describe the return value format or content. The schema hints at output via parameters like max_sessions and max_chunks, but without an output schema, the description should explicitly state what is returned (e.g., matching sessions with chunks).
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with detailed parameter descriptions. The tool description adds context about the underlying data ('complete raw transcripts') that enriches understanding of what the 'query' parameter searches over, going beyond the schema's literal description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool searches 'full conversation history from past Claude Code sessions' and specifies the exact storage location. It distinguishes itself from built-in memory by claiming to be 'much more detailed', which is useful even though no siblings are listed.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly tells when to use the tool first, listing example phrases like 'what did we discuss' and 'remember when we'. It also explains that searches are semantic, reducing the need for exact words, which is a clear usage recommendation.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
1 tool update
- First observed
search_sessions
TDQS
Scored across 1 tool
With only one tool, there is no possibility of confusion between tools. The tool's purpose is clearly defined.
The single tool name 'search_sessions' follows a consistent verb_noun pattern, though there are no other tools to compare against.
A single tool for searching is borderline thin; most servers of this scope would benefit from at least 2-3 tools (e.g., list_sessions, get_session). The count is at the low end of reasonable.
The tool covers the core search functionality well, but lacks complementary tools such as listing available sessions or retrieving full transcripts by ID, which would make the surface more complete.
Maintenance
Related MCP Connectors
Persistent memory for Claude Code and Cursor. Stop re-explaining your project every session.
Persistent cross-session memory shared by Codex, Claude Code, ChatGPT, and other AI agents.
Shared memory for coding agents. Stop re-explaining your codebase every session.
- SeturosOAuthcom.seturos
Shared work memory for Claude Code, Codex, Cursor and chat, scoped to each repository.
Related MCP Servers
- AlicenseAqualityCmaintenanceEnables AI assistants to query and analyze past Claude Code sessions, providing structured insights like file changes, decisions, errors, and git history across projects.119 npm1MIT
- AlicenseNot gradedqualityDmaintenancePersistent memory for Claude Code — a self-evolving knowledge layer that survives across sessions, grows from every conversation, and surfaces relevant context automatically.14MIT
- AlicenseNot gradedqualityDmaintenanceProvides persistent memory for Claude Code, automatically extracting and surfacing relevant context from past sessions to avoid re-explaining issues and decisions.MIT
- AlicenseNot gradedqualityAmaintenanceEnables Claude Code to search and retrieve past chat history from Claude.ai exports and Claude Code sessions, allowing the AI to reference previous conversations and decisions.MIT