repo-memory-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| REPO_MEMORY_ALLOWED_ROOT | No | Restricts memory operations to files within the specified absolute root path for safety during early use. |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| repo_identityB | Detect current repo/project identity from cwd. |
| init_repo_memoryC | Initialize repo-memory-mcp in this repo: create config, agent instructions, and optional bootstrap memory/hooks. |
| store_memoryB | Store a repo-scoped source-backed memory. Use for durable decisions, gotchas, commands, failures, or facts. Defaults to active unless status=proposed is supplied. |
| propose_memoryA | Propose a repo memory for later human review. Use this at the end of non-trivial tasks when durable lessons emerged: decisions made, root causes found, gotchas, reusable commands, architecture/config constraints, failed approaches, or important evidence-backed facts. Prefer 1-3 high-signal proposals; do not store secrets, credentials, personal data, or trivial churn. |
| remember_project_noteA | [compatibility] Prefer store_memory. Store a repo-scoped source-backed memory note. |
| store_decisionC | [compatibility] Prefer store_memory with type=decision. Store a repo-scoped engineering decision. |
| search_project_memoryC | Search current repo memory. Exact/BM25 first. Re-check code memories if status is not active. |
| get_memoryC | Get one memory by id with provenance metadata and linked evidence. |
| get_memory_with_evidenceA | Get one memory by id with linked source artifacts, quotes, and provenance. |
| list_memoriesC | List project memories with optional filters. |
| checkpoint_taskB | Store lightweight crash/context recovery state for a multi-step coding task. Call after meaningful steps or before risky/long operations. |
| active_checkpointsB | List active checkpoint memories for this repo so agents can resume interrupted multi-step tasks. |
| delete_memoryA | [compatibility] Prefer manage_memory action=delete. Delete one memory with audit trail. |
| memory_statusB | Show memory counts and stale/needs-revalidation memories for current repo. |
| revalidate_memoriesC | Scan git diff staleness between two refs and flag affected memories for human review; this does not prove truth. |
| review_memoriesB | List stale and needs-revalidation memories with suggested review commands. |
| store_artifactB | Store a large artifact such as logs, command output, diffs, or transcripts. Returns preview and stable ID. |
| get_artifactC | Retrieve an artifact by ID with offset/limit paging. |
| search_evidenceB | Search raw source artifacts/evidence. Use before trusting or creating claims. |
| link_memory_evidenceB | Attach a source artifact and optional quote to an existing memory claim. |
| install_git_hooksC | Install best-effort git hooks to revalidate memory after checkout/merge/rewrite. |
| load_project_contextC | Start here for non-trivial tasks. Returns a task-specific readable repo context briefing with relevant memories, decisions, commands, and stale warnings. |
| recent_activityB | Show compact recent repo-memory events, artifacts, and memories. Use near task end to decide whether any durable proposed memories are worth creating. |
| finish_taskA | Call before the final response on non-trivial tasks. Summarize work and propose 0-3 durable memories only: decisions, root causes, gotchas, reusable commands, architecture/config constraints, failed approaches. Do not propose secrets, personal data, temporary edits, or trivial churn. |
| run_command_captureB | Run a command, store stdout/stderr as an artifact, and create a searchable source-backed memory of the result. |
| manage_memoryB | Manage memory lifecycle: verify, mark, delete, link, or supersede. Prefer this over individual lifecycle tools. |
| verify_memoryB | [compatibility] Prefer manage_memory action=verify. Mark a memory active and verified against current HEAD. |
| update_memory_statusC | Update memory lifecycle status. |
| link_memoriesC | Create a typed relationship between two memories. |
| supersede_memoryC | Mark an old memory superseded by a newer memory and link them. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 30 tools
Multiple tools for storing memories (store_memory, propose_memory, remember_project_note, store_decision) and retrieving memories (get_memory, get_memory_with_evidence, search_project_memory, list_memories) have overlapping purposes. Compatibility tools like 'prefer store_memory' add confusion.
Naming is mostly snake_case with verb_noun pattern, but there are inconsistencies: 'remember_project_note' vs 'store_memory', 'checkpoint_task' vs 'active_checkpoints', and generic 'manage_memory'. The pattern is not fully uniform.
30 tools is quite high for a repo memory system. Many are compatibility wrappers or redundant (e.g., delete_memory vs manage_memory). The core functionality could be covered with fewer tools, making the count feel bloated.
Covers CRUD for memories, search, evidence linking, and checkpoints, but lacks an artifact listing tool. Some lifecycle operations are duplicated. There are notable gaps, but core workflows are supported.