repo-memory-mcp
mcp-name: io.github.Umarjaum/repo-memory-mcp
Persistent memory for AI coding agents
AI coding agents are powerful, but they forget repository-specific corrections, conventions, and architectural decisions. repo-memory-mcp gives an MCP-compatible coding agent a persistent, local, repository-aware memory layer.
Teach your coding agent once. Let your repository remember.
Why it exists
MCP hosts decide when tools are called; MCP does not automatically intercept every conversation. This project therefore exposes explicit tools for startup context, searching, storing corrections and decisions, updating stale guidance, and archiving obsolete memories.
Features
- Repository-scoped SQLite storage in
.repo-memory/ - FastMCP tools for corrections, rules, decisions, search, and startup context
- Deterministic local relevance scoring; no pretend semantic search
- Local-first, API-key-free, cloud-free, telemetry-free operation
- Conservative secret detection for explicitly submitted content
- Import/export and audit-friendly archiving
- Python 3.10+, Pydantic v2, pytest, standard-library-first design
Install
For local development:
pip install -e .[dev]
repo-memory doctor
After publishing the package to PyPI:
pip install repo-memory-mcp-ai
uvx repo-memory-mcp-ai
The published-package commands should only be used once the package is publicly available.
Configure an MCP client
The examples in examples/ use the common stdio configuration shape. Clients can differ; follow the client’s documented MCP configuration format.
Tool workflow
- New session: call
get_startup_context(). - Developer correction: call
remember_correction(topic, lesson). - Relevant work: call
recall_memory(query). - Obsolete guidance: call
forget_memory(memory_id).
Your memories stay on your machine. The implementation does not require API keys, cloud accounts, remote databases, external embeddings, or telemetry. The claims apply to this codebase as shipped; your operating system, package manager, backups, or MCP host may have separate behavior.
Development
pytest
repo-memory init
repo-memory list
repo-memory search "pydantic models"
Roadmap
Future work may improve ranking, add confidence feedback, provide optional local embeddings, generate project context, and add a memory inspection UI. Team/shared memory remains explicitly opt-in.
License
MIT. See LICENSE.
Release files for repo-memory-mcp-ai 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| repo_memory_mcp_ai-0.1.0.tar.gz | 12.8 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| repo_memory_mcp_ai-0.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 24.4 kB
Release files / repo_memory_mcp_ai-0.1.0.tar.gz
| Download URL | repo_memory_mcp_ai-0.1.0.tar.gz |
|---|---|
| Size | 12.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
55994a7b81da3e3cf9b7ad6a212e8087fb2edba0df6971fed791b1043ae4dd98
|
|
BLAKE2b-256 checksum How to use checksums |
ed951ed577496ece7d6706aa1e57881ba21111598b1cd989ab1a89562e395329
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.12.1 {"installer":{"name":"uv","version":"0.12.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
|
Release files / repo_memory_mcp_ai-0.1.0-py3-none-any.whl
| Download URL | repo_memory_mcp_ai-0.1.0-py3-none-any.whl |
|---|---|
| Size | 11.6 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
ff451eae51e909f692c938ff26ecdab935e4d7d0e85d5d32b81353302242cd49
|
|
BLAKE2b-256 checksum How to use checksums |
19d39a4daf071a715c9d7e83f6fc37e042b9a13d552b4a852d71969102472c29
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.12.1 {"installer":{"name":"uv","version":"0.12.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
|