acm-memory
Consented, local, auditable autobiographical memory for your AI assistant.
acm-memory is an MCP (Model Context Protocol) server that gives any MCP-capable assistant — Claude Desktop is the primary target — durable memory of the facts you choose to store. Tell your assistant where you keep the spare key today, and it still knows next month, in a new conversation, after a restart.
What makes it different
- Nothing is stored without your explicit confirmation. Every proposed memory is shown to you verbatim first — in Claude Desktop, as an interactive consent card. A statement that smells like an instruction rather than a fact is refused at commit time even after you say yes.
- Remembers how you like to be answered. Tell it your preferred tone, wording, or format, and it keeps each as an auditable, consented preference: shown verbatim, then stored as a normalized "prefers ..." line rather than a standing instruction planted in memory. Preferences on different style axes (tone, format, verbosity, vocabulary, language, examples) coexist; a newer preference on the same axis replaces the earlier one on that axis.
- Corrections supersede; history stays visible. When a fact changes, the old value is marked superseded, never silently overwritten — and you can ask to see the full history, or exactly what the model was shown, at any time.
- Forget means forget. Forgetting a fact tombstones its entire history through every rebuild, with a receipt. It cannot come back.
- Local by construction. Facts live on your machine. The only model acm-memory itself ever calls is a local judge (gemma4:12b via Ollama on loopback). No telemetry, no cloud calls of its own, no background capture — an MCP server only ever sees explicit tool calls.
- Auditable. A consent journal records every confirmation, denial, and forget — including how consent arrived (card click vs. model-relayed). Every read is access-logged per client.
Requirements
- Windows 10/11 (first tester round), 16 GB RAM minimum; a GPU with 8 GB+ VRAM is recommended (CPU-only works, slower).
- Ollama with the
gemma4:12bmodel (~7.2 GB one-time download —acm-doctor --pullhandles it). - An MCP host (Claude Desktop recommended; consent cards render there).
Install
uv tool install acm-memory
acm-doctor --pull
Then register the server in your MCP host. For Claude Desktop, add to
claude_desktop_config.json (use the absolute path to the installed shim,
e.g. %USERPROFILE%\.local\bin\acm-memory-mcp.exe on Windows):
{ "mcpServers": { "acm-memory": { "command": "<absolute path to acm-memory-mcp>", "args": [] } } }
acm-doctor verifies the install end to end (doctor=PASS). Memory lives in
~/.acm/memory (override with ACM_WORKSPACE).
Status
Evaluation release for testers. The memory behavior behind this package was
qualified against a measured production baseline (2,209/2,210 across twelve
scenario arms) with a pinned local judge. Feedback via the in-chat
report_issue tool.
License
Proprietary — evaluation use. See LICENSE.txt.
Metadata
Release files for acm-memory 0.3.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| acm_memory-0.3.0-py3-none-any.whl | Python 3 | none | any | Details |
Release files / acm_memory-0.3.0-py3-none-any.whl
| Download URL | acm_memory-0.3.0-py3-none-any.whl |
|---|---|
| Size | 320.9 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
c8ba33771d2189b9ff34110c241f1439644c9d8691a42085f592a40d356169f5
|
|
BLAKE2b-256 checksum How to use checksums |
f3a63536b894afd2628f610ad5c5ab9208e0add5d2e8c3cb4643a9d3371880cc
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.11.9
|
Security for acm-memory 0.3.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.