memex
Claude をあなたにとってより賢くします。
MCP 経由で Claude に接続するローカルファーストのセカンドブレイン。ノートはプレーンな Markdown として保存され、ローカルの ML モデルでインデックス化されます。完全にオフラインで動作し、API キーは不要、データがあなたのマシンの外に出ることはありません。
問題
Claude の賢さは、会話の中にある情報によってのみ決まります。あなたの判断、あなたの文脈、あなたの考えは、毎回貼り付けない限り見えないままです。
You: What did we decide about the auth approach last sprint?
Claude: I don't have context from previous conversations...Related MCP server: memex
解決策
You: What did we decide about the auth approach last sprint?
Claude: [memex · search_notes · "auth approach decision"]
Found 2 notes:
Auth Architecture Decision Apr 14 #auth #backend
─────────────────────────────────────────────────────
Chose JWT + refresh tokens over sessions. Rationale:
stateless design fits horizontal scaling plan.
Based on your April 14th note: you went with JWT +
refresh tokens. Tom also flagged keeping auth decoupled
from payment logic, separate bounded contexts.Claude は回答前にあなたのノートを検索し、各会話の最後に知見を自動で保存します。頼まれることなく。
インストール
npm install -g @evan-moon/memexClaude Code に接続します:
memex mcp installこれにより、memex が Claude Code と Codex の両方に登録されます。インストール後はクライアントを再起動してください。いずれかのクライアントを手動で登録する場合:
claude mcp add memex -- node "$(memex mcp path)"
codex mcp add memex -- node "$(memex mcp path)"これだけです。初回実行時に、埋め込みモデル (~450MB) が ~/.memex/models/ に一度だけダウンロードされます。
自動リコール(オプション)
memex recall install検索を、Claude が実行するかどうかを判断するものから、自動的に行われるものに変えます。入力されたすべてのプロンプトがあなたのノートに対して意味的に検索され、上位 3 件のタイトルが Claude が回答する前にコンテキストとして注入されます — ネイティブメモリと同じ仕組みです。Claude はタイトルが関連しそうな場合、get_note で完全なノートを取得します。
バックグラウンドのデーモンが埋め込みモデルをウォーム状態に保つため(~/.memex/recall.sock)、ルックアップはコールドな CLI 検索がモデルのロードに費やす ~1.5 秒ではなく、約 ~30ms で完了します。2 時間アイドル状態が続くと終了します。
コスト: ウォーム状態で約 ~200MB の常駐メモリに加え、プロンプトあたり最大 3 件のノートタイトルのコンテキスト。削除は memex recall uninstall で行います。
機能
意味的検索、キーワードだけでなく意味でノートを見つけます。多言語対応(韓国語 + 英語)、
multilingual-e5-baseにより完全オフラインで動作ハイブリッド検索、ベクトル検索 + BM25 全文検索 + タグマッチングを、Reciprocal Rank Fusion で統合
チャンク単位の埋め込み、長いノートは約 ~340 トークンのパッセージに分割され個別に埋め込まれるため、3 ページ目に埋もれた回答も冒頭の段落と同じように見つけられます。検索はノートの最初の数行ではなく、マッチしたパッセージを返します
クロスエンコーダーによる再ランキング(オプトイン、
MEMEX_RERANK=1)、2 倍の候補を取得し、bge-reranker-v2-m3で並べ替えます。ゴールデンセットで hit@1 が約 ~+20pp 向上、検索あたり約 ~1.8 秒 — 自動リコールと CLI が即時ルックアップを前提に構築されているため、デフォルトではオフ日付フィルター、
--from/--toで検索を期間に絞り込みノートレイヤー、すべてのノートは
past(不変の記録)、state(変更可能な計画)、rule(Claude の行動指針)のいずれか。pastノートは更新を拒否し、ruleノートは Claude のシステムプロンプトに自動注入されますフラッシュバック、保存と検索が、別のフォルダーにある意味的に関連する古いノートを自動的に表示します。「124 日前に別の文脈でこれについて書いていましたね」
推論エンジン、決定的なシグナルが未統合のパターンを表面化します(複数年にまたがる軌跡、古くなった state ノート、タグの復活)。良いものを推論(出典付きの仮説)に昇格させることができ、ソースノートが変更されると自動的に無効化されます。コアに LLM はありません
MCP サーバー、Claude が自動的に検索・保存します。追加の CLAUDE.md セットアップは不要
自動リコール、すべてのプロンプトでノートを検索し、Claude が回答する前にヒットを注入するオプトインフック。リコールが Claude の「思い出す」ことに依存しません
重複検出、
save_noteは意味的に類似したノートがすでに存在する場合に警告し、作成ではなく更新を促しますバックリンク、
[[Title]]構文でノートをリンク。get_noteはどのノートがそれを参照しているかを表示シリーズ折りたたみ、日付付きの作業ログ(「… 2026-07-20」、「… 2026-07-23」)は結果ページで最大 2 スロットを占有し、検索はさらに何件を保留したかを報告
修正(アメンドメント)、訂正はそれが訂正する内容を記録します(
amends)。検索は置き換えられたノートにフラグを立て、すでに間違っているとわかっている主張を返す代わりに最新の修正を指し示しますダイジェスト、
memex digestは直近 N 日間に保存されたノートをフォルダーごとにグループ化して要約CLI、ターミナルからノートの追加、検索、タグ付け、閲覧、インデックス化が可能
Obsidian 互換、ノートは
.mdファイルとして保存され、既存のボールトと共存可能ローカル DB、
~/.memex/memex.dbにある SQLite +sqlite-vec
CLI
# Add notes
memex add # interactive prompt (asks for layer)
memex add --title "Note title" --content "..." --layer past
memex add --title "Note title" --file ./note.md --layer state
memex add --title "Note title" --content "..." --folder work/people/tom --layer past
memex add --title "Note title" --content "..." -T typescript -T architecture --layer past
# Layers
memex layer # distribution of past / state / rule
memex layer <id> state # move a note to a different layer
# Search
memex search "semantic search query" # multilingual
memex search "knowledge management" --limit 10 # multilingual: matches Korean/Japanese notes too
memex search "query" --tag typescript # filter by tag
memex search "query" --from 2026-04-01 # notes since a date
memex search "query" --from 2026-04-01 --to 2026-04-30
# Browse
memex list # recent 10 notes
memex list --limit 20
memex show <id>
memex tags # all tags with counts
memex related <id> # semantically related notes
memex digest # last 7 days + signals + inferences
memex digest --days 30 # summary of last 30 days
# Insights (inference engine)
memex signals # detect un-synthesized patterns
memex signals --type hidden_arc # one type only
memex signals dismiss <id> # triage (also: snooze)
memex signals mint <signalId> # print evidence bundle to synthesize
memex signals mint <signalId> --title "..." --summary "..." --confidence 0.7
memex inferences # list inferences (auto-flags stale)
memex schedule # print cron/launchd snippet (no daemon)
# Edit / delete
memex edit <id>
memex delete <id>
memex delete --yes <id> # skip confirmation
# Index external directories
memex source add ~/Documents/My\ Notes # register a vault
memex source list
memex source remove ~/Documents/My\ Notes
memex index # scan vault + all sources
memex index --force # re-index everything
memex reembed # re-embed with current model
# Config
memex config show
memex config set vault-path ~/Documents/Second\ Brain
# MCP
memex mcp install # register with Claude Code and Codex
# Auto-recall
memex recall install # search notes on every prompt, inject hits
memex recall uninstall # remove the hook
memex mcp path # print MCP binary pathMCP サーバー
Claude Code と Codex
memex mcp installまたは Claude Code の場合は手動で:
claude mcp add memex -- node "$(memex mcp path)"Codex の場合:
codex mcp add memex -- node "$(memex mcp path)"Claude Desktop
~/Library/Application Support/Claude/claude_desktop_config.json に追加:
{
"mcpServers": {
"memex": {
"command": "node",
"args": ["<path from `memex mcp path`>"]
}
}
}利用可能なツール
ツール | 説明 |
| ノートを保存。 |
| 意味的検索。 |
| 最近のノートを一覧表示 |
| すべてのタグをノート数付きで一覧表示 |
| すべてのフォルダーをノート数付きで一覧表示 |
| ID でノートの完全な内容とバックリンクを取得 |
| タイトルまたは内容を更新。 |
| ID でノートを削除 |
| 決定的な未統合パターン(hidden_arc / stale_state / dangling_link / tag_burst)を取得 |
| シグナルをトリアージし、 dismiss または snooze |
| 統合された仮説を一覧表示(先に陳腐化を再確認) |
| 完全な出典と変更・削除マーカー付きの 1 つの推論を取得 |
| 承認された仮説を永続化。明示的な確認が必要 |
推論はノートとは別に保持され(検索から除外)、事実ではなく仮説として引用されます。検出は決定的なままです。唯一の LLM ステップは推論の要約の合成であり、それは Claude が行います。memex は決して行いません。
ノートレイヤー
すべてのノートは、可変性に基づいて 3 つのレイヤーのいずれかに分類されます:
レイヤー | 意味 | Claude の権限 |
| 起こったことの記録、レトロスペクティブ、ミーティング、意思決定の根拠、デバッグセッション | 追記のみ。 |
| 現在の状態または計画、プロジェクトの進捗、ロードマップ、ある人物の現在の役割 | 自由に更新可能 |
| Claude の行動指針、コーディングスタイル、検索ポリシー | Claude は読み取り専用。書き込めるのはユーザーのみ |
CLI は list、search、show で各ノートの横に色分けされた [past] / [state] / [rule] バッジを表示します。
save_note(MCP)とmemex add(CLI)は明示的なlayerを必要とします。分類ルールはツールの説明に文書化されているため、Claude が正しく選択します。初回実行時、既存のノートにはフォルダーベースのバックフィルが適用されます:
projects/dev/herald→state、coding→rule、それ以外 →past。マイグレーションは冪等です。ruleノートは MCP サーバーの指示にも自動注入されます。詳細は下記の ルールレイヤー自動注入 を参照してください。
フラッシュバック
ノートを保存または検索すると、memex は別のフォルダーにある意味的に類似した古いノートを自動的に表示します。「124 日前に別の文脈でこれについて書いていましたね。」これはシステム生成のバックリンク(note_links.source = 'flashback')として保存され、あなたの [[wikilinks]](source = 'wiki')とは区別されます。
env で調整:
Env | デフォルト | 動作 |
|
| 最小の経過日数の差(日単位) |
|
| 最大ベクトル距離(小さいほど厳格なマッチ) |
|
| サーフェスごとの最大提案数 |
ルールレイヤー自動注入
layer = 'rule' のノートは、起動時に MCP サーバーの指示に ## House Rules セクションとして追加されます。Claude はすべての会話の開始時にそれらを確認でき、search_notes 呼び出しは不要です。コーディングスタイルガイドやその他の行動指針を置くのに適した場所です。
Env | デフォルト | 動作 |
| 有効 | 注入を完全に無効化するには |
|
| 注入セクションのバイト予算。超過分は |
ルールノートへの更新は、次回の Claude Desktop / Claude Code 再起動で反映されます。
設定
設定は ~/.memex/config.json にあります。
キー | デフォルト | 説明 |
|
|
|
|
| インデックス化する追加ディレクトリ(例: 既存の Obsidian ボールト) |
|
| 検索エイリアスマップ。例: |
memex config set vault-path ~/my-vaultアーキテクチャ
~/.memex/
config.json, vault path, sources, and aliases
memex.db, SQLite DB (notes + note/chunk vec embeddings + FTS5 index)
models/, cached embedding model
<vault>/
*.md, notes (Obsidian-compatible)パッケージ | 役割 |
| SQLite スキーマ、drizzle クエリ、sqlite-vec + FTS5 統合 |
| @huggingface/transformers によるローカル埋め込みモデル |
| ローカル cross-encoder リランカー(オプトイン) |
| CLI と MCP で共有されるノートサービス: 保存、編集、検索、ベクターインデックス |
| 設定、パスヘルパー、共有ユーティリティ |
| MCP サーバー(CLI dist に同梱) |
エコシステム
memex は、あなたのデータは自分のマシンに残り、AI がデータのもとへやってくるという原則を共有する、3 つのローカルファーストツールの 1 つです。これらは任意の MCP クライアントを通じて相互運用でき、どれも他のツールに依存しません。
flowchart TB
U([You])
subgraph I["Interfaces, talk to your tools"]
direction LR
CD[Claude Desktop]
CC[Claude Code]
H["Herald · voice"]
end
subgraph T["Local-first tools, each owns its data, on your machine"]
direction LR
F["firma · money<br/>~/.firma"]
M["memex · memory<br/>~/.memex"]
S["skope · news<br/>~/.skope"]
end
U --> I
I -- MCP --> F & M & S
F <-. never call each other .-> M
M <-.-> Sfirma · お金、ポートフォリオ、純資産、キャッシュフロー
memex · 記憶、ノート、そしてそれらの背後にあるセッションをまたいだ文脈
skope · ニュース、世界を見るためのパーソナライズされたレンズ
これらには、Claude Desktop、Claude Code、Cursor、または音声インターフェースである Herald からアクセスできます。ツール群はモデルを通じて構成され、互いに呼び出し合うことは決してありません。
llms.txt
llms.txt は、LLM エージェント向けのこのプロジェクトの機械可読な要約で、ドキュメントへのリンク付きの簡潔な説明であり、llms.txt 標準 に従っています。
ライセンス
MIT
This server cannot be deployed
Maintenance
Related MCP Connectors
Persistent memory for AI assistants: store, search, and connect knowledge across conversations.
Universal memory for AI agents and tools. Save, organize and search context anywhere.
- MyMemoryOAuthdev.mymemory
Long-term memory for AI assistants: search, read and save your notes, links and documents.
Persistent memory for AI agents. Search, store, and recall across sessions.
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceProvides AI agents with persistent, searchable memory that survives across conversations using semantic search, temporal versioning, and smart organization. Enables long-term context retention and cross-session continuity for AI assistants.14-
- AlicenseAqualityCmaintenanceA production-grade persistent memory service for AI agents. Agents forget everything between sessions by default — memex fixes that. It stores, retrieves, and ranks conversation memory using semantic search with recency decay, so agents surface what's relevant and recent, not just what's semantically closest.41MIT
- AlicenseAqualityBmaintenanceProvides persistent, searchable memory for AI agents, enabling them to retain, recall, and reflect on information across conversations.1916 PyPI1MIT
- FlicenseNot gradedqualityBmaintenanceUniversal memory for AI agents and tools. Save, organize and search context anywhere.2-