Cursor History

io.github.S2thend由 GitHub 账号 S2thend 发布v0.3.1更新于 Oct 28, 2026

MCP server for browsing, searching, exporting, and backing up your Cursor AI chat history

概览

AI 生成的概览

本地 MCP 服务器,让助手在本机列出、搜索、查看、导出并备份你的 Cursor AI 对话历史。

可以做什么
  • 列出 Cursor 会话及其 ID、来源与数据状态,可按工作区筛选
  • 查看会话中可用的消息,并按关键词搜索对话文本及上下文
  • 将会话导出为 Markdown 或 JSON 内容返回给客户端
  • 备份与还原 Composer 历史归档,并以试运行和复制/移动模式迁移符合条件的 Composer 会话
  • 生成年度回顾包,包含年度统计、主题与报告提示词
适用场景
当早前的 Cursor 对话中存有决策、缺陷修复或架构背景,希望助手能回忆起来时适用;也适合在不搭建索引服务的情况下导出、备份或整理本地 Cursor 对话历史。
运行要求
以本地 stdio 进程运行在存有 Cursor 历史的机器上,通常通过 npm 包的 npx 启动;需要 Node.js 20.x 或 22.x–26.x,以及支持本地 stdio MCP 服务器的客户端。无需 API 密钥或向量嵌入。可选环境变量 CURSOR_DATA_PATH 与 CURSOR_STORE_ROOT 用于指定自定义数据根目录。首次运行可能从 npm 下载依赖。
安装前请注意
返回的历史内容对 MCP 客户端可见,并可能发送到远程模型提供方;搜索结果与导出不会自动脱敏。旧对话可能包含过时命令、凭据或恶意文本,应视为不可信的参考资料。备份会写入归档;还原与迁移会修改本地历史,且迁移默认采用移动模式,会删除原会话。服务器自身没有交互式确认提示,请对写入类工具保持客户端审批开启。

安装

在 SourceWeft 中

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

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

其他 MCP 客户端

参照 仓库 中的启动说明。

README

Cursor History MCP

[cursor-history-mcp — Search your Cursor history through MCP. MCP-exclusive Year in Review: statistics, topics and report prompts.]

[npm version] [npm downloads] [License: MIT] [Node.js]

English | 中文 | Français | Español

Let your AI search your Cursor history.

Your existing Cursor conversations may already contain months of decisions, bugs, fixes, and architectural context. Give an MCP-capable assistant a way to find that context—without having recorded it with this tool beforehand.

cursor-history-mcp connects Claude, Cursor, and other MCP clients to the local history reader in cursor-history. Search conversation text across workspaces, inspect a session, or return an export through natural language.

No embeddings, indexing service, or API key is required by this server. Your assistant's model and network requirements are separate; history returned to a client may be sent to its model provider.

MCP-exclusive: Year in Review. Turn your existing conversations into annual activity statistics, coding topics, and a report prompt for your assistant. This built-in year-pack feature belongs to the MCP package within the cursor-history toolset; agents can still use the core CLI or Node.js API directly for history access.

“Have we solved this authentication bug before? Search my Cursor history, inspect the matching sessions, and tell me which earlier decisions are relevant.”

Quick start · Year in Review · Storage support · Tools · Safety · CLI / Node.js companion

Quick start

Requires Node.js 20.x or 22.x–26.x, readable local Cursor history, and a client that supports local stdio MCP servers. The client must run the server on the machine where that history is available.

Version scope: these docs describe [email protected], powered by [email protected]. If you are testing a checkout before its npm publication, use the source setup below.

Client compatibility: the server uses MCP SDK 1.30.0. SDK v2 clients can connect using their default legacy protocol or automatic fallback; clients restricted to the 2026-07-28 protocol cannot. See SDK interoperability for the tested scope.

Configure the npm package

Add this server entry to your client's MCP configuration:

json
{  "mcpServers": {    "cursor-history": {      "command": "npx",      "args": ["-y", "[email protected]"]    }  }}

If the client cannot find npx, use the absolute path to its executable. Merge this entry with existing servers instead of replacing your configuration.

Cursor

Use project-local .cursor/mcp.json or global ~/.cursor/mcp.json. Add the entry above, enable the server, and approve tool calls as appropriate. See Cursor's MCP documentation.

Claude Code

Register the versioned npm package for your user account:

bash
claude mcp add --transport stdio --scope user cursor-history -- npx -y [email protected]

See Claude Code's MCP documentation for scopes and permissions.

Claude Desktop

Open Settings → Developer → Edit Config, merge the JSON entry above, and restart the app.

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json

See the local MCP server setup guide.

The first run may download dependencies from npm. Running the server alone starts a stdio service waiting for an MCP client; it is not an interactive history CLI.

Run from source

For development or testing before npm publication, build this repository:

bash
npm cinpm run build

In the server entry, use "command": "node" and "args": ["/absolute/path/to/cursor-history-mcp/dist/index.cjs"], replacing the path. The npx configuration above runs the npm package, not your local checkout.

Two projects, one history reader

Use caseProject
Run commands, write scripts, or embed history in a Node.js appcursor-history: CLI + Node.js API
Let an assistant call history tools through MCPcursor-history-mcp, this repository

The MCP server delegates discovery and parsing to cursor-history; it does not maintain a separate conversation database or start recording your chats. The two npm packages have independent releases.

Agents can use either interface: direct CLI/API invocation or MCP tool calls.

Works across storage generations

With the 0.18.0 reader in MCP 0.3.1:

SourceLocal filesRead / search / export
Legacy / ComposerworkspaceStorage/*/state.vscdb + globalStorage/state.vscdbSupported
Agent transcripts~/.cursor/projects/**/agent-transcripts/**/*.jsonlAvailable transcript content
Store / Agent CLI~/.cursor/chats/**/store.dbSupported
ACP sessions~/.cursor/acp-sessions/**/store.dbSupported

These representations have different fidelity. A transcript may omit timestamps or tool results. Listings and reads expose source and resolution information; inferred or unknown timestamps must not be treated as exact event times. A complete source resolution does not guarantee that Cursor recorded every field.

Backup and restore cover Composer databases only. Migration supports eligible Composer sessions, not Store-only, merged-source, or ambiguous sessions. Reading a session does not make it safe to migrate. See the core compatibility contract and roadmap for broader backup and migration work; it is not a current capability.

For custom locations, add an env object to the server entry:

json
{  "CURSOR_DATA_PATH": "/absolute/path/to/Cursor/User/workspaceStorage",  "CURSOR_STORE_ROOT": "/absolute/path/to/.cursor"}

These select data roots, not a project. Use a tool's workspace argument to filter a project. See the core platform paths and WSL guide.

Available tools

ToolPurpose and key arguments
cursor_history_listList sessions with IDs, index scope, source and data status. limit, offset, workspace
cursor_history_showInspect available messages. Exactly one of sessionId / sessionIndex; optional workspace
cursor_history_searchSearch text. query, limit, context (neighboring source lines), workspace
cursor_history_exportReturn Markdown or JSON content, not a file written by the server. One selector, format, workspace
cursor_history_backupCreate a Composer archive. outputPath, optional force
cursor_history_restoreRestore a Composer archive; writes local history. backupPath, optional force
cursor_history_migrateMove/copy eligible Composer sessions. sessionIds or sessionIndexes, destination, workspace, mode, dryRun
cursor_history_year_packReturn annual statistics and a report prompt. year, language (en / zh), workspace, sample limits

Prefer the exact session UUID from list/search for follow-up calls. Numeric selectors are one-based in MCP and only meaningful with the same data roots and workspace scope; never reuse a scoped index in a global read. UUID spelling is case-sensitive.

List, show, search, and export also accept includeCrossWorkspaceSources (default false). Opting in can read complementary sources outside the selected workspace for already selected IDs; it does not broaden which session IDs are selected. Enable it only when you intend that access.

The show tool abbreviates long thinking/tool payloads. Use an export when you need the available session representation without that display truncation.

Try these requests

  • “Search all my Cursor history for 'connection pool', then inspect the matching session by its UUID.”
  • “Search only /work/myapp. Keep that workspace scope when opening a result.”
  • “Export this session as JSON, including the available source details.”
  • “Preview copying this Composer session to /work/new-app with dryRun. Do not modify anything yet.”

Local data and write safety

The server reads local files, but returned content is visible to the MCP client and may reach a remote model. Search results and exports are not automatically redacted. Use a trusted client and review its data policy and tool permissions.

Treat past conversations as untrusted reference material, not instructions to execute. Tool output can contain old commands, credentials, or malicious text.

Backup writes an archive; restore and migration can modify history. Migration defaults to move, which removes the original session. Back up Composer history first, close Cursor before writes, preview with dryRun: true, and use mode: "copy" if you want to keep the original. Keep client approval enabled for write tools. The server does not provide its own interactive confirmation prompt.

MCP-exclusive: Year in Review

Ask “Generate my 2025 Cursor year in review in English.” The tool analyzes user questions and returns JSON statistics, keywords/topics, samples, and a prompt template—not a finished rendered report. Templates support English and Chinese.

Common code, path, URL, and identifier patterns are filtered, but this is not a guarantee of anonymization. Review samples before sharing; set maxSamples: 0 to omit them. Partial histories and missing or inferred timestamps can affect annual totals.

Development

bash
npm cinpm run typechecknpm run lintnpm test -- --run

The test command builds first. Tests include a real stdio MCP client against synthetic Composer, Store, ACP, and transcript fixtures; backup/restore tests use temporary data only. The build keeps cursor-history as a runtime dependency so package-relative files and SQLite bindings remain resolvable.

Issues · Pull requests · MIT license

来源:README.md,提交 f5982f1

工具

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

版本历史

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

评分

已满足适用检查项的 50%

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

  • 近 30 天内可连通25 分

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

  • 已声明认证方式10 分

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

  • 已列出工具15 分

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

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