memex
Claude가 당신을 더 잘 알게 하세요.
로컬 우선(Local-first) 방식의 세컨드 브레인으로, 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: Memsolus MCP Server
해결책
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가 답변하기 전에 컨텍스트로 주입됩니다 — 기본 메모리(native memory)가 동작하는 것과 같은 방식입니다. 그런 다음 Claude는 제목이 관련 있어 보이면 get_note로 전체 메모를 가져옵니다.
백그라운드 데몬이 임베딩 모델을 warm 상태로 유지하므로(~/.memex/recall.sock), 조회에 드는 비용은 ~30ms입니다. 콜드 CLI 검색이 모델을 로드하는 데 쓰는 ~1.5초와 대비됩니다. 2시간 후에는 유휴 상태로 종료됩니다.
비용: warm 상태에서 상주 메모리 ~200MB, 그리고 프롬프트당 최대 3개의 메모 제목이 컨텍스트로 추가됩니다. memex recall uninstall로 제거할 수 있습니다.
기능
의미 기반 검색, 키워드뿐만 아니라 의미로도 메모를 찾습니다. 다국어 지원(한국어 + 영어),
multilingual-e5-base를 통해 완전히 오프라인으로 동작합니다.하이브리드 검색, 벡터 검색 + BM25 전문 검색 + 태그 매칭을 Reciprocal Rank Fusion으로 융합합니다.
청크 단위 임베딩, 긴 메모는 ~340토큰 구절로 나뉘어 개별적으로 임베딩되므로, 3페이지에 묻힌 답도 도입부 문단의 답만큼 쉽게 찾을 수 있습니다. 검색은 메모의 첫 줄이 아니라 매칭된 구절을 반환합니다.
크로스-인코더 재랭킹(Cross-encoder reranking) (옵트인,
MEMEX_RERANK=1), 두 배 많은 후보를 검색하여bge-reranker-v2-m3로 재정렬합니다. 골든 세트에서 hit@1이 ~+20pp 개선되지만 검색당 ~1.8s가 걸립니다 — 자동 회상과 CLI가 즉시 조회 기반으로 설계되어 기본적으로 꺼져 있습니다.날짜 필터,
--from/--to로 검색을 기간으로 좁힙니다.메모 레이어, 모든 메모는
past(불변 기록),state(변경 가능한 계획), 또는rule(Claude 행동 가이드) 중 하나입니다.past메모는 업데이트를 거부하고,rule메모는 Claude의 시스템 프롬프트에 자동 주입됩니다.Flashback, 저장과 검색 시 다른 폴더에 있는 의미적으로 관련된 오래된 메모를 자동으로 표시합니다. "124일 전에 다른 맥락에서 이 주제에 대해 썼었죠"라는 식으로요.
추론 엔진, 결정론적 시그널이 아직 종합되지 않은 패턴(연도에 걸친 흐름, 오래된 state 메모, 태그 부활)을 표면화합니다. 좋은 시그널은 추론(출처가 있는 가설)으로 승격할 수 있으며, 원본 메모가 변경되면 자동으로 무효화됩니다. 코어에 LLM이 없습니다.
MCP 서버, Claude가 자동으로 검색하고 저장합니다. 별도의 CLAUDE.md 설정이 필요 없습니다.
자동 회상(Auto-recall), 모든 프롬프트에서 메모를 검색하고 Claude가 답변하기 전에 결과를 주입하는 옵트인 훅입니다. 회상이 결코 Claude가 찾아봐야 기억하는 일에 의존하지 않습니다.
중복 감지, 의미상 유사한 메모가 이미 있으면
save_note가 경고하여, 새로 만들기보다 업데이트하도록 Claude를 유도합니다.백링크,
[[Title]]구문으로 메모를 연결합니다.get_note는 해당 메모를 참조하는 메모를 보여줍니다.시리즈 접기, 날짜가 있는 작업 로그("… 2026-07-20", "… 2026-07-23")는 결과 페이지에서 최대 두 개의 자리만 차지하며, 검색은 얼마나 더 보류했는지 알려줍니다.
수정(Amendment), 정정은 무엇을 고치는지 기록하므로(
amends), 검색은 대체된 메모를 표시하고 이미 틀렸다고 아는 주장을 반환하는 대신 가장 최신 수정을 가리킵니다.다이제스트(Digest),
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 처리 |
| 종합된 가설 목록(먼저 오래된 항목인지 재확인) |
| 전체 출처 + 변경/삭제 마커가 포함된 추론 하나 |
| 승인된 가설 저장, 명시적 확인 필요 |
추론은 메모와 분리되어 유지되며(검색에서 제외), 가설로 인용될 뿐 결코 사실로 취급되지 않습니다. 탐지는 결정론적으로 유지됩니다. 유일한 LLM 단계는 추론 요약을 종합하는 것이며, 이는 memex가 아닌 Claude가 수행합니다.
메모 레이어
모든 메모는 변경 가능성(mutability)에 따라 다음 세 가지 레이어 중 하나로 분류됩니다:
레이어 | 의미 | 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 서버의 지침에도 자동 주입됩니다. 아래의 Rule 레이어 자동 주입을 참조하세요.
Flashback
메모를 저장하거나 검색하면 memex는 다른 폴더에 있는 의미적으로 유사한 오래된 메모를 자동으로 표시합니다. "124일 전에 다른 맥락에서 이 주제에 대해 썼었죠." 이는 시스템 생성 백링크(note_links.source = 'flashback')로 저장되며, 사용자의 [[wikilinks]](source = 'wiki')와 분리됩니다.
환경 변수로 조정할 수 있습니다:
환경 변수 | 기본값 | 동작 |
|
| 최소 연령 차이(일) |
|
| 최대 벡터 거리(낮을수록 더 엄격한 매칭) |
|
| 노출 1회당 최대 제안 수 |
Rule 레이어 자동 주입
layer = 'rule'인 메모는 시작 시 MCP 서버 지침의 ## House Rules 섹션 아래에 추가됩니다. Claude는 모든 대화 시작 시 이를 볼 수 있으며 search_notes 호출이 필요 없습니다. 코딩 스타일 가이드나 기타 행동 지침을 두기에 적합한 곳입니다.
환경 변수 | 기본값 | 동작 |
| enabled |
|
|
| 주입 섹션의 바이트 예산. 초과분은 |
rule 메모에 대한 업데이트는 다음 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)Package | 역할 |
| SQLite 스키마, drizzle 쿼리, sqlite-vec + FTS5 통합 |
| @huggingface/transformers를 통한 로컬 임베더 |
| 로컬 크로스-인코더 리랭커(선택) |
| CLI와 MCP가 공유하는 노트 서비스: 저장, 편집, 검색, 벡터 인덱싱 |
| 설정, 경로 헬퍼, 공용 유틸리티 |
| MCP 서버(CLI dist에 번들됨) |
생태계
memex는 하나의 원칙을 공유하는 세 가지 로컬 우선(local-first) 도구 중 하나입니다. 여러분의 데이터는 여러분의 기기에 머물며, AI가 그 기기로 직접 찾아옵니다. 이 세 도구는 어떤 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 <-.-> SClaude Desktop, Claude Code, Cursor 또는 음성 인터페이스인 Herald 를 통해 접근할 수 있습니다. 도구들은 서로를 직접 호출하지 않고 모델을 통해 조합됩니다.
llms.txt
llms.txt는 문서 링크가 포함된 간결한 설명으로, llms.txt 표준을 따르는 LLM 에이전트용 기계 판독 가능 프로젝트 요약입니다.
라이선스
MIT
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
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

Memsolus MCP Serverofficial
AlicenseAqualityDmaintenanceProvides persistent long-term memory for AI agents through semantic search and automated knowledge graph extraction. It enables agents to store, recall, and reason over facts, preferences, and relationships across multiple conversations and sessions.148MIT- AlicenseAqualityAmaintenanceA 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
- AlicenseAqualityAmaintenanceProvides persistent, searchable memory for AI agents, enabling them to retain, recall, and reflect on information across conversations.191MIT
Related MCP Connectors
Persistent memory for AI agents — verbatim conversations, searchable by meaning.
Universal memory for AI agents and tools. Save, organize and search context anywhere.
Persistent memory for AI agents. Search, store, and recall across sessions.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/evan-moon/memex'
If you have feedback or need assistance with the MCP directory API, please join our Discord server