原型 · 预览版:收录官方注册中心里的全部服务器,每 30 分钟同步一次。评价和账户功能将在后续阶段推出。
PopNx MCP为使用 AI 的人准备的 MCP 服务器 · 用大白话讲清楚

Recall

作者:j4ckxyz版本 0.1.4i★ –i在你的电脑上运行
注册名称io.github.j4ckxyz/recall

安装

概览

作者提供的说明(英文原文)

Private, encrypted memory about you, shared by all your AI agents. Self-hosted; runs on a Pi.

PopNx MCP 的三大支柱

这三项永远不会合并成一个分数:意见、测量和人气是不同的东西。

它能帮你做什么

我们还没有为它写通俗的介绍。下面是我们从注册中心读取到的事实。

  • 连接方式: 在你的电脑上运行
  • 传输方式: stdio
  • 分类: 搜索与 AI 记忆

安装

选择你使用的 AI 应用,然后复制设置。

安装之前

  • 基础检查:1 项中通过 1 项
  • 在你的电脑上运行,拥有你的用户账户的权限(文件、网络、应用)。
  • 注册中心没有列出需要填写的密钥。

你用的是哪个应用?

在上方选择你的应用。我们会记住它,下次按钮会显示“安装到 …”。

下载作者的 .mcpb 文件

链接指向作者自己的文件;我们不托管也不重新打包它。打开文件后,Claude Desktop 会进行安装。

在终端中运行这条命令

浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。

浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。

这个服务器在你的电脑上运行,而 ChatGPT 只能连接互联网上的服务器。请选择其他应用。

你的选择通过 Cookie 保存在这台设备上,无需账户。

这些设置是根据作者在注册中心的条目生成的。如果 README 的写法不同,请以 README 为准。

它能做什么

它在你的电脑上运行;安装后,工具列表会显示在你的 AI 应用中。

基础检查i

我们检查的是任何人都能看到的信息;我们没有阅读代码。不适用的检查项不计入总数。 · 检查于 2026年11月8日

  • ✓ 通过

    作者与仓库一致

    注册名称已通过 GitHub 账户 j4ckxyz 验证,该账户拥有此仓库

  • … 尚未检查

    仍在维护

    我们还没有从 GitHub 读取这个仓库

  • … 尚未检查

    有许可证

    我们还没有从 GitHub 读取这个仓库

  • – 不适用

    端点有响应

    它在你的电脑上运行,没有互联网端点

  • – 不适用

    使用 OAuth 登录

    在你的电脑上运行,改用本地设置

  • … 尚未检查

    工具描述中没有隐藏指令

    它在你的电脑上运行;我们只能读取互联网端点的工具列表

与“搜索与 AI 记忆”中的其他服务器比较i

  • 星标数多于此分类中其他 5688 个服务器的 0%
  • 发布到注册中心的时间比此分类中其他 5688 个服务器的 72% 更新
  • 基础检查结果等于或优于此分类中其他 5688 个服务器的 100%

与注册中心里这个分类中所有活跃的服务器比较。只有当发布者拥有该仓库时,星标数才计入。

常见问题

Recall 安全吗?

它在 1 项适用的基础检查中通过了 1 项。我们没有阅读代码。在添加密钥或令牌之前,请先看看这个服务器要求哪些权限,并使用只具备所需权限的密钥。

它需要哪些密钥或代码?

注册中心没有列出必需的密钥,不过有些服务器会在首次使用时要求你登录。

它在我的电脑上运行还是在云端?

它在你的电脑上运行。你的 AI 应用会在需要时启动它,数据不会经过作者的服务器(除非它自己调用在线服务)。

它还在维护吗?

GitHub 仓库最后更新于–,最新版本(0.1.4)于15天前进入注册中心。

哪些应用可以使用它?

支持 MCP 的应用,例如 Claude Desktop、Claude Code、Cursor 和 VS Code。你的电脑上还需要有 MCPB。

有什么可以替代它?

同一分类中有:Context7, Codebase Memory, Exa

替代选择

同一分类中其他作者的服务器,按星标数排序。

如何看卡片:↓ 每周下载量i★ GitHub 星标i三大支柱:评价 · 检查 · 使用情况i更新 = 最新版本发布到注册中心的时间i

Context7

Up-to-date docs for AI agents

作者:upstash广泛使用↓ 97.3万/周★ 6.4万前天更新

电脑或云端

Codebase Memory

Codebase knowledge graph for AI agents — 162 languages, sub-ms queries, 99% fewer tokens.

作者:DeusData广泛使用↓ 1.8万/周★ 4.8万22天前更新

在你的电脑上运行

Exa

Connect AI agents to Exa for web search, content fetching, and multi-step research.

作者:exa-labs正在增长★ 52132个月前更新

在云端运行✓ exa.ai

作者的 README

打开 README

按原文从作者的仓库复制。PopNx MCP 没有审查或背书其内容。HTML、图片和脚本已被移除。链接会离开本站。

Recall

A self-hosted memory of *you*, shared by every AI agent you use, over MCP.

  • One binary, 10 MB, embedding model included. No Python, no GPU, no network at runtime. ~13 MB RAM per agent connection. Runs on a Raspberry Pi.
  • Three tools: recall, remember, forget. Agents get facts and dates, never who saved them.
  • Fuzzy search: BM25 + static embeddings + typo repair, ~150 µs per query. Benchmarked against BM25, other embedding models and transformer embedders.
  • Secure by default: SQLCipher-encrypted store, secret scanner on every write, soft deletes with an audit trail, stdio-only unless you opt into HTTP with scoped tokens.
  • A map of your memory: a password-protected web app, built into the same binary at about 65 KB, to browse, search, edit and forget memories.
curl -fsSL https://github.com/j4ckxyz/recall/releases/latest/download/install.sh | sh

Install · Let an agent install it · Use it across devices · Web app · Design · Benchmarks

Why not just use ChatGPT or Claude memory?

Both are good at what they do. They take the same basic approach as Recall: short third-person facts, a compact profile in context, search on demand. Recall uses that approach but changes who owns the memory and where it works.

Where Recall is better

ChatGPT / Claude memoryRecall
Which agents can use itOnly that vendor's apps. ChatGPT's memory doesn't reach Claude, Cursor or your scripts, and vice versa.Every MCP client: Claude Code, Claude Desktop, Cursor, Codex, Gemini CLI, Zed, your own agents. Switch tools and keep your context.
Who holds the dataThe vendor's servers, under their retention and policy terms.Your disk, encrypted with your key (SQLCipher, AES-256). No account, and no network access at runtime.
Seeing what it knowsSaved memories are listable. Chat-history recall and synthesized summaries are paraphrased, and you can't fully inspect them.Every fact is a plain line with an id and a date. recall list shows all of it, and recall audit shows which agent wrote what and when.
When changes applyClaude's automatic summary refreshes on a 24-hour cycle.Immediately, for every agent.
DatesEvery memory carries when it was learned, including backfilled ones, so agents can tell old facts from current ones.
Mistakes and abuseWrites containing secrets or ID numbers are rejected. Forget and replace are reversible for 30 days. HTTP tokens can be read-only.
Context costA profile of about 1,500 tokens plus targeted search. Up to 5,000 facts without filling every prompt.
Lock-inExport is possible, but import depends on each vendor.recall export --json, MIT licence, one 10 MB binary.

Search quality is comparable. Hosted products don't publish their retrieval stack, so they can't be benchmarked directly. On our fact-retrieval benchmark, Recall's hybrid search (Recall@5 of 0.82) matches transformer embedding models such as bge-small (0.82) and MiniLM (0.85). It runs in about 150 µs with a 7.5 MB model and no ML runtime.

Where hosted memory still wins

  • No setup, and it works everywhere. ChatGPT and Claude memory work on phone and web with no install. Recall reaches web and mobile apps only through the HTTP mode behind TLS. OAuth support for ChatGPT-style remote connectors isn't built yet.
  • Passive learning from all your chats. ChatGPT's "reference chat history" and Claude's conversation search draw on everything you've said. Recall only knows what agents explicitly remember.
  • Tuned behaviour. Vendors train their models to use their own memory well. Recall depends on each client following its MCP instructions, and some clients follow them better than others.

In short: if you use one assistant, on your phone, and don't mind the vendor holding your memory, use theirs. If you use several agents, want the data on your own hardware, and want to see and control every fact, use Recall. You can also use both: run recall import on facts exported from ChatGPT or Claude.

Install

macOS / Linux / Raspberry Pi

curl -fsSL https://github.com/j4ckxyz/recall/releases/latest/download/install.sh | sh

Windows (PowerShell)

irm https://github.com/j4ckxyz/recall/releases/latest/download/install.ps1 | iex

Claude Desktop, one click: download recall.mcpb and open it. The bundle covers macOS, Windows and Linux. It creates your encrypted store on first launch, and you can optionally enter a shared Tailscale server.

MCP Registry: Recall is listed as io.github.j4ckxyz/recall, so clients that browse the official registry can install it directly.

The installer:

  1. Downloads the prebuilt binary for your platform and checks it against the release's SHA256SUMS. It stops if the checksum doesn't match.
  2. Installs it to ~/.local/bin (%LOCALAPPDATA%\Programs\recall on Windows).
  3. Creates your encrypted store and key in ~/.recall/.
  4. Runs recall doctor, a self-test of the model, search, the encrypted store and a real MCP handshake.
  5. Offers to add Recall to the agents it finds: Claude Code, Claude Desktop, Cursor, VS Code, Windsurf, Gemini CLI and Codex CLI.

Every release is installed and smoke-tested by CI before it's published, on macOS, Windows and Ubuntu (x64 and arm64), and in Debian 11 and 12, Fedora, Arch and Alpine containers. CI then re-runs the exact one-liners above against the published release. Linux binaries are static (musl), so they run on any distro, including 64-bit Raspberry Pi OS.

Prefer to read the script before running it? See install.sh and install.ps1. You can also build from source: cargo install --git https://github.com/j4ckxyz/recall --features vendored-openssl (drop the feature on macOS).

Back up `~/.recall/key`. Without it your memory cannot be decrypted. To keep the key in a password manager instead, set RECALL_KEY_CMD, for example RECALL_KEY_CMD='op read op://Private/recall/key'.

Or let an agent do it

Copy this into Claude Code, Codex, Cursor or any agent that can run commands:

Install Recall for me (https://github.com/j4ckxyz/recall). It's a self-hosted

MCP server that gives all my AI agents a shared, encrypted memory about me.

  1. Install it:
  • macOS/Linux: curl -fsSL https://github.com/j4ckxyz/recall/releases/latest/download/install.sh | RECALL_CONNECT=yes sh
  • Windows PowerShell: $env:RECALL_CONNECT='yes'; irm https://github.com/j4ckxyz/recall/releases/latest/download/install.ps1 | iex
  1. Run recall doctor and confirm it ends with "All checks passed". If anything fails, show me the failing line and stop.
  2. If ~/.local/bin isn't on my PATH, add it to my shell profile.
  3. Tell me which agents were connected and that I must restart them.
  4. Remind me to back up ~/.recall/key. Never print, copy or upload the key.
  5. Ask me whether I want to share one memory across my devices with Tailscale. If yes, follow "Use it across devices with Tailscale" in the README, and ask me which device should be the server before changing anything.

Connect your agents

recall connect adds Recall to every agent it detects, and keeps a .before-recall backup of any config file it edits. You can also name agents: recall connect cursor vscode. recall disconnect undoes it.

To configure an agent by hand, every client runs the same command: recall mcp.

{ "mcpServers": { "recall": { "command": "/full/path/to/recall", "args": ["mcp"] } } }
  • Claude Code: claude mcp add --scope user recall -- recall mcp
  • Codex CLI, in ~/.codex/config.toml: [mcp_servers.recall], then command = "recall" and args = ["mcp"]

Use it across devices with Tailscale

Recommended: run one Recall server on an always-on machine (a Raspberry Pi, home server or desktop), and point every other device at it over your Tailscale tailnet. All your agents, on every device, then share a single memory, and none of it is reachable from the public internet.

 laptop agents ─┐                                  ┌─ Raspberry Pi

desktop agents ─┼── recall mcp ── tailnet (WireGuard) ──► recall serve --tailscale work agents ─┘ (relays stdio) └─ encrypted store

1. On the server (after installing Recall and Tailscale):

recall token add laptop          # one token per device; --read-only for read-only devices

recall serve --tailscale # listens on this machine's tailnet IP only, port 7878

To keep it running at boot on Linux:

mkdir -p ~/.config/systemd/user

cat > ~/.config/systemd/user/recall.service <<'UNIT' [Unit] Description=Recall memory server After=network-online.target tailscaled.service

[Service] ExecStart=%h/.local/bin/recall serve --tailscale Restart=always RestartSec=5

[Install] WantedBy=default.target UNIT systemctl --user enable --now recall sudo loginctl enable-linger "$USER" # start at boot without logging in

2. On every other device:

recall remote http://<server-name>:7878/mcp rcl_…   # MagicDNS name, e.g. http://pi:7878/mcp

recall connect

The agents on that device still run recall mcp; it now relays to the server. recall doctor checks the connection, and recall remote off switches back to a local store.

Why this is safe

  • Traffic between tailnet devices is end-to-end encrypted by WireGuard and limited to your own devices, so Recall can speak plain HTTP without a TLS stack.
  • On top of that, Recall requires a per-device bearer token. Tokens are stored only as hashes and can be revoked with recall token revoke laptop.
  • --tailscale binds only the tailnet interface, never your LAN or the internet. Don't use Tailscale Funnel for Recall.
  • recall audit shows which device wrote each memory.
  • To narrow access further, tag the server and allow only your own user in your tailnet policy:
  "grants": [{ "src": ["you@example.com"], "dst": ["tag:recall"], "ip": ["tcp:7878"] }]

Clients that only accept a URL can use the server directly, with { "url": "http:// :7878/mcp", "headers": { "Authorization": "Bearer rcl_…" } }. Web and mobile apps such as claude.ai and ChatGPT can't reach a private tailnet yet.

See your memory

recall serve also hosts a small web app, like Obsidian's graph view for what your agents know about you.

recall password       # on the machine running Recall: generates a strong password (shown once)

recall serve # then open http://localhost:7878 (or your tailnet address)

On a tailnet you don't need the password. When recall serve runs on a machine that's on Tailscale, it signs you in automatically. It asks the local Tailscale daemon who owns the device you're connecting from: the same verified identity tsidp is built on, with nothing extra to deploy.

  • Who gets in. Only the Tailscale user who owns the server, unless you allow others with recall tailnet allow friend@example.com. Tagged devices (servers, CI) are never signed in this way.
  • How it's detected. It works when Recall listens on the tailnet (recall serve --tailscale), and also behind tailscale serve, where Recall trusts the Tailscale-User-Login header only if tailscale serve is actually proxying to Recall's port.
  • **Sessions.*

只显示了开头部分;其余内容请在仓库中阅读

问 PopNx