by Vvkmnn
📜 An MCP server for conversation history search and retrieval in Claude Code
# Add to your Claude Code skills
git clone https://github.com/Vvkmnn/claude-historian-mcpGuides for using mcp servers skills like claude-historian-mcp.
Last scanned: 5/30/2026
{
"issues": [
{
"type": "npm-audit",
"message": "@actions/http-client: Vulnerability found",
"severity": "medium"
},
{
"type": "npm-audit",
"message": "@hono/node-server: @hono/node-server: Middleware bypass via repeated slashes in serveStatic",
"severity": "medium"
},
{
"type": "npm-audit",
"message": "brace-expansion: brace-expansion: Zero-step sequence causes process hang and memory exhaustion",
"severity": "medium"
},
{
"type": "npm-audit",
"message": "express-rate-limit: Vulnerability found",
"severity": "medium"
},
{
"type": "npm-audit",
"message": "fast-uri: fast-uri vulnerable to path traversal via percent-encoded dot segments",
"severity": "high"
},
{
"type": "npm-audit",
"message": "flatted: Prototype Pollution via parse() in NodeJS flatted",
"severity": "high"
},
{
"type": "npm-audit",
"message": "handlebars: Handlebars.js has JavaScript Injection via AST Type Confusion by tampering @partial-block",
"severity": "critical"
},
{
"type": "npm-audit",
"message": "hono: Hono missing validation of cookie name on write path in setCookie()",
"severity": "medium"
},
{
"type": "npm-audit",
"message": "ip-address: ip-address has XSS in Address6 HTML-emitting methods",
"severity": "medium"
},
{
"type": "npm-audit",
"message": "lodash: lodash vulnerable to Code Injection via `_.template` imports key names",
"severity": "high"
},
{
"type": "npm-audit",
"message": "lodash-es: lodash vulnerable to Code Injection via `_.template` imports key names",
"severity": "high"
},
{
"type": "npm-audit",
"message": "path-to-regexp: path-to-regexp vulnerable to Denial of Service via sequential optional groups",
"severity": "high"
},
{
"type": "npm-audit",
"message": "picomatch: Picomatch: Method Injection in POSIX Character Classes causes incorrect Glob Matching",
"severity": "high"
},
{
"type": "npm-audit",
"message": "qs: qs has a remotely triggerable DoS: qs.stringify crashes with TypeError on null/undefined entries in comma-format arrays when encodeValuesOnly is set",
"severity": "medium"
},
{
"type": "npm-audit",
"message": "undici: Undici has an unbounded decompression chain in HTTP responses on Node.js Fetch API via Content-Encoding leads to resource exhaustion",
"severity": "high"
},
{
"type": "npm-audit",
"message": "yaml: yaml is vulnerable to Stack Overflow via deeply nested YAML collections",
"severity": "medium"
}
],
"status": "FAILED",
"scannedAt": "2026-05-30T15:49:04.113Z",
"npmAuditRan": true,
"pipAuditRan": true
}claude-historian-mcp is an open-source mcp servers skill for AI coding assistants such as Claude Code, Codex CLI, and ChatGPT, built by Vvkmnn. 📜 An MCP server for conversation history search and retrieval in Claude Code. It has 181 GitHub stars.
claude-historian-mcp failed SkillsLLM's automated security scan, which flagged one or more high-severity issues. Review the Security Report section carefully before using it.
Clone the repository with "git clone https://github.com/Vvkmnn/claude-historian-mcp" and add it to your Claude Code skills directory (see the Installation section above).
claude-historian-mcp is primarily written in TypeScript. It is open-source under Vvkmnn on GitHub, so you can review or fork the full source.
Yes. SkillsLLM lists many other MCP Servers skills you can browse and compare side by side. Open the MCP Servers category from the badge at the top of this page, or use the Related Skills and comparison links further down to weigh claude-historian-mcp against similar tools.
No comments yet. Be the first to share your thoughts!
Top skills in this category by stars
Requires a passing catalog security scan. Resolve the flagged issues and resubmit to enable featuring.
An Model Context Protocol (MCP) server for searching your Claude Code conversation history. Find past solutions, track file changes, and learn from previous work.

Requirements:
From shell:
claude mcp add claude-historian-mcp -- npx claude-historian-mcp
From inside Claude (restart required):
Add this to our global mcp config: npx claude-historian-mcp
Install this mcp: https://github.com/Vvkmnn/claude-historian-mcp
From any manually configurable mcp.json: (Cursor, Windsurf, etc.)
{
"mcpServers": {
"claude-historian-mcp": {
"command": "npx",
"args": ["claude-historian-mcp"],
"env": {}
}
}
}
There is no npm install required -- no external dependencies or local databases, only search algorithms.
However, if npx resolves the wrong package, you can force resolution with:
npm install -g claude-historian-mcp
renamed: This project was renamed from
claude-historiantoclaude-historian-mcp. Existing users should update your install command and MCP config args toclaude-historian-mcp.
Optionally, install the skill to teach Claude when to proactively use historian:
npx skills add Vvkmnn/claude-historian-mcp --skill claude-historian --global
# Optional: add --yes to skip interactive prompt and install to all agents
This makes Claude automatically check your history before web searches, when encountering errors, or at session start. The MCP works without the skill, but the skill improves discoverability.
For automatic history search with hooks and commands, install from the claude-emporium marketplace:
/plugin marketplace add Vvkmnn/claude-emporium
/plugin install claude-historian@claude-emporium
The claude-historian plugin provides:
Hooks (targeted, zero overhead on success):
search scope="similar"search scope="plans"search scope="tools"search scope="errors"Command: /historian-search <query>
Requires the MCP server installed first. See the emporium for other Claude Code plugins and MCPs.
MCP server that gives Claude access to your conversation history. Two tools, 11 scopes, zero dependencies.
Runs locally (with cool shades [⌐■_■] 📜):
searchSearch across conversations, files, errors, plans, config, tasks, sessions, tools, similar queries, and memories.
search query="docker auth error" # default scope: all
search query="fix build" scope="conversations" # past solutions
search query="ENOENT" scope="errors" # error patterns + fixes
search query="auth" scope="plans" # implementation plans
search query="hooks" scope="config" # rules, skills, CLAUDE.md
search query="git push" scope="similar" # related questions asked before
search query="Edit" scope="tools" # tool usage workflows
search filepath="package.json" scope="files" # file change history
search scope="sessions" # recent sessions
search scope="memories" # project memory files
search query="deploy" scope="all" detail_level="detailed" # full context
search query="auth" timeframe="7d" project="my-app" # filtered
📜 ── search "docker auth" ── 5 results · 405 tokens
{
"results": [{
"type": "assistant",
"ts": "2h ago",
"content": "Fixed Docker auth by updating registry credentials...",
"project": "my-app",
"score": 100,
"ctx": { "filesReferenced": ["docker-compose.yml"], "toolsUsed": ["Edit", "Bash"] }
}]
}
📜 ── files "package.json" ── 92 operations · 1594 tokens
{
"filepath": "package.json",
"operations": [{
"type": "edit",
"ts": "1d ago",
"changes": ["Changed: \"version\": \"1.0.3\" → \"version\": \"1.0.4\""],
"content": "Updated version for release"
}]
}
📜 ── tools "Bash" ── 5 patterns · 427 tokens
{
"tool": "Bash",
"patterns": [{
"name": "Bash",
"uses": 10,
"workflow": "$ npm run build 2>&1",
"practice": "Used with: ts, js, json, md files"
}]
}
inspectGet an intelligent summary of any session by ID (full UUID or short prefix).
inspect session_id="latest" # most recent session
inspect session_id="d537af65" # short prefix works
inspect session_id="d537af65" focus="files" # only file changes
inspect session_id="d537af65" focus="tools" # only tool usage
inspect session_id="d537af65" focus="solutions" # only solutions
📜 ── inspect my-app (68d5323b)
{
"session": {
"id": "68d5323b",
"ts": "2h ago",
"duration": 45,
"messages": 128,
"project": "my-app",
"tools": ["Edit", "Bash", "Read"],
"files": ["src/auth.ts", "package.json"],
"accomplishments": ["fixed auth bug", "added unit tests"],
"decisions": ["chose JWT over sessions"]
}
}
How claude-historian-mcp works:
"docker auth" query
|
├─> Parallel Processing (search.ts:174): 15 projects × 10 files concurrently
| • Promise.allSettled for 6x speed improvement
| • Early termination when sufficient results found
| • Enhanced file coverage with comprehensive patterns
|
├─> Enhanced Classification (search.ts:642): implementation → boost tool workflows
| • Workflow detection for tool sequences (Edit → Read → Bash)
| • Semantic boundary preservation (never truncate mid-function)
| • Claude-optimized formatting with rich metadata
|
├─> Smart Ranking (utils.ts:267):
| ├─> Core Terms (scoring-constants.ts): "docker" +10, "auth" +10
| ├─> Supporting Terms: context words +3 each
| ├─> Tool Usage: Edit/Bash references +5
| ├─> File References: paths/extensions +3
| └─> Project Match: current project +5
|
├─> Results sorted by composite score:
| • "Edit workflow (7x successful)" (2h ago) ***** [score: 45]
| • "Docker auth with context paths" (yesterday) **** [score: 38]
| • "Container debugging patterns" (last week) *** [score: 22]
|
└─> Return Claude Code optimized results
Core optimizations:
Promise.allSettled for 6x speed improvement across projects and files