AI 코딩 에이전트가 코드베이스의 관계, 히스토리 및 영향 분석을 로컬에서 쿼리할 수 있도록 지원하는 양방향 시간(bi-temporal) 구조 지식 그래프를 제공합니다.
다른 이름 syncable-dev/memtrace-public, memtrace
- 스타
- 516
- Tools
- 21
- 다운로드, 30일
- —
- 최신 버전
- —
- 마지막 커밋
- 2026년 11월 13일
- 라이선스
- —
Memtrace MCP란?
Memtrace은(는) MCP server입니다. AI 코딩 에이전트가 코드베이스의 관계, 히스토리 및 영향 분석을 로컬에서 쿼리할 수 있도록 지원하는 양방향 시간(bi-temporal) 구조 지식 그래프를 제공합니다. 21개 도구를 제공합니다. 예: find_code, find_symbol, analyze_relationships.
프로젝트 README에서 생성된 요약
Memtrace MCP server 정보
Memtrace는 AI 코딩 에이전트가 코드베이스의 관계와 히스토리를 깊이 있게 이해할 수 있도록 설계된 양방향 시간 구조 지식 그래프를 제공합니다. 관계 추론을 위해 비용이 많이 드는 LLM 호출에 의존하는 일반적인 메모리 시스템과 달리, 이 MCP server는 Rust와 Tree-sitter를 사용하여 코드를 로컬에서 파싱합니다. 이러한 접근 방식을 통해 50,000개의 파일이 있는 대규모 저장소도 API 비용 없이 90초 이내에 인덱싱할 수 있습니다. 시스템은 사용자의 머신에서 완전히 실행되므로 소스 코드와 심볼 이름이 로컬 환경을 벗어나지 않습니다.
개발자는 Model Context Protocol을 통해 이를 통합하거나 DeepSeek Harness 플러그인으로 사용할 수 있습니다. 영향 분석, 시간적 진화, API 토폴로지 매핑 등의 작업을 위한 25개 이상의 포괄적인 툴킷을 제공합니다. 에이전트는 get_impact, find_symbol, get_evolution과 같은 툴을 사용하여 전체 파일을 다시 읽을 필요 없이 영향 범위, 버전 히스토리, 아키텍처 모듈에 관한 복잡한 쿼리를 수행할 수 있습니다.
활용 사례
- 1영향 분석 수행에이전트가 영향 범위와 위험 등급을 계산하여 코드 변경 시 발생할 수 있는 잠재적 피해를 파악할 수 있습니다.
- 2코드 진화 추적개발자가 다양한 스코어링 모드를 사용하여 특정 코드 조각이 시간에 따라 어떻게 변했는지 AI에게 설명하도록 요청할 수 있습니다.
- 3서비스 의존성 매핑아키텍처 전반의 HTTP 호출 그래프를 통해 서로 다른 서비스가 어떻게 상호작용하는지 식별하는 데 사용할 수 있습니다.
- 4아키텍처 모듈 식별AI가 그래프 알고리즘을 사용하여 코드베이스 내의 조직적 모듈을 자동으로 감지할 수 있습니다.
프로젝트의 README를 바탕으로 작성되었습니다. 모든 활용 사례는 해당 내용의 인용문과 대조하여 확인합니다.
Memtrace MCP 설치 방법
형식 확인: 2026년 11월 10일Claude Code에 Memtrace MCP 설치
$ claude mcp add memtrace-public -- npx -y memtraceCursor에 Memtrace MCP 설치
~/.cursor/mcp.json
{
"mcpServers": {
"memtrace-public": {
"command": "npx",
"args": [
"-y",
"memtrace"
]
}
}
}VS Code에 Memtrace MCP 설치
.vscode/mcp.json
{
"servers": {
"memtrace-public": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"memtrace"
]
}
}
}Claude Desktop에 Memtrace MCP 설치
claude_desktop_config.json
{
"mcpServers": {
"memtrace-public": {
"command": "npx",
"args": [
"-y",
"memtrace"
]
}
}
}Codex에 Memtrace MCP 설치
~/.codex/config.toml
[mcp_servers.memtrace-public] command = "npx" args = ["-y", "memtrace"]
Gemini CLI에 Memtrace MCP 설치
~/.gemini/settings.json
{
"mcpServers": {
"memtrace-public": {
"command": "npx",
"args": [
"-y",
"memtrace"
]
}
}
}Memtrace MCP 도구 21
README에서 감지됨find_codefind_symbolanalyze_relationshipsget_symbol_contextget_impactdetect_changesfind_dead_codefind_most_complex_functionscalculate_cyclomatic_complexityget_repository_statsget_evolutionget_timeline
| find_code | — | |
| find_symbol | — | |
| analyze_relationships | — | |
| get_symbol_context | — | |
| get_impact | — | |
| detect_changes | — | |
| find_dead_code | — | |
| find_most_complex_functions | — | |
| calculate_cyclomatic_complexity | — | |
| get_repository_stats | — | |
| get_evolution | — | |
| get_timeline | — |
도구 21개 모두 보기도구 수 줄이기
find_bridge_symbolsfind_central_symbolslist_communitiesget_api_topologyfind_api_endpointsfind_api_callsindex_directorywatch_directoryexecute_cypher
| find_bridge_symbols | — | |
| find_central_symbols | — | |
| list_communities | — | |
| get_api_topology | — | |
| find_api_endpoints | — | |
| find_api_calls | — | |
| index_directory | — | |
| watch_directory | — | |
| execute_cypher | — |
구성
MEMTRACE_TELEMETRY
| 이름 | 설명 | 유형 |
|---|---|---|
| MEMTRACE_TELEMETRY | — |
자동 검사
2026년 11월 12일에 실행됨전체 보고서 →자동 검사를 통과했습니다. 이는 보안 감사가 아닙니다. 코드를 직접 읽고 서버에 필요한 최소한의 권한만 부여하십시오. 검사 방식
- 소스 저장소 연결 및 접근 가능통과
- 오픈 소스 라이선스 (OSI)No license결함 발견
- 최근 1년 내 커밋 또는 릴리스통과
- 패키지 이름이 인기 패키지와 유사하지 않음통과
- 원격 엔드포인트가 HTTPS 사용검사되지 않음
- 파괴적인 도구에 라벨 표시됨검사되지 않음
- 모델에 대한 숨겨진 지침 없음통과
- 패키지와 의존성에 심각한 보안 권고 없음검사되지 않음
README
GitHub에서 보기Official Memtrace by Syncable. Start at memtrace.io/docs. The official package is memtrace on npm, and the public repository is syncable-dev/memtrace-public. Other projects with the same name are unrelated. Compare memtrace --version with the Stable and Nightly release history.
For installation support, open an issue in the official public repository with your operating system, Memtrace version and exact error. Remove credentials and private source from shared logs. The Syncable team maintains this package and its support channels.
DeepSeek Harness
Memtrace runs as a DeepSeek Harness plugin. Install Harness first (npm install -g @deepseek-ai/dsh — that is the dsh command), then add Memtrace:
npx -y @deepseek-ai/dsh plugin --profile web add github:syncable-dev/dsh-plugin-memtrace
Then ask the agent to index the workspace and pull blast radius, evolution, or an architecture briefing. Details: syncable-dev/dsh-plugin-memtrace.
What it does
Three things, every release.
🧭 Run a fleet of coding agents on the same repo without merge hell. Each agent reads the same call graph, sees the same blast radius, inherits the same temporal history. No collisions. No stale context.
🔁 Replay any refactor with full causal awareness. Agents see exactly what depends on what, and what changed when. No more "I refactored a function and 14 tests broke that nobody saw."
⚡ Index a 50k-file repo in under 90 seconds. Rust + Tree-sitter, $0 in API costs, 20+ languages plus framework-aware scanners (Vapor, Lapis, Kong, GitHub Actions, Terraform, RLS policies, …), fully local. Your code never leaves your machine.
🆕 LeanCTX Native — compressed reads, smart trees, and a value ledger.
Four new compression modes on get_source_window, single-call directory maps, real-time token-savings dashboard, and an opt-in adaptive learner that beats the static table by ~14%. Full breakdown: docs/leanctx-native.md. Available in v0.3.57+.
https://github.com/user-attachments/assets/e7d6a1e9-c912-4e65-a421-bd0256dffa5a
Numbers
| Operation | Memtrace | Best alternative | Δ |
|---|---|---|---|
| Index 1,500 files | 1.5s · $0 | Mem0: 31 min · $10–50 | ~1,200× faster |
| Exact symbol query (acc@1, lat) | 96.6% · 0.07 ms | GitNexus: 97.0% · 8.95 ms | 128× lower latency |
| Graph callers recall (Django) | 81.6% | GitNexus: 5.3% | 15.4× |
| Incremental re-index p95 | 42.5 ms | CodeGrapher: 613.7 ms | 14.4× |
| Hybrid acc@1 (Django, 3K cases) | 73.9% | GitNexus: 38.6% | 1.91× |
| PR code-review F1 (50 PRs) | 0.7268 | Cubic v2: 0.6077 | +19.60% |
| RSS / process | 26 MB | ChromaDB: 1,060 MB | 41× tighter |
| Languages | 16+ (Tree-sitter) | varies | — |
Reproducible benchmark suite: benchmarks/. Same machine, same corpora, same adapter contract. Ground truth from Python's ast and pyright LSP — never from any tool's own index. No system gets a home-field advantage in the dataset.
Detailed breakdowns: BENCHMARKS-v0.3.22.md · BENCHMARKS-v0.3.29.md · Code reviewer benchmark
GitHub Star Growth
Get access
Memtrace is in private beta. We're rolling out access in batches to keep the feedback loop tight — every cohort lands in a Discord channel where we ship fixes from real bug reports inside a week.
→ Join the waitlist at memtrace.io.
Already have access? npm install -g memtrace and you're indexing in 90 seconds. Full setup below.
🔒 Privacy. Memtrace runs entirely on your machine. Source code never leaves it. The only network traffic is license validation, aggregate node/edge counts, and opt-out crash telemetry — no source, no file paths, no symbol names. Full breakdown: PRIVACY.md, TELEMETRY.md. Disable telemetry with
MEMTRACE_TELEMETRY=off.
Why Memtrace exists
Good code-intelligence tools already exist. GitNexus and CodeGrapherContext build AST-based graphs that work for "what's in my repo right now."
Memtrace is a bi-temporal episodic structural knowledge graph. It builds on the same AST foundation and adds two dimensions:
- Temporal memory — every symbol carries its full version history. Six scoring algorithms (impact, novelty, recency, directional, compound, overview) let agents ask different temporal questions: "what changed?", "what's unexpected?", "what'll break?".
- Cross-service API topology — Memtrace maps HTTP call graphs between repositories, detecting which services call which endpoints across your architecture.
On top of that, the structural layer is comprehensive:
| Symbols are nodes | functions, classes, interfaces, types, endpoints |
| Relationships are edges | CALLS, IMPLEMENTS, IMPORTS, EXPORTS, CONTAINS |
| Community detection | Louvain algorithm identifies architectural modules automatically |
| Hybrid retrieval | Tantivy BM25 + vector embeddings + Reciprocal Rank Fusion + cross-encoder rerank |
| Rust-native | compiled binary, no Python/JS runtime overhead, sub-8 ms p95 query latency |
The agent doesn't just search your code. It remembers it.
Memtrace vs. general memory systems (Mem0, Graphiti)
Mem0 and Graphiti are strong conversational memory engines designed for tracking entity knowledge (e.g. User -> Likes -> Apples). They excel at that. For code intelligence specifically, the tradeoff is that they rely on LLM inference to build their graphs — which adds cost and time when processing thousands of source files.
Graphiti processes data through add_episode(), which triggers multiple LLM calls per episode — entity extraction, relationship resolution, deduplication. At ~50 episodes/minute (source), ingesting 1,500 code files takes 1–2 hours.
Mem0 processes data through client.add(), which queues async LLM extraction and conflict resolution per memory item (source). Bulk ingestion with infer=True (default) means every file passes through an LLM pipeline. Throughput is bounded by your LLM provider's rate limits.
Both accumulate $10–50+ in API costs for large codebases because every relationship is inferred rather than parsed.
Memtrace takes a different approach: it indexes 1,500 files in 1.2–1.8 seconds for $0.00 — no LLM calls, no API costs, no rate limits. Native Tree-sitter AST parsers resolve deterministic symbol references (CALLS, IMPLEMENTS, IMPORTS) locally. The tradeoff is that Memtrace is purpose-built for code — it doesn't handle conversational entity memory the way Mem0 and Graphiti do.
25+ MCP tools
Memtrace exposes a full structural toolkit via the Model Context Protocol.
Search & Discovery
find_code— hybrid BM25 + semantic + RRFfind_symbol— exact / fuzzy with Levenshtein
Relationships
analyze_relationships— callers, callees, hierarchy, importsget_symbol_context— 360° view in one call
Impact Analysis
get_impact— blast radius with risk ratingdetect_changes— diff-to-symbols scope mapping
Code Quality
find_dead_code— zero-caller detectionfind_most_complex_functions— complexity hotspotscalculate_cyclomatic_complexityget_repository_stats
Temporal Analysis
get_evolution— 6 scoring modesget_timeline— full version historydetect_changes— diff-based scope
Graph Algorithms
find_bridge_symbols— betweenness centralityfind_central_symbols— PageRank / degreelist_communities— Louvain moduleslist_processes/get_process_flow
API Topology
get_api_topology— cross-repo HTTP graphfind_api_endpointsfind_api_calls
Indexing & Watch
index_directory— parse, resolve, embedwatch_directory— live incrementalexecute_cypher— direct graph queries
17 agent skills
Memtrace ships skills/guidance that teach agents how to use the graph. They fire automatically based on what you ask — no prompt engineering required.
| Skill | You say… |
|---|---|
memtrace-search |
"find this function", "where is X defined" |
memtrace-relationships |
"who calls this", "show class hierarchy" |
memtrace-evolution |
"what changed this week", "how did this evolve" |
memtrace-impact |
"what breaks if I change this", "blast radius" |
memtrace-quality |
"find dead code", "complexity hotspots" |
memtrace-graph |
"show me the architecture", "find bottlenecks" |
memtrace-api-topology |
"list API endpoints", "service dependencies" |
memtrace-index |
"index this project", "parse this codebase" |
memtrace-cochange |
"what else changes with this", "hidden coupling" |
Plus 8 workflow skills that chain multiple tools with decision logic: memtrace-first, codebase-exploration, change-impact-analysis, incident-investigation, refactoring-guide, continuous-memory, episode-replay, and session-continuity.
Temporal Engine
Six scoring algorithms for different temporal questions:
| Mode | Best for |
|---|---|
compound |
General-purpose "what changed?" — weighted blend of impact, novelty, recency |
impact |
"What broke?" — ranks by blast radius (in_degree^0.7 × (1 + out_degree)^0.3) |
novel |
"What's unexpected?" — anomaly detection via surprise scoring |
recent |
"What changed near the incident?" — exponential time decay |
directional |
"What was added vs removed?" — asymmetric scoring |
overview |
Quick module-level summary |
Uses Structural Significance Budgeting to surface the minimum set of changes covering ≥80% of total significance.
Compatibility
| Editor / Agent | MCP Tools (25+) | Skills / Guidance | Install |
|---|---|---|---|
| Claude Code | ✅ | ✅ | npm install -g memtrace — fully automatic |
| Claude Desktop | ✅ | ✅ | Automatic — shared with Claude Code |
| DeepSeek Harness | ✅ | ✅ | npx -y @deepseek-ai/dsh plugin --profile web add github:syncable-dev/dsh-plugin-memtrace |
| Cursor (v2.4+) | ✅ | ✅ | npm install -g memtrace — fully automatic |
| Codex CLI | ✅ | ✅ | npm install -g memtrace — fully automatic |
| Windsurf | ✅ | ✅ | npm install -g memtrace — fully automatic |
| VS Code (Copilot) | ✅ | ✅ | npm install -g memtrace — fully automatic |
| Hermes | ✅ | ✅ | npm install -g memtrace — fully automatic |
| OpenCode | ✅ | ✅ | npm install -g memtrace — fully automatic |
| Kiro | ✅ | Steering | npm install -g memtrace — fully automatic |
| Cline / Roo Code | ✅ | — | Add MCP server manually |
| Any MCP client | ✅ | — | Add MCP server manually |
Skills are workflow prompts that teach the agent how to chain tools. Kiro does not use SKILL.md, so Memtrace writes equivalent auto steering files instead.
Setup
DeepSeek Harness
dsh comes from @deepseek-ai/dsh, not from Memtrace.
npm install -g @deepseek-ai/dsh
dsh plugin --profile web add github:syncable-dev/dsh-plugin-memtrace
Or without a global CLI:
npx -y @deepseek-ai/dsh plugin --profile web add github:syncable-dev/dsh-plugin-memtrace
That bundle registers Memtrace's skills and starts memtrace mcp inside the Harness profile. First launch may fetch the Memtrace binary via npx; pin a local install with npm install -g memtrace and MEMTRACE_BIN=memtrace.
Claude Code + Claude Desktop
npm install -g memtrace
Handles everything — binary, 17 skills, MCP server, plugin, marketplace. One command, both editors.
For manual setup:
claude plugin marketplace add https://github.com/syncable-dev/memtrace-public.git
claude plugin install memtrace-skills@memtrace --scope user
claude mcp add memtrace -- memtrace mcp
Cursor
npm install -g memtrace handles everything automatically. Cursor v2.4+ reads the same SKILL.md format as Claude.
For project-local install (skills travel with your repo):
npx memtrace-skills install --only cursor --local
Codex, Windsurf, VS Code, Hermes, OpenCode, and Kiro
The installer also writes skills/guidance and MCP configuration for the newer agent surfaces:
| Agent | Global skills / guidance | Global MCP config | Project-local support |
|---|---|---|---|
| Codex | ~/.agents/skills/ |
~/.codex/config.toml |
.agents/skills/, .codex/config.toml |
| Windsurf | ~/.codeium/windsurf/skills/ |
~/.codeium/windsurf/mcp_config.json |
.windsurf/skills/; MCP remains user-level |
| VS Code / Copilot | ~/.copilot/skills/ |
VS Code user mcp.json |
.github/skills/, .vscode/mcp.json |
| Hermes | ~/.hermes/skills/ |
~/.hermes/config.yaml |
user-level only |
| OpenCode | ~/.config/opencode/skills/ |
~/.config/opencode/opencode.json |
.opencode/skills/, opencode.json |
| Kiro | ~/.kiro/steering/ |
~/.kiro/settings/mcp.json |
.kiro/steering/, .kiro/settings/mcp.json |
Install only selected integrations:
npx memtrace-skills install --only codex,windsurf,vscode,hermes,opencode,kiro
Install project-local config where supported:
npx memtrace-skills install --only codex,vscode,opencode,kiro --local
Other MCP clients
For Cline, Roo Code, or any client that only needs MCP tools, add this server manually:
{
"mcpServers": {
"memtrace": {
"command": "memtrace",
"args": ["mcp"],
"env": {}
}
}
}
| Editor | Config file |
|---|---|
| Windsurf | ~/.codeium/windsurf/mcp_config.json |
| VS Code (Copilot) | .vscode/mcp.json in your project root |
| Codex | ~/.codex/config.toml or .codex/config.toml |
| Hermes | ~/.hermes/config.yaml |
| OpenCode | ~/.config/opencode/opencode.json or project opencode.json |
| Kiro | ~/.kiro/settings/mcp.json or .kiro/settings/mcp.json |
| Cline | Cline MCP settings in the extension panel |
Uninstall
memtrace uninstall # removes skills, MCP server, plugin, settings
npm uninstall -g memtrace
Already ran npm uninstall first? The cleanup script is at ~/.memtrace/uninstall.js:
node ~/.memtrace/uninstall.js
Install troubleshooting
npm install -g memtrace ships a small main package + a platform-specific binary (one of @memtrace/darwin-arm64, @memtrace/linux-x64, @memtrace/win32-x64). If memtrace start ever says "Could not find binary for your platform":
# Re-run install, asking npm to keep optional deps
npm install -g memtrace --include=optional
# Or refresh from latest
memtrace install # built-in self-update
npm install -g memtrace@latest --force
# Or install the platform binary directly (Apple Silicon shown — swap for your platform)
npm install -g @memtrace/darwin-arm64
This typically only happens on machines where npm is configured to skip optional dependencies (corporate npmrc, certain CI caches).
Languages
Programming: Rust · Go · TypeScript · JavaScript · Python · Java · C · C++ · C# · Swift · Kotlin · Ruby · PHP · Dart · Scala · Perl · Lua — full AST: functions, classes, types, calls, complexity.
Infrastructure & config: YAML · HCL / Terraform · JSON · TOML · SQL (including PostgreSQL CREATE POLICY for RLS, with cross-language edges from policies to Drizzle / Prisma / TS schema symbols).
Framework-aware scanners on top of the AST layer:
- Backend HTTP: Express · NestJS · Encore · Fastify · Vapor · Hummingbird · FastAPI · Flask · Django · Gin · Chi · Echo · Actix · Lapis · Kong · OpenResty · Rails routes
- Frontend / client: RTK Query · TanStack Query · SWR · URLSession · AsyncHTTPClient · axios · fetch · SwiftUI views
- CI / infra: GitHub Actions workflows (jobs, steps,
needs:edges) · Terraform variables / modules / data sources · Helm charts · K8s manifests - Package & dependency graphs:
package.jsonscripts + deps ·Cargo.tomldeps ·pyproject.toml(best-effort) - Database: PostgreSQL RLS policies + triggers + functions, with heuristic edges to ORM schema
Requirements
Memtrace runs locally — first index is CPU/RAM intensive, subsequent queries and incremental indexing are much lighter.
| Minimum | Recommended | |
|---|---|---|
| CPU | 4 cores | 8+ cores for large monorepos |
| Memory | 8 GB RAM | 16–32 GB RAM |
| Disk | 5 GB free | 10–20 GB free |
| GPU | Not required | Not required |
| Node.js | ≥ 18 | Current LTS |
| Git | Required for temporal analysis | Full repo history for best results |
Telemetry
Since v0.3.17 Memtrace ships with opt-out telemetry that helps us catch crashes, regressions, and performance issues before someone files an issue.
- Collected: app-start events, indexing/embedding durations, panic reports, WARN/ERROR log lines from Memtrace's own crates.
- NOT collected: source code, file contents, symbol names, embeddings, repository names or paths, branch names, commit data.
- Sanitisation: every payload is run through a sanitiser that strips home-dir paths, token-shaped strings, and email addresses before it touches disk.
Disable with one env var:
MEMTRACE_TELEMETRY=off memtrace start # per-run
export MEMTRACE_TELEMETRY=off # permanent (~/.zshrc, ~/.bashrc)
Or in your editor's MCP config: "env": { "MEMTRACE_TELEMETRY": "off" }.
Full breakdown — including the on-disk queue layout, where data is stored on the receiving end, and how to inspect what would have shipped — is in TELEMETRY.md.
License & ownership
Proprietary EULA. Free to use during private beta and after general availability for individual developers. Indexer + database (MemDB) are closed-source.
Benchmark suite under MIT in benchmarks/ — fully reproducible, no proprietary code required to run them.
Memtrace MCP 질문
Memtrace MCP를 Claude Code에 추가하려면 어떻게 하나요?
터미널에서 claude mcp add memtrace-public -- npx -y memtrace를 실행합니다. 모든 프로젝트에서 사용할 수 있게 하려면 --scope user를 추가합니다.
Memtrace MCP를 Cursor에 추가하려면 어떻게 하나요?
~/.cursor/mcp.json를 열고 mcpServers 아래에 서버를 추가합니다. 위 설치 섹션에 표시된 Cursor 구성을 사용합니다.
Memtrace MCP는 어떤 도구를 제공하나요?
21개 도구를 제공합니다. 예: find_code, find_symbol, analyze_relationships, get_symbol_context, get_impact.
Memtrace가 코드를 인덱싱할 때 LLM 호출이 필요한가요?
아니요, Memtrace는 로컬 Tree-sitter AST 파서를 사용하여 심볼 참조를 해결하므로 인덱싱 과정에서 LLM 호출이나 API 비용이 전혀 발생하지 않습니다.
소스 코드가 클라우드 서버로 전송되나요?
아니요, Memtrace는 사용자의 로컬 머신에서 완전히 실행되며 소스 코드는 절대 외부로 유출되지 않습니다.
Memtrace는 대규모 저장소를 얼마나 빠르게 인덱싱할 수 있나요?
50,000개의 파일이 포함된 저장소도 90초 이내에 인덱싱할 수 있습니다.
