Provides a bitemporal knowledge graph of git repo modules, symbols, decisions, and problems for AI coding agents via MCP.
Copy the AI prompt to install this server into Claude Code, Cursor, or another agent ā or use 1-click editor setup below.
We haven't yet run this listing's install command through our automated sandbox check. This isn't a red flag ā we're steadily working through the catalog.
š” Paste the JSON block into your client's configuration file under mcpServers, then restart the application.
Inspect callable tools, capabilities, and parameters exposed to AI agents by Memex.
get_project_contextSession start. Returns a cluster-level briefing under 1500 tokens regardless of repo size
get_symbol_contextBefore editing a function or class. Returns callers, callees, linked decisions
get_recent_decisionsLast N days of architectural decisions, optionally module-scoped
get_open_problemsActive bugs and tech debt, sorted by severity
search_contextHybrid search: semantic Ć keyword Ć graph traversal Ć RRF merge
get_stale_contextEdges whose composite confidence dropped below threshold
A protocol-neutral engineering-context layer for AI coding agents. memex builds a bitemporal knowledge graph of your repository ā modules, symbols, decisions, problems, evidence, and code evolution ā and exposes bounded, provenance-aware context through Hermes MemoryProvider or MCP.
A daemon and MCP server that turns commits and file changes into structured engineering knowledge. Agents can receive relevant repository context before a task, with freshness and provenance preserved, without making memex a source of personal memory or raw session state.

Restart your Claude Code session.
The v0.9 Hermes integration is read-only. Hermes retains personal memory, raw
session state, and execution state. memex supplies repository engineering
context through a bounded ContextPacket; it does not ingest Hermes
state.db, transcripts, prompts, or tool results.
Add the memex provider to Hermes' profile configuration:
If Hermes is not installed, use the same context selector through the MCP
get_engineering_context tool. Both paths share the protocol-neutral memex
core and fail open when retrieval is unavailable.
| Channel | Command |
|---|---|
| Claude Code marketplace | /plugin install memex-mcp@stifler-marketplace |
| npx (no install) | npx stifler-memex-mcp <cmd> |
| uv | uv add memex-mcp |
| pip | pip install memex-mcp |
| source | git clone github.com/STiFLeR7/memex && uv sync |
For a shared team setup (one Neo4j + one memex-server, auth on by default, Neo4j's ports never exposed to the host):
See docker/TEAM-DEPLOY.md for the full flow, capturing the
initial admin key, and the down -v footgun to avoid.
| Property | Value |
|---|---|
| Output | A Neo4j graph populated continuously from your repo |
| Storage | Neo4j via Graphiti. Bitemporal ā every edge has created_at and optional expired_at |
| Context | Bounded, ranked, provenance-aware ContextPacket |
| Integrations | Hermes MemoryProvider, MCP resources/tools, Claude Code, Cursor, Codex, Gemini CLI |
| Failure mode | Fail-open; agent execution continues without memex |
| Granularity | Scales from 50 to 5000+ modules via hierarchical Leiden clusters |
| Synthesis | Gemini Flash distills commits into Decision nodes; Pro for grounded synthesis |
| Confidence | Computed at query time. Two-regime decay (validated half-life ~139d, unvalidated stale at 30d) |
| Write governance | Per-node-type ACL, intent-confirmation on agent writes, explicit corroborates / supersedes semantics |
| Goal 10 evidence | 8/8 valid paired runs, 0 treatment failures, 0 treatment regressions |
14 tools ā eight read, four write, two analytic.
| Tool | When |
|---|---|
get_project_context | Session start. Returns a cluster-level briefing under 1500 tokens regardless of repo size |
get_symbol_context | Before editing a function or class. Returns callers, callees, linked decisions |
get_recent_decisions | Last N days of architectural decisions, optionally module-scoped |
get_open_problems | Active bugs and tech debt, sorted by severity |
search_context | Hybrid search: semantic Ć keyword Ć graph traversal Ć RRF merge |
get_stale_context | Edges whose composite confidence dropped below threshold |
explain_change | Given a commit SHA, cross-references the diff with linked Decision/Problem nodes and asks Gemini Pro for a grounded explanation |
predict_impact | Given a file path, returns a ranked list of modules likely affected based on graph coupling (no LLM call) |
| Tool | When |
|---|---|
record_decision | After making a technical choice. Supports corroborates (reinforce) and supersedes (replace) |
record_problem | When discovering a bug or piece of tech debt |
resolve_problem | When a tracked problem is fixed |
invalidate_edge | When a stored fact is no longer true |
Confidence is not a stored number that mutates. It is computed at query time from base_confidence, validation status, time since last reinforcement, and access count.
| Property | Value |
|---|---|
| Validated half-life | ~139 days |
| Unvalidated stale threshold | 30 days (composite < 0.3) |
| Recency Ļ | 90 days (exponential decay) |
| Composite formula | conf Ć recency Ć (1 + rehearsal_w Ć log(1 + access_count)) |
| Conflict similarity threshold | 0.4 (below this + overlapping validity = conflict) |
| Intent-confirmation threshold | 0.85 (MCP write similarity check) |
memex cluster runs hierarchical Leiden over a hybrid edge graph:
| Edge type | Weight |
|---|---|
| Directory co-location | 1.0 |
| Module imports | 2.0 |
| Symbol calls | log(1 + calls) |
| Property | Value |
|---|---|
| Algorithm | graspologic.partition.hierarchical_leiden with fixed seed |
| Naming | TF-IDF top-3 over module docstrings + symbol names, parent-dir fallback |
| ID pinning | Jaccard ā„ 0.5 across reruns (cluster names stay stable through renames) |
| User overrides | .memex/clusters.yaml ā any assignment can be locked |
| Context budget | get_project_context stays under 1500 tokens whether your repo has 50 or 5000 modules |
memex tracks token reduction metrics and human review actions locally in a SQLite database (~/.config/memex/telemetry.db).
You can query your savings at any time using the CLI:
Or view the raw JSON payload:
Factual signals from GitHub, npm, and our automated checks ā not a rating.
No reviews yet ā be the first to share how this listing worked for you.
Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.
[](https://allmcps.com/mcp/stifler7-memex)<a href="https://allmcps.com/mcp/stifler7-memex"><img src="https://allmcps.com/api/badge/stifler7-memex?style=directory" alt="Memex on AllMCPs" /></a>