Memocall

io.github.baodq06由 GitHub 账号 baodq06 发布v0.1.0更新于 Oct 24, 2026

Recall past Claude Code conversations from any project as clean, compact Markdown.

已验证STDIO仅桌面知识与记忆开发者工具

概览

AI 生成的概览

让 Claude Code 以紧凑 Markdown 形式回顾并搜索任意项目的历史对话记录。

可以做什么
MemoCall 读取 ~/.claude/projects/ 下 Claude Code 的本地会话记录,提供五个只读工具:list_sessions 按目录分组列出近期对话,search_sessions 按关键词查找历史对话,load_session 按 id 或 query 以紧凑 Markdown 返回某个对话,session_outline 给出提示词编号地图,search_in_session 返回单个对话内匹配的轮次。工具调用输出被省略、废弃分支被丢弃,并通过中间截断控制在输出上限内。
适用场景
当你需要引用早前 Claude Code 会话的上下文,尤其是来自其他项目的会话,而不想复制导出文件或手动翻找原始记录时适用。也便于通过大纲和轮次范围浏览超大会话。
运行要求
作为 npm 包(memocall)通过 npx 以 stdio 在本地运行;需要 Claude Code CLI 和 Node 18+。未声明认证、环境变量、请求头或网络访问。
安装前请注意
它会读取本地会话记录,其中可能包含机密信息;默认紧凑模式会省略工具输出,但 format "full" 会包含简要工具输入,可能暴露敏感字符串。Claude Code 会在 cleanupPeriodDays(默认 30 天)后删除记录,且未公开的格式可能随版本变化。

安装

在 SourceWeft 中

  1. 打开 控制台中的 Memocall,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。

其他 MCP 客户端

参照 仓库 中的启动说明。

README

MemoCall

An MCP server that lets Claude Code recall the context of your past conversations — from any project — on demand.

Claude Code can resume a session, but getting another conversation's context into the one you're in is a chore — copy-pasting exports or digging through raw transcript files by hand — and resume only sees the current directory anyway. MemoCall turns it into a single ask: "what was I working on?" or "load the session where we set up X", and it pulls that transcript in as clean, compact Markdown — even from a totally different project.

It's read-only. Claude Code already records every session to ~/.claude/projects/<project>/<id>.jsonl; this server just reads those files, strips the noise, collapses tool calls, and hands back a readable transcript. It never writes, hooks, or touches a live session.

What you get

Five tools, available in every session once installed. Claude picks the right one from the request:

ToolWhat it does
list_sessionsYour recent conversations across all projects, grouped by directory. "What was I working on?"
search_sessionsFind a past conversation by keyword (matches titles + first messages + paths).
load_sessionLoad one conversation as compact Markdown — by id or query. Optionally a turn window via turns.
session_outlineA cheap map of one conversation: the numbered list of your prompts. Great for huge sessions.
search_in_sessionReturn only the turns within one conversation that match a keyword.

You don't call these directly — you talk normally and Claude reaches for them:

You:  what sessions have i worked on recently?You:  load the one where we set up the license invitation systemYou:  which session did we debug the keychain SIGKILL thing in?

How the transcript is rendered

Raw transcripts are a verbose event log (one big file hit 11 MB). memocall reduces each turn to the essentials, Conductor-style:

**You:** right now i need to set up a system to invite prospects...↳ 12 tool calls (Bash ×5, Read ×4, Edit ×3)**Claude:** I've set up the invitation flow. Key decisions: ...

Tool-call outputs are elided (the big token win, and a privacy win — see below). Abandoned/edited message branches are dropped so you get the conversation as it actually played out. A token budget keeps even an 11 MB session well under Claude Code's MCP output cap via middle-out truncation.

Navigating large sessions

A single response can't hold a 1,000-turn session, so for big ones you don't dump — you navigate:

  1. session_outline → a numbered map of every prompt (tiny, fits any session).
  2. search_in_session → jump straight to the turns about a topic, or load_session with turns: "300-340" to pull an exact window (turn numbers come from the outline).

So you never lose access to the middle of a huge conversation — load_session alone would middle-out-truncate it, but the outline + range/search tools let Claude reach any part on demand.

Install

Requires the Claude Code CLI (and Node 18+). One line — npx fetches and runs the published package:

bash
claude mcp add --scope user memocall -- npx -y memocall

--scope user makes it available in every session, in every directory. Restart Claude Code (or open a new session) and ask it to list your sessions. Verify with claude mcp list — you should see memocall: … ✔ Connected.

Or run from source (for development)
bash
git clone https://github.com/baodq06/memocall.gitcd memocall && npm install && npm run buildclaude mcp add --scope user memocall -- node "$(pwd)/dist/index.js"

Privacy & security

  • Local only. No network, no auth, no telemetry. It reads files under ~/.claude/projects/ and nothing else.
  • Compact mode elides tool outputs, which is where secrets (tokens, keys, env) usually live — so the default output is much safer than the raw transcript.
  • format: "full" includes brief tool inputs and may surface sensitive strings. Use it deliberately.
  • Transcripts can contain secrets regardless; treat loaded context as you would the original conversation.

Limitations

  • Recall is best-effort: Claude Code deletes transcripts after cleanupPeriodDays (default 30).
  • Forked sessions may only contain post-fork turns.
  • The transcript format is undocumented and can change between Claude Code versions; all format knowledge is isolated in src/jsonl.ts so it's a one-file patch if it does.

Development

bash
npm run build           # compile TypeScript -> dist/npm test                # unit suite (node:test) on synthetic fixturesnpm run smoke           # optional: checks all YOUR real sessions stay under the output capnode dist/parser.js <file.jsonl> [--full|--outline] [--turns 10-20] [--search "kw"] [--max N] [--think]   # test the parsernode test-client.mjs    # drive the server over stdio like Claude Code doesnpm run inspect         # open the MCP Inspector UI

Layout:

  • src/jsonl.ts — all knowledge of the transcript format (helpers, ordering, classification).
  • src/parser.ts — JSONL → compact Markdown (the core transform).
  • src/locator.ts — session enumeration + cached metadata index.
  • src/index.ts — the MCP server wiring the three tools.

License

MIT

来源:README.md,提交 53276bd

工具

0
SourceWeft 尚未在沙箱中启动过该软件包,因此其工具未知。

版本历史

1
  1. v0.1.0最新Sep 16, 2026

评分

已满足适用检查项的 50%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通25 分

    请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。

  • 已声明认证方式10 分

    请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。

  • 已列出工具15 分

    请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。

  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分