Now available as a Claude Code Plugin

Persistent Memory
for Claude Code

Recall gives Claude Code a permanent memory store that survives every session restart and context compaction β€” automatically. Install the plugin once and four hooks capture context and restore it on every session, with zero prompting required.

/plugin marketplace add joseairosa/recall-claude-plugin
/plugin install recall@recall-claude-plugin
Claude Code β€” status bar
Live activity as you work:Recall: 1.0.0 🧠 7 (4s ago)Version · memory count · time since last store
For Claude Desktop & other MCP clients
{
  "mcpServers": {
    "recall": {
      "url": "https://recallmcp.com/mcp",
      "headers": {
        "Authorization": "Bearer YOUR_KEY"
      }
    }
  }
}

Understanding Recall

Clear expectations for what Recall does and doesn't do.

What Recall IS

Cross-session memory β€” Knowledge persists between conversations. Start a new chat and retrieve previous decisions.

Survives context compaction β€” When Claude's context window fills up and gets summarized, your memories remain intact externally.

Real-time team collaboration β€” One Claude learns something, all others know instantly. Share across 10s-1000s of instances.

Long-term knowledge base β€” Store decisions, patterns, and preferences that accumulate over weeks and months.

Fully automatic with hooks β€” Install Claude Code hooks once and memory capture happens automatically on every session.

What Recall is NOT

Not within-conversation compression β€” Your current chat still grows with each message. Recall helps across sessions, not within one.

Semi-automatic β€” Claude calls tools proactively, but you guide what's important. Not magic context reduction.

Not a replacement for good prompting β€” Store high-signal information (decisions, patterns), not everything.

Not instant token savings β€” Benefits compound over time as knowledge accumulates externally.

Everything you need for AI memory

Built for developers who want their AI agents to remember conversations, learn patterns, and maintain context across sessions.

Auto-Memory Hooks

Install once with one command β€” four hooks capture context and restore it automatically on every Claude Code session.

Cross-Session Workflows

Named workflow threads that span multiple sessions with automatic memory tagging and context threading.

Auto-Consolidation

Automatically cluster and merge similar memories. Keep originals as history, surface consolidated summaries.

Persistent To-Do Lists

Track tasks across sessions with priority levels and defer tracking. Pending to-dos auto-inject into every session start.

Semantic Search

Vector embeddings with cosine similarity. Find memories by meaning, not just keywords.

Multi-Tenant Isolation

Complete data isolation per API key. Your memories are yours alone.

Enterprise-Grade Encryption

AES-256-GCM encryption at rest. Per-tenant keys derived via HKDF. SOC 2 ready.

7 Embedding Providers

Voyage AI, Cohere, OpenAI, Deepseek, Grok, Anthropic, or self-hosted Ollama.

MCP Native

First-class Model Context Protocol support. Works with Claude, Cursor, and more.

REST API

Simple HTTP endpoints for any client. CRUD operations, search, and batch processing.

Context Types

Organize memories by type: decisions, patterns, preferences, errors, and more.

Real-Time Knowledge Sharing

One Claude learns, all others know instantly. Share knowledge across 10s-1000s of instances in real-time.

Survives Compaction

When context windows fill up and get summarized, your memories persist externally for retrieval.

Webhook Ingestion

Receive events from GitHub, Stripe, or any service and route them directly into your Claude sessions β€” with HMAC signature verification.

Event History & Replay

Full audit trail of every webhook event β€” queued, filtered, or blocked. Replay any past event into your queue with one click.

External event ingestion

Route any external event into Claude automatically

Recall listens for webhooks from any service β€” GitHub, Stripe, Honeybadger, or your own system β€” and routes them directly into your Claude sessions. No polling. No glue code. Just events.

External Service

GitHub Β· Stripe Β· Any webhook

Recall

Verify Β· Filter Β· Route

Event Queue

History Β· Replay Β· Audit

πŸ€–

Claude Session

Workspace-routed

bash β€” GitHub Actions

Push event triggers webhook delivery:

$ curl -X POST \

https://recallmcp.com/api/webhooks/events \

-H "X-Recall-Signature: sha256=a3f9…" \

-d '{"event":"push","repo":"my-app","commits":3}'

βœ“ HTTP 200 OK

{"success":true,"data":{"queued":true}}

Claude Code β€” my-app workspace

[Recall] Restoring session context…

[Recall] πŸ”” 1 pending webhook event

Listening for events…

github β†’ push

repo: my-app

commits: 3 to main

workspace: my-app βœ“

β€Ί Ready. Ask me about the new commits.

Quarantine by default

First-seen sources need your approval

Unknown source sends a push event
Source quarantined β€” event recorded, not enqueued
You whitelist it in the dashboard β†’ future events flow through

HMAC signature verification

Cryptographic proof every event is genuine

Set a signing secret per source. Recall verifies every incoming request with timing-safe HMAC-SHA256 before it touches your queue.

X-Recall-Signature: sha256=a3f9…

Wrong or missing signature β†’ 401. No secret configured β†’ works as before, no breaking change.

Event history & replay

Full audit trail with one-click replay

Every event recorded β€” queued, filtered, or blocked
Cursor-based pagination for large histories
Replay any past event into the queue instantly

Sending a signed webhook to Recall

bash
BODY='{"event":"push","repo":"my-app","commits":3}'
SECRET="whsec_your_signing_secret"

SIG=$(echo -n "$BODY" | openssl dgst -sha256 -hmac "$SECRET" -hex | awk '{print "sha256="$2}')

curl -X POST https://recallmcp.com/api/webhooks/events?token=sk-xxx \
  -H "Content-Type: application/json" \
  -H "X-Recall-Signature: $SIG" \
  -d "$BODY"

Works with any service that sends webhooks

GitHub

Push events, PRs, and issues routed to the right workspace automatically.

Stripe

Payment events, subscription changes, and failed charges captured in context.

Honeybadger

Errors and uptime alerts arrive in Claude before you even open the dashboard.

Custom

Any system that can send an HTTP POST. No SDK required.

Zero-effort automation

Memory that works while you work

Auto-Memory Hooks wire Recall directly into Claude Code. One command installs four hooks β€” context loads at session start, key actions are captured silently, and hooks keep themselves up to date.

Without Hooks

❌ "Let me re-explain the project again..."

❌ "Remember, we use JWT for auth, not sessions"

❌ "Where did we leave off last time?"

❌ Context lost every session restart

With Hooks

βœ… Context loaded automatically at session start

βœ… Decisions captured after every significant change

βœ… Session summaries picked up next time

βœ… Works silently β€” zero extra prompts

Included with the Recall plugin β€” or install hooks standalone:

/plugin install recall@recall-claude-pluginRecommended
curl -fsSL https://recallmcp.com/install-hooks | bash
1

session-start

Fires when Claude Code starts

Injects recent memories, decisions, and active workflows into context. Checks for hook updates once per day β€” notifies Claude if a newer version is available.
2

observe

Fires after Write / Edit / Task

Captures key events selectively β€” file changes, architectural decisions, patterns β€” without flooding your memory store.
3

pre-compact

Fires before context compaction

Saves critical state before context windows are summarised so nothing is ever lost across compaction cycles.
4

session-end

Fires when Claude Code exits

Creates a session summary capturing what was accomplished. Next session starts with all of this context already loaded.

Simple, transparent pricing

Start free, scale as you grow. No hidden fees, no usage surprises.

Free
$0/mo
Try Recall
Most Popular
Pro
$5/mo
7-day free trial
Team
$15/mo
Teams & production
Self-Hosted
$12/mo
On your server
Memory
Memories5005,00025,000Unlimited
Workspaces13 (+ add-ons)†25 (+ add-ons)†Unlimited
Semantic search
Cross-session workflows
Auto-consolidation
Survives compaction
Webhooks
Webhook events / monthβ€”1,000 (+ packs)†5,000 (+ packs)†Unlimited
Webhook filtersβ€”25100Unlimited
HMAC signature verification
Event history & replay
Workspace routing
Team & Security
Team members1110Unlimited
Shared memories
Audit logging
REST API
SupportCommunityPriorityPriorityCommunity

† Add-ons available on Pro & Team: $0.99/workspace/month Β· $1.99 per 1,000 webhook events/month

Self-Hosted

Run Recall on your own infrastructure

Full data sovereignty, unlimited memories, and a polished one-command installer. Deploy on any server that can run Docker.

curl -fsSL https://install.recallmcp.com | bash

Detects Docker, configures Redis + Recall, prints your MCP config.

Unlimited memories

No plan caps. Store as many memories as your server can handle.

Full data sovereignty

Your memories never leave your infrastructure. Zero cloud dependency.

One-command Docker install

Redis + Recall server up in under 2 minutes with a single curl command.

License-key auth

Activate with a license key. Works air-gapped with a 7-day grace window.

Get started in 3 minutes

From signup to AI with memory in just a few steps.

1

Sign Up

Create your free account. No credit card required.

2

Get API Key

Generate your API key from the dashboard.

3

Install Plugin

Two commands in Claude Code to install the Recall plugin.

4

Done!

Your AI now has persistent memory across sessions.

Ready to give your AI perfect memory?

Join hundreds of developers building smarter AI applications.