memory-mcp
Persistent memory for Claude Code with two-tier architecture: hot cache for instant recall (0ms) and semantic search for everything else (~50ms).
Skill by michael-denyer
Chalk Labs
Need help deploying memory-mcp?
Chalk Labs sets up agents like this inside real teams: connected to your tools, tested on your data, with a human in the loop where it matters.
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/michael-denyer-memory-mcp
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: agent-building
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/memory-mcp
Tools it pre-approves 1
From allowed-tools in SKILL.md: the agent may use these without asking you each time.
mcp__memory__*
What's inside
- Skill name
memory-mcp- Description
- Persistent memory for Claude Code with two-tier architecture: hot cache for instant recall (0ms) and semantic search for everything else (~50ms). Automatically learns what you use and promotes it.
- License
- MIT
- Allowed tools
- mcp__memory__*
- Instructions
- 115 lines in SKILL.md · view on GitHub
Files (1)
- SKILL.md
SKILL.md (first lines)
# Memory MCP - Persistent Memory for Claude Code
Give your AI assistant a second brain that persists across sessions.
## Two-Tier Architecture
| Tier | Latency | How it works |
|------|---------|--------------|
| **Hot Cache** | 0ms | Printed into context by the `SessionStart` and `UserPromptSubmit` hooks |
| **Cold Storage** | ~50ms | Semantic search via a `recall()` tool call |
The hooks run `memory-mcp-cli hot-cache`, whose stdout Claude Code adds to the conversation. No
tool call is involved. The footer of that text asks you to call `mark_memory_used(id)` when one of
the injected memories was useful, which is the signal that keeps it in the hot cache.
## Quick Start
```
remember("FastAPI with async endpoints for all APIs", memory_type="project", tags=["tech-stack"])
recall("what framework for backend")
mark_memory_used(id)
```
## Tools
### Storage
| Tool | Purpose |
|------|---------|
| `remember(content, memory_type, tags)` | Store new memory |
| `recall(query, mode, limit, expand_relations)` | Semantic search |
| `forget(memory_id)` | Delete memory |
| `list_memories(limit, offset)` | Browse all |
| `memory_stats()` | Overview stats |
**Memory types**: `project`, `pattern`, `reference`, `conversation`, `episodic`
**Recall modes**: `precision` (few, high-confidence), `balanced` (default), `exploratory` (many results)
### Hot Cache
| Tool | Purpose |
|------|---------|
| `hot_cache_status()` | View hot cache contents |
| `promote(memory_id)` | Add to hot cache |
| `demote(memory_id)` | Remove from hot cache |
| `pin(memory_id)` | Prevent auto-eviction |
| `unpin(memory_id)` | Allow auto-eviction |
| `mark_memory_used(memory_id)` | Record that a memory was useful |
### Knowledge Graph
| Tool | Purpose |
|------|---------|
| `link_memories(from_id, to_id, relation)` | Connect memories |
| `get_related_memories(memory_id)` | Find connected |
**Relation types**: `relates_to`, `depends_on`, `supersedes`, `refines`, `contradicts`, `elaborates`
### Sessions and setup
| Tool | Purpose |
|------|---------|
| `end_session(session_id)` | Consolidate a session's episodic memories |
| `bootstrap_project(root_path)` | Seed from project documentation |
| `db_maintenance()` | Vacuum, analyze, demote stale entries |
These sixteen tools are the whole surface.
## MCP Resources
| Resource | Contents |
|----------|----------|
| `memory://hot-cache` | Session-aware active context |
| `memory://promoted-memories` | The promoted backing store |
| `memory://project-context` | Current project memories |
Resources are not injected on their own. Reach one with an `@` mention or a resource tool. The
hooks are what put the hot cache in front of Claude.
## Auto-Promotion Rules
A memory is promoted when its salience score reaches 0.5 and it has been accessed three times.
Salience combines importance, trust, access count and recency. A memory is demoted after 14 days
without access.
## Common Workflows
### Project setup
```
bootstrap_project(root_path=".")
```
### Daily work
```
remember("Decided to use PostgreSQL for main DB", memory_type="project", tags=["decision", "database"])
recall("database decision")
```
### Session end
```
end_session(session_id, promote_top=true)
```
### Knowledge linking
```
link_memories(postgres_id, pgvector_id, "depends_on")
recall("PostgreSQL", expand_relations=true)
```
## Tips
1. **Tag consistently** with tags like `decision`, `convention`, `tech-stack`, `gotcha`
2. **Call `mark_memory_used`** when an injected memory helped, so promotion tracks real use
3. **Use `episodic`** for session context that may earn promotion later
4. **Link related memories** to build a graph that `expand_relations` can walk
5. **Trust auto-promotion** rather than promoting by handFrom michael-denyer/memory-mcp, MIT.
More from michael-denyer/memory-mcp
- 0.645score
Hot Memory MCP
michael-denyer
Two-tier memory: hot cache (0ms) + semantic search.
ConnectorAFreshness: ALocal★ 14↓ 144/wkClaude Code +5 - 0.567score
recall-nudge
michael-denyer
This skill should be used when the user asks a retrospective question about past work or prior decisions, such as "didn't we already try this", "last time we…
SkillBFreshness: B★ 14Claude Code +9 - 0.561score
test-memory
michael-denyer
Comprehensive interactive testing of all Memory MCP features
SkillBFreshness: B★ 14Claude Code +9
Signals
- Stars
- 14
- Forks
- 2
- Open issues
- 0
- Last commit (this folder)
- Sep 12, 2026 (1 month ago)
- Last release
- Jul 2, 2026 (4 months ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- MIT
- Repository
- github.com/michael-denyer/memory-mcp
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from michael-denyer
- 0.645score
Hot Memory MCP
michael-denyer
Two-tier memory: hot cache (0ms) + semantic search.
ConnectorAFreshness: ALocal★ 14↓ 144/wkClaude Code +5 - 0.567score
recall-nudge
michael-denyer
This skill should be used when the user asks a retrospective question about past work or prior decisions, such as "didn't we already try this", "last time we…
SkillBFreshness: B★ 14Claude Code +9 - 0.561score
test-memory
michael-denyer
Comprehensive interactive testing of all Memory MCP features
SkillBFreshness: B★ 14Claude Code +9
Done for you
Rather not set it up yourself?
Chalk Labs scopes, builds and runs agents for your team: the task audit, the eval harness, the integrations and the weekly ops report. Fixed scope, priced before we start.
See how we build AI agents →Read the case studies
Chalk Labs is a two-founder AI and growth studio. We build AI agents, CRMs and MVPs for Web3 and AI companies, and have shipped 50+ product and token launches.
- launches shipped
- 50+
- launches shipped
- media placements
- 500+
- media placements
- founders on every account
- 2
- founders on every account
Press we've placed: Forbes · CoinDesk · Decrypt · Cointelegraph · The Block
Rahil Jain, Co-founder, Chalk Labs. Ex-Goldman Sachs engineer. You talk to the person who builds it.
Get memory-mcp running in your business
Tell us what you want to automate. A founder replies within one working day with a plan, not a pitch deck.
Cite this page
memory-mcp skill. Agent Mart. https://agentmart.dev/skills/michael-denyer-memory-mcp (last updated 2026-10-24)