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.2.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.2.0.tar.gz | 16.0 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| repo_memory_mcp_ai-0.2.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 29.3 kB
Release files / repo_memory_mcp_ai-0.2.0.tar.gz
| Download URL | repo_memory_mcp_ai-0.2.0.tar.gz |
|---|---|
| Size | 16.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
b40af28d46b89f9c0ed2226d7ca1056c9ceb8c9f07d18d6e03b2038c921f5387
|
|
BLAKE2b-256 checksum How to use checksums |
55981906d433eef4164185ba9d953cdeb83770dca83030833b4285c9102a4708
|
| 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.2.0-py3-none-any.whl
| Download URL | repo_memory_mcp_ai-0.2.0-py3-none-any.whl |
|---|---|
| Size | 13.3 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
db49aced7591e8932787e21d581fb31d2f2034e053290321b9cfe25e88e4d7ab
|
|
BLAKE2b-256 checksum How to use checksums |
26490aec157bf707253028fe48b74cb04ff930aad61c04346d922132628e04a3
|
| 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}
|