marm-memory v2.60.1 - Give your AI Agents a permanent memory in 60 seconds
[](https://github.com/Lyellr88/marm-memory/blob/MARM-main/LICENSE)
[](https://www.python.org/)
[](https://fastapi.tiangolo.com/)
[](https://hub.docker.com/r/lyellr88/marm-mcp-server)
[](https://pepy.tech/projects/marm-mcp-server)
[](https://pypi.org/project/marm-mcp-server/)
[](https://registry.modelcontextprotocol.io/?q=marm-mcp)

[](https://discord.gg/nhyJWPz2cf)
[](https://github.com/Lyellr88/marm-memory/actions/workflows/publish-mcp.yml)
[](https://github.com/Lyellr88/marm-memory/security/code-scanning)
[](https://glama.ai/mcp/servers/Lyellr88/marm-memory)
> Contributions welcome! Browse [open issues](https://github.com/Lyellr88/marm-memory/issues) to contribute, or join the [MARM Discord](https://discord.gg/nhyJWPz2cf) to share workflows, get setup help, and connect with other builders.
## IMPORTANT
> Project Status: Brief Personal Pause
>
> I took a short personal break from active development to focus on matters outside the project. This project is still active, and I plan to return soon to keep building and refining it.
>
> Thank you for your patience, support, and continued interest. I’ll resume work soon and share updates as progress continues.
## Table of Contents
- [Quick Start](#quick-start)
- [Why MARM Memory](#why-marm-memory)
- [MARM Console](#marm-console-your-local-control-plane)
- [Performance & Scaling Benchmarks](#performance--scaling-benchmarks)
- [MCP Client Setup](#mcp-client-setup-for-http--stdio)
- [Runtime CLI Commands](#runtime-cli-commands)
- [Complete MCP Tool Suite](#complete-mcp-tool-suite-16-tools)
- [Using MARM: Talk, Don't Call Tools](#using-marm-talk-dont-call-tools)
- [Understanding MARM Memory](#understanding-marm-memory)
- [Knowledge Graphs: Code & Concepts](#knowledge-graphs-code--concepts)
- [Architecture & Internals](#architecture--internals)
- [Troubleshooting](#troubleshooting)
- [Contributing](#contributing)
- [Project Documentation](#project-documentation)
## Quick Start
1. Install and initialize with your preferred agent profiles:
```bash
pip install marm-mcp-server
marm-memory init --g-claude --g-codex --g-antigravity
```
> **Also available: --g-cursor, --g-grok, --g-hermes, --g-opencode, --g-devin, --g-cline, --g-qwen, --g-kiro and --g-zed. Run without flags to install into your current project folder instead of home**
1. Hand off to your AI companion. Tell your agent:
> **"Use the marm-init skill to set up MARM."**
1. Interact: Your agent will handle the entire setup (Python/Docker, HTTP/STDIO, keys, and client configs) interactively right inside your chat.
**Manual setup**
Prefer to wire it up yourself:
> Replace "agent" with your client’s CLI command (for example, claude, agy, or qwen). For Codex, use codex mcp add marm-memory --url http://localhost:8001/mcp instead.
| If you are... | Start the server | Connect your MCP client |
| --------------- | ------------------ | ------------------------- |
| **Solo developer / researcher** | `marm-memory start` | `"agent" mcp add --transport http marm-memory http://localhost:8001/mcp` |
| **Private local STDIO user** | `marm-mcp-stdio` | `"agent" mcp add --transport stdio marm-memory-stdio marm-mcp-stdio` |
| **Multiple agents sharing memory** | `marm-memory start --profile swarm` | `"agent" mcp add --transport http marm-memory http://localhost:8001/mcp` |
| **Private high-throughput swarm** | `marm-memory start --profile swarm-max` | `"agent" mcp add --transport http marm-memory http://localhost:8001/mcp` |
| **Trusted private lab/server** | `marm-memory start --profile trusted` | `"agent" mcp add --transport http marm-memory http://localhost:8001/mcp` |
- ⚡ Fastest HTTP Startup: Run marm-memory fast-start-http to spin up the local runtime, launch the console, and open it in your browser immediately.
- 🖥️ Web Console: Run marm-memory console to view the local UI app instantly (no Node.js required).
- ⚙️ Lifecycle Management: Manage the background daemon using status, logs --follow, restart, and stop.
- 💡 Quick Flags: Use --no-console or --no-browser to restrict startups. Run marm-memory --help for full command lists.
## Why MARM Memory
**Your AI forgets everything. MARM Memory doesn't.**
marm-memory gives your agents a private, shared memory for the context that normally gets lost between chats: decisions, research, fixes, notes, and project history. Switch from Claude Code to Codex or Gemini without losing the context already gathered.
It brings three things together:
- 🧠 **Core Memory (8 tools)** stores conversations, notes, notebook entries, and summaries so they stay searchable.
- 💻 **Code Graph (6 tools)** maps your repository so agents can find symbols, follow code paths, and understand the project without rereading it all. Point it at a repo once and it keeps itself current as you work.
- 🧩 **Concept Graph (2 tools)** connects people, decisions, errors, and ideas from your stored memories, with links back to relevant code when available. It builds itself as you store memories.
All 16 tools work over HTTP and STDIO. Your agents share the same local memory across sessions instead of starting from scratch each time. The bundled Console App provides a local control plane for memory, graphs, code context, distillation, runtime controls, and the integrated terminal. Indexing a repository creates its independent Code Graph, which you can explore from Knowledge Graph → Code Explorer even before storing any memories.
### How It Works
| Layer | What it does | Why it matters |
| ------- | -------------- | ---------------- |
| **Memory model** | Sessions, structured logs, notebooks, summaries, and semantic memories | Keeps project history searchable instead of trapped in one chat |
| **Scale layer** | SQLite WAL mode, connection pooling, serialized write queue, and HTTP rate-limit presets | Lets one server support solo use, multi-agent work, and swarm-style bursts |
| **Intelligence layer** | FTS filter, semantic re-rank, bounded semantic fallback, auto-classification, write-time consolidation, and compaction candidates | Keeps recall useful as memory grows instead of letting duplicates pile up |
| **Code graph layer** | Repo indexing, symbol lookup, call tracing, architecture overview, and change-impact analysis | Gives agents project structure without rereading the whole codebase |
| **Concept graph layer** | Entity and relationship extraction from stored memories, with links back into the code graph | Connects decisions, errors, tools, and people across sessions instead of leaving them as flat text |
| **Token layer** | Lightweight 8-tool core surface (16 total with bundled graph tools), semantic re-rank before retrieval, and write-time deduplication | Reduces tokens sent to the model on every recall and cost stays predictable as memory scales |
| **Deployment layer** | Pip, Docker, STDIO, HTTP, and managed `swarm`, `swarm-max`, and `trusted` profiles | Lets you run private local memory or shared multi-agent memory with the same MCP surface |
See [Performance & Scaling Benchmarks](#performance--scaling-benchmarks) for retrieval latency, concurrency, and write-cost numbers, and [Architecture & Internals](#architecture--internals) for the mechanisms behind each layer.
## MARM Console: Your Local Control Plane
Run `marm-memory console` to open the bundled web app at `http://127.0.0.1:8002`. It ships with MARM, needs no Node.js installation, stays on your machine, and works with the same local stores and MCP runtime your agents use.
| Workspace | What it gives you |
| --- | --- |
| **Memories and Knowledge Graph** | Browse, filter, edit, and clean up memory, logs, notebooks, extracted concepts, duplicates, concept builds, and code links. |
| **Indexed Projects and Project Explorer** | Index local repositories, inspect architecture, impact, coverage, decisions, runtime traces, symbol search, and code-graph topology. |
| **Code Context** | Build one bounded view of task-ranked symbols, source, and related memory. An optional local model can answer from that same context, with its citations checked. |
| **Distill** | Turn transcripts into durable-memory proposals. Review, apply, or discard them with duplicate evidence visible. |
| **System and Terminal** | Manage runtime health, indexing, local-model settings, backups, diagnostics, and maintenance. The docked terminal provides a real local shell with persistent sessions and a searchable MARM command menu. |
| **Connections** | Set up MARM end to end in one place. **Setup** connects Claude Code, Claude Desktop, Cursor, VS Code, Codex CLI, Grok Build, Hermes Agent, OpenCode, Cline, Antigravity, Qwen Code, Devin, Kiro, and Zed over HTTP, STDIO, or Docker STDIO, tests each connection, and saves server settings to `~/.marm/settings.json`. **Docker** pulls, starts, and stops the MARM container and writes a compose file. **Manual** gives copy-ready config for each client and OS, every CLI command, and every HTTP endpoint. |
### Runtime CLI Commands
`marm-memory` is the local runtime manager installed with the Python package. These are the normal operational commands; use `marm-memory