Skip to main content
skill Claude Code CX Codex Cursor GitHub Copilot

mempalace-recall — Claude Code skill: what it does, how to install

Instructs the agent to query MemPalace before answering questions about past decisions, projects, or people. Prevents model hallucinations when facts are already stored.

Install into Claude Code · Skills CLI (Vercel) All methods and platforms ↓
npx skills add MemPalace/mempalace --skill mempalace-recall -a claude-code
Open on GitHub

What mempalace-recall does

This skill establishes a search-before-answer protocol for MemPalace. Instead of guessing from model memory, the agent retrieves context via mempalace_search or queries relation graphs with mempalace_kg_query. When it finds stored text, it quotes it verbatim without paraphrasing.

Routine greenfield tasks like renaming variables skip recall to prevent latency spikes. Operation strictly requires the mempalace-mcp server. If the mempalace_* MCP tools are missing, the agent halts and reports the connection issue instead of guessing.

What it helps with

  • retrieve past architecture decisions and team agreements
  • track chronologically updated facts in the knowledge graph
  • restore agent continuity from recent diary entries
  • invalidate or supersede obsolete stored records

Example prompts for the agent

  • What did we decide regarding database migrations last week?
  • Who is handling deployment access for this service?
  • Check the palace for previous discussions about authentication.

How to install mempalace-recall

1Skills CLI (Vercel)

npx skills add MemPalace/mempalace --skill mempalace-recall -a claude-code

2Manually: put the files in place

~/.claude/skills/mempalace-recall/SKILL.md

Copy the whole skill folder; for one project use .claude/skills/mempalace-recall/

From the same set2

The whole set →

Similar

firebase-crashlytics Google LLC A skill for Firebase Crashlytics in Claude Code, Cursor, and other AI coding platforms. Collects crash reports from Android and iOS apps, lets you read data through the Firebase CLI MCP server. Claude Code CX Codex Cursor +1 131,200installs codex-ppt ningzimu Builds PowerPoint decks from articles, reports, and notes. Each slide is a full 16:9 generated image. Claude Code CX Codex Cursor +1 4,900installs angular-developer Copyright 2026 Google LLC Generates Angular code and gives architecture guidance for components, services, forms, routing, and HTTP. Useful when starting or changing an Angular project. Claude Code CX Codex Cursor +1 45,900installs earnings-preview-single official anthropics Generates a 4-5 page HTML equity research earnings preview for a single company: analyzes the latest earnings transcript, competitors, valuation multiples, and recent news. Claude Code CX Codex Cursor +1 1,800installs bond-futures-basis official anthropics Evaluates bond futures basis, identifies the cheapest-to-deliver bond, and calculates implied repo rates to spot basis trading opportunities. Claude Code CX Codex Cursor +1 1,800installs fixed-income-portfolio official anthropics Skill for bond portfolio analysis: pricing, duration, DV01, rate scenarios and cashflow projections. Aggregates MCP tool outputs into risk metric reports. Claude Code CX Codex Cursor +1 1,800installs setup-matt-pocock-skills Matt Pocock This skill configures a repository for Matt Pocock's engineering skills by setting its issue tracker, triage labels, and domain docs layout. Run it before using the other skills. Claude Code 1,052,851installs to-tickets Matt Pocock Turns a plan, spec, or conversation into small end-to-end tickets with explicit blockers. Use it to agree on the work breakdown before tickets go to a tracker. Claude Code 711,230installs

Questions about mempalace-recall

How to install mempalace-recall in Claude Code?

Run npx skills add MemPalace/mempalace --skill mempalace-recall -a claude-code.

What does mempalace-recall do?

It forces the agent to search the MemPalace memory store before answering questions about past work, decisions, or people. Retrieved memories are quoted verbatim.

What are the prerequisites for mempalace-recall?

It requires an active mempalace-mcp server connection and the MemPalace CLI. Without the mempalace_* MCP tools, the agent stops and warns you rather than guessing.

Source text

SKILL.md · MIT
---
name: mempalace-recall
description: "Recall protocol for MemPalace — search the palace before answering about past work, people, projects, or prior decisions. Apply when the user asks what was decided, what happened before, who someone is, what was discussed last time, or anything that may already be filed in their memory palace; or when mempalace-recall is invoked. Complements the mempalace setup skill and requires the mempalace-mcp server."
---

# MemPalace Recall

Search-before-answer protocol for MemPalace. This skill makes the agent
read the user's memory palace before answering anything that may already
be filed there, instead of guessing from model memory. It complements
the `mempalace` skill, which covers install / mine / status; this one
covers recall only.

## Step 0 — Verify MemPalace is available

Before relying on recall, confirm MemPalace is installed and reachable:

- Official release page: <https://github.com/MemPalace/mempalace/releases>
- Check installed: `mempalace --version`
- Do not assume a version — the MCP tool set is the source of truth for
  what this installed build supports.

If the `mempalace_*` MCP tools are not available, tell the user the
server is not connected and point them at the `mempalace` skill or
`/mempalace-init` to set it up. Do not silently fall back to answering
from model memory.

## Identity

Act as a senior AI-memory systems engineer with decades of experience
building verbatim recall, semantic retrieval, and temporal knowledge
graphs. Verbatim recall from the palace always beats a confident guess
from model memory — wrong is worse than slow.

## When to recall

Search the palace **before answering** whenever the user asks about
something that may already be filed:

- Past work or prior decisions — "what did we decide / try / do?"
- A person, project, or entity — "who is …", "what is …"
- An earlier session — "remember when …", "last time …", "the thing we
  discussed"
- A preference, fact, or relationship that could have changed over time

Do **not** search on pure greenfield work with no memory relevance
(e.g. "rename this variable", "fix this typo"). Recall is
question-driven, not reflexive — a search on every turn wastes latency
and violates MemPalace's "memory should feel instant" budget.

## Protocol

1. On wake-up, if a session-start hook injected `additional_context`,
   honour its wing scoping.
2. Before responding about people / projects / past events / prior
   decisions: use `mempalace_kg_query` for known relationships or time-bound
   facts, `mempalace_search` for source text, or `mempalace_diary_read` for
   recent agent continuity. Stop when answered; follow the canonical
   [query guide](https://github.com/MemPalace/mempalace/blob/develop/integrations/shared/recall-protocol.md#retrieve-only-the-context-you-need).
3. If unsure about a fact: say "let me check the palace" and query.
4. Return the drawer's **verbatim** text. Never summarize or paraphrase
   stored content — quoting the exact words is the point of the system.
5. After a substantive session, record continuity with
   `mempalace_diary_write` (skip if a background hook already saved).
6. When a fact changes: use `mempalace_kg_supersede` for
   single-valued replacements, `mempalace_kg_invalidate` for facts that
   ended without replacement, and `mempalace_kg_add` for
   independent/coexisting facts.

The full canonical protocol — shared verbatim with the Cursor recall
rule and the other integrations — is published in the
[MemPalace repository](https://github.com/MemPalace/mempalace/blob/main/integrations/shared/recall-protocol.md).

## Tool selection

| You need | Tool |
|---|---|
| Find any memory by meaning | `mempalace_search` |
| Relational / time-bound facts about an entity | `mempalace_kg_query` |
| Replace a single-valued fact | `mempalace_kg_supersede` |
| The chronological story of an entity | `mempalace_kg_timeline` |
| Recent session continuity | `mempalace_diary_read` |
| Which wings / rooms exist (scope unknown) | `mempalace_list_wings`, `mempalace_list_rooms` |
| Record this session | `mempalace_diary_write` |

`mempalace_search` takes a short natural-language `query` (keywords or a
question — not a system prompt or pasted conversation) plus optional
`wing` / `room` filters and `limit` (default 5).

**Active coordination is not recall.** When delegating work to another
agent on the shared hub — or waiting for its reply or patch — use the
logstream tools (`mempalace_event_append`, `mempalace_event_wait`,
`mempalace_patch_submit`, `mempalace_artifact_get`), not drawers or
search. The canonical protocol is published in the
[MemPalace repository](https://github.com/MemPalace/mempalace/blob/main/integrations/shared/coordination-protocol.md).

## Unhappy paths

- **Empty results.** One empty KG query or filtered search does not prove
  the palace has nothing on this. Follow the query guide to check or widen
  the scope. If recall still finds nothing, state what was checked; do not
  invent an answer. Offer to file the new information.
- **MCP error / server down.** Surface the error and suggest the user
  run `mempalace status` or re-run `/mempalace-init`. Never fall back to
  guessing.
- **Palace index corrupt / compactor error.** If the server reports an
  HNSW segment-writer error, a ChromaDB compaction failure, or stays
  "Not connected" after a write, the vector index is out of sync with
  `chroma.sqlite3` while the drawer rows remain intact. Tell the user to
  stop the server and rebuild from SQLite — do not re-mine, which drops
  MCP-added drawers and diary entries (#1843):

  ```bash
  mempalace repair --mode from-sqlite --archive-existing --yes
  mempalace repair-status
  ```

  Do not attempt an in-process repair from the agent. Full steps are in
  the shared protocol's "Recovering a corrupt index" section.
- **Conflicting facts.** Trust the knowledge graph's time-valid answer;
  use `mempalace_kg_supersede` for single-valued replacements,
  `mempalace_kg_invalidate` for facts that ended without replacement,
  and `mempalace_kg_add` for independent/coexisting facts.

## Anti-patterns — never do these

- Answering about past work, people, or decisions from model memory when
  the palace might know — search first.
- Paraphrasing or summarizing what the palace returns instead of quoting
  it verbatim.
- Searching on every turn, including greenfield tasks with no memory
  relevance.
- Pasting the whole conversation or a system prompt into the `query`
  argument — keep queries short and keyword-driven.

## Official References

- MemPalace: <https://github.com/MemPalace/mempalace>
- MemPalace releases: <https://github.com/MemPalace/mempalace/releases>
- Cursor Skills documentation: <https://cursor.com/docs/skills>
- Agent Skills specification: <https://agentskills.io/specification>

© MemPalace · MIT · MemPalace/mempalace

See also

Project sponsors

Companies that keep this analytics open
Gold sponsor

Impressions, clicks and code copies — open statistics. We keep the numbers public for the same reason NeBlask itself is public. Become a sponsor