list_projectsevery project + countslist_sessionsrecent, filterablesearchBM25 + RRF fusionfind_similar_sessionscosine semantic (Pro)get_sessionfull transcriptcontext_for_sessioncondensed markdownrecall_neighborhoodparents/children/citationslocate_sessionsfind an old session (Pro)bucket_list / bucket_searchyour own docsthread_list / thread_getthread browsinglist_tagsevery tag + countsdoctorlocal health snapshot
add_tag / remove_tagtag managementset_aliasarchive prior valuesappend_noteadd markdown to a notecreate_collectionplus add/remove sessionthread_createplus link, set-parent, removethread_rename / archivelifecyclethread_merge / splitrestructuringsync_active_sessionscapture running terminalsapply_tagsmerge-mode tagging
MCP server
One stdio server, serving the same SQLite the web UI reads. Setup:
#Claude Code
{
"mcpServers": {
"recall": { "command": "claude-recall-mcp" }
}
}In ~/.claude.json (or per-project .mcp.json). If you installed via npm link, claude-recall-mcp is on
your PATH; otherwise point command at node with args: ["/abs/path/to/dist/mcp-server.js"].
#Claude Desktop
Same block in ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or the Windows equivalent.
Restart the app.
#Codex
Codex keeps its MCP servers in its own config.toml, inside the Codex home. Recall does not write Codex config files
and does not read that one, so this step is a hand-off: run the command and Codex writes its own config.
codex mcp add recall -- claude-recall-mcpcodex mcp list shows the result and codex mcp remove recall undoes it. Running the add again is safe; it leaves
every other setting alone. To paste rather than run, the same entry is:
[mcp_servers.recall]
command = "claude-recall-mcp"If claude-recall-mcp is not on your PATH, put node in the command position and the absolute path to
dist/mcp-server.js after it, in either form.
#Both agents are served
The MCP server answers out of one index covering both agents, so a Codex question can be answered from a Claude Code
session and the other way round. get_session and context_for_session name the agent that wrote the session, and
list_sessions, search and find_similar_sessions take a source parameter of all (the default),
claude or codex to narrow to one.
#Try it
- Search my past sessions for Hono server setup and show what we decided.
- Pull in context from session abc12345 and continue from there.
- Find my Codex sessions about the migration.
- What tags do I have?
stdio transport. No ports. Whatever the web UI shows, the MCP client sees the same SQLite.