Neuromcp
概览
作者提供的说明(英文原文)
Semantic memory for AI agents with hybrid search, knowledge graph, and consolidation
PopNx MCP 的三大支柱
这三项永远不会合并成一个分数:意见、测量和人气是不同的东西。
- 用户评价i暂无评价评价功能将在后续阶段与账户功能一起开放
- 我们的基础检查i1 项中通过 1 项依据公开信息检查;尚未扫描代码
- 使用情况i非常新↓ 247/周 · ★ –
它能帮你做什么
我们还没有为它写通俗的介绍。下面是我们从注册中心读取到的事实。
- 连接方式: 在你的电脑上运行
- 传输方式: stdio
- 分类: 搜索与 AI 记忆
安装
选择你使用的 AI 应用,然后复制设置。
安装之前
- 基础检查:1 项中通过 1 项
- 在你的电脑上运行,拥有你的用户账户的权限(文件、网络、应用)。
- 注册中心没有列出需要填写的密钥。
你需要
- npm已安装 Node.js(用于 npx 命令)
你用的是哪个应用?
在上方选择你的应用。我们会记住它,下次按钮会显示“安装到 …”。
打开 Claude Desktop → Settings → Developer → Edit Config,把下面的内容粘贴到 claude_desktop_config.json
{
"mcpServers": {
"neuromcp": {
"command": "npx",
"args": [
"-y",
"neuromcp"
]
}
}
}在终端中运行这条命令
claude mcp add neuromcp -- npx -y neuromcp或者自己复制设置
粘贴到项目中的 .cursor/mcp.json,或 ~/.cursor/mcp.json
{
"mcpServers": {
"neuromcp": {
"command": "npx",
"args": [
"-y",
"neuromcp"
]
}
}
}浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
或者自己复制设置
粘贴到项目中的 .vscode/mcp.json
{
"servers": {
"neuromcp": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"neuromcp"
]
}
}
}浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
这个服务器在你的电脑上运行,而 ChatGPT 只能连接互联网上的服务器。请选择其他应用。
你的选择通过 Cookie 保存在这台设备上,无需账户。
这些设置是根据作者在注册中心的条目生成的。如果 README 的写法不同,请以 README 为准。
它能做什么
它在你的电脑上运行;安装后,工具列表会显示在你的 AI 应用中。
基础检查i
我们检查的是任何人都能看到的信息;我们没有阅读代码。不适用的检查项不计入总数。 · 检查于 2026年11月9日
- ✓ 通过
作者与仓库一致
注册名称已通过 GitHub 账户 AdelElo13 验证,该账户拥有此仓库
- … 尚未检查
仍在维护
我们还没有从 GitHub 读取这个仓库
- … 尚未检查
有许可证
我们还没有从 GitHub 读取这个仓库
- – 不适用
端点有响应
它在你的电脑上运行,没有互联网端点
- – 不适用
使用 OAuth 登录
在你的电脑上运行,改用本地设置
- … 尚未检查
工具描述中没有隐藏指令
它在你的电脑上运行;我们只能读取互联网端点的工具列表
与“搜索与 AI 记忆”中的其他服务器比较i
- 星标数多于此分类中其他 5730 个服务器的 0%
- 发布到注册中心的时间比此分类中其他 5730 个服务器的 61% 更新
- 基础检查结果等于或优于此分类中其他 5730 个服务器的 100%
与注册中心里这个分类中所有活跃的服务器比较。只有当发布者拥有该仓库时,星标数才计入。
常见问题
Neuromcp 安全吗?
它在 1 项适用的基础检查中通过了 1 项。我们没有阅读代码。在添加密钥或令牌之前,请先看看这个服务器要求哪些权限,并使用只具备所需权限的密钥。
它需要哪些密钥或代码?
注册中心没有列出必需的密钥,不过有些服务器会在首次使用时要求你登录。
它在我的电脑上运行还是在云端?
它在你的电脑上运行。你的 AI 应用会在需要时启动它,数据不会经过作者的服务器(除非它自己调用在线服务)。
它还在维护吗?
GitHub 仓库最后更新于–,最新版本(0.30.2)于24天前进入注册中心。
哪些应用可以使用它?
支持 MCP 的应用,例如 Claude Desktop、Claude Code、Cursor 和 VS Code。你的电脑上还需要有 Node.js。
有什么可以替代它?
同一分类中有:Context7, Codebase Memory, Exa
替代选择
同一分类中其他作者的服务器,按星标数排序。
如何看卡片:↓ 每周下载量i★ GitHub 星标i三大支柱:评价 · 检查 · 使用情况i更新 = 最新版本发布到注册中心的时间i
Codebase Memory
Codebase knowledge graph for AI agents — 162 languages, sub-ms queries, 99% fewer tokens.
Exa
Connect AI agents to Exa for web search, content fetching, and multi-step research.
作者的 README
打开 README
按原文从作者的仓库复制。PopNx MCP 没有审查或背书其内容。HTML、图片和脚本已被移除。链接会离开本站。
neuromcp — Sovereign Memory for AI agents
Any model. Your memory. Stays local.
neuromcp is the first Sovereign Memory layer for AI: an open-source MCP server that gives Claude, GPT, Gemini, and Ollama persistent, searchable memory — stored entirely on your machine. No API keys. No cloud sync. No subscription required to remember who you are.
Sovereign Memory = data that you own outright, lives on hardware you control, and is portable across every model you use. Cloud memory products own your data; Sovereign Memory means *you* do.
npx neuromcp-init # one command: detects your MCP clients, writes configs, sets up the wiki
Or run the bare server without any setup: npx neuromcp. Something not working? npx neuromcp-doctor diagnoses the daemon, Ollama, embeddings and the database in one run.
*The built-in memory browser: the most-connected entities in a namespace and the relations between them, as a force-directed graph you can drag, zoom and click — served from localhost, never from a cloud. See Memory browser & Obsidian.*
Why neuromcp
The LLM is a commodity. Your memory is the moat. GPT-5, Claude 4, Gemini — they all converge. The model you use next year will differ. The memory of every conversation, decision, and preference you build is yours. neuromcp keeps that layer on your machine and makes it portable across any MCP-compatible client.
Local-first is a design choice, not a limitation. No telemetry. No data leaves your laptop. No vendor has a copy of your conversations. Audit every line of code that touches your memory. SQLite + local embeddings; everything fits on one disk.
One install. Every client. Claude Desktop, Cursor, Windsurf, Codex CLI, Continue, LibreChat, Open WebUI — neuromcp speaks MCP, so it works wherever MCP is supported. Switch models tomorrow; your memory follows.
Real recall, not keyword matching. Hybrid retrieval combines vector search (nomic-embed-text, 768-dim), BM25 full-text, graph links, and a learned usefulness prior. At 500 distractors on LongMemEval, R@5 holds at 93.3%. Your context window gets the right memory, not just the most recent.
LongMemEval-S accuracy
| Run | Score | Sample | Config |
|---|---|---|---|
| v7 (current) | 96.08% (98/102) | n=102 | Opus generator + Opus judge, single-model |
| v6 | 95.10% (97/102) | n=102 | Same as v7, prior hint set |
Repro: OMB_ANSWER_LLM=claude OMB_ANSWER_MODEL=opus OMB_JUDGE_LLM=claude OMB_JUDGE_MODEL=opus uv run omb run --dataset longmemeval -s s -m neuromcp -c "single-session-user,single-session-assistant,multi-session,temporal-reasoning,knowledge-update,single-session-preference" --query-limit 17
Sample size honesty. n=102 (17 per category × 6 categories). Wilson 95% CI for 98/102 ≈ 90.5–98.7%. Full 500q run with the same config is the next milestone before any "top-tier" claim.
Benchmarks (v0.18.0)
Oracle split (clean — easy mode)
| Mode | R@5 | R@10 | Hit Rate |
|---|---|---|---|
| Extracted (hybrid) | 100% | 100% | 100% |
Oracle-split LongMemEval isolates the correct memory in a small corpus. Every local MCP memory system claims ~99% here. It measures "does the ranker work on clean inputs" — nothing more.
Distractor split (v0.18.0, honest)
Same 30 questions + 1000 random distractor memories drawn from other questions' haystacks. The correct memory now competes against real noise.
| Embedder | Distractors | N | R@5 | R@10 | MRR |
|---|---|---|---|---|---|
Ollama nomic-embed-text | 0 (oracle) | 30 | 100% | 100% | 100% |
Ollama nomic-embed-text | 200 | 5 | 100% | 100% | 100% |
Ollama nomic-embed-text | 500 | 30 | 93.3% | 93.3% | 80.3% |
Ollama nomic-embed-text | 1000 | 5 | 100% | 100% | 74% |
Reproduce: npx tsx eval/longmemeval-distractor-runner.ts --limit 5 --distractors 1000
Sample sizes. The 500-distractor row is n=30 (Wilson 95% CI for
28/30 ≈ 78-99% R@5). The 1000-distractor row is n=5 — preliminary,
Wilson 95% CI [57%, 100%]. The 1000-distractor n=30 run takes ~36 min
on a single Ollama instance; cached-distractor batching is v0.19.0
work. Treat 500-distractor numbers as defensible, 1000-distractor as
directionally positive but underpowered.
Head-to-head comparison is explicit v0.19.0 work. Hindsight (local
OSS MCP, ~94.6% LongMemEval claimed) and Mem0/Zep publish their own
numbers on their own harnesses. Until we run all of them against the
same corpus + embedder, calling any local MCP server "state of the art"
is marketing, not measurement. neuromcp publishes its numbers with
sample-size caveats so you can judge direction; don't read absolute
superiority into them yet.
Hybrid ranker (BM25 + vector + attention + graph + usefulness prior) keeps R@5 = 100% at 1000:1 distractor:target ratio on the observed sample. MRR drops to 74% because the correct memory is sometimes not rank-1 but always rank ≤ 5 in what we saw. Earlier v0.18.0 numbers (R@5 23%) were from a test FakeEmbedder — fixed in v0.18.1.
What this benchmark does NOT prove: end-to-end answer correctness, long-horizon multi-session reasoning, or superiority over commercial cloud systems (Mem0, Zep) on their own benchmarks. Those comparisons need their numbers on the same distractor split, which hasn't been published.
Why
AI agents forget everything between sessions. Existing solutions either store flat key-value pairs (useless for real knowledge) or require cloud infrastructure and API keys.
neuromcp gives you two layers of memory:
- MCP Server — hybrid search (vector + full-text + graph), verbatim recall, memory governance, automatic consolidation, all in a single SQLite file
- Wiki Knowledge Base — compiled Markdown knowledge that survives crashes, compounds over sessions, and gives your agent project-aware context at every startup
Inspired by Karpathy's LLM Wiki, Mastra's Observational Memory, and Zep's temporal knowledge graphs — but simpler than all of them. No vector DB, no embeddings pipeline, no cloud. Just Markdown files + Git + hooks.
Architecture
~/.neuromcp/
├── memory.db ← SQLite: hybrid search, MCP tools ├── wiki/ ← Compiled knowledge (git-tracked) │ ├── index.md ← Routekaart — LLM reads this FIRST │ ├── schema.md ← Operating rules for the LLM │ ├── log.md ← Append-only changelog │ ├── people/ ← User profiles, preferences │ ├── projects/ ← Project knowledge (stack, auth, URLs) │ ├── systems/ ← Infrastructure (tools, MCP servers) │ ├── patterns/ ← Reusable patterns (error fixes, routing) │ ├── decisions/ ← Architecture decisions with context │ └── skills/ ← Repeatable procedures └── raw/sessions/ ← Raw session logs (auto-generated)
How the wiki works
| When | What happens |
|---|---|
| Session start | Hook injects index.md + user profile + auto-detected project page (~1300 tokens) |
| During session | LLM updates wiki pages when learning something persistent |
| Every 8 tool calls | Hook reminds LLM to update the wiki |
| Session end | Hook writes raw session log + git auto-commits all wiki changes |
| Crash | Checkpoint every 5 tool calls to file. Git history for rollback. |
Self-healing consolidation pipeline (v0.15.0+)
Every ~4h the launchd agent runs run-consolidation.sh, which orchestrates four steps end-to-end:
- `consolidate-sessions.py` — batches raw sessions per project, asks Claude for a factual summary, and fact-checks it against the raw sources. When the auditor flags specific unsupported claims the consolidator now auto-strips those lines and re-audits once — so one speculative sentence no longer kills a whole batch.
- `rescue-rejected.py` — any batch that still fails is parsed, the unsupported claims are removed, and the cleaned summary is appended to its wiki page. Pure text surgery, no LLM calls.
- `entity-linker.py` — cross-links every page: a bare-word mention of another registered entity (people/, projects/, systems/) is added to the page's
related:frontmatter. Makes the wiki act like a graph without a separate graph database. - `rebuild-index.py` — regenerates
index.mdand per-category-index.mdfiles. Categories over 10 pages are auto-split so the session-start router stays compact as the wiki scales.
The pipeline is idempotent — safe to re-run at any time.
What the LLM knows at session start
Schema (operating rules) → How to maintain the wiki
Index (knowledge map) → What knowledge exists User profile → Who you are, how you work Project page → Current project details (auto-detected from cwd) Last session → What happened last time
Quick Start
One command (recommended)
npx neuromcp-init
Detects your installed MCP clients (Claude Desktop, Claude Code, Cursor, Windsurf), writes the neuromcp entry into each config (with a backup of the original), initializes the wiki + hooks, and checks whether Ollama is available. --dry-run previews everything without writing.
For GUI clients (Claude Desktop, Codex Desktop) install permanently first: npm install -g neuromcp && neuromcp-init. Only a permanent install lets init write the absolute node + script paths those clients need — from the bare-npx cache (garbage-collected) it deliberately falls back to a PATH-dependent npx entry, which GUI clients usually cannot resolve.
Manual steps (what init does under the hood)
1. Start the MCP server
npx neuromcp
2. Initialize the wiki + hooks (required for closed-loop attribution)
npx neuromcp-init-wiki
This creates the wiki structure, installs hooks (Claude Code) and rules (other editors), and configures everything automatically. Without this step, npx neuromcp still runs as a plain MCP server with 46 tools, but the critic hook that closes the attribution loop is not installed — retrieval works but usefulness scores never accumulate. Safe to run multiple times — won't overwrite existing config.
Editor Compatibility
neuromcp works with any MCP-compatible editor. Two tiers of integration:
| Feature | Claude Code | Cursor / Windsurf / Cline / Copilot / JetBrains / Zed |
|---|---|---|
| MCP tools (46) | Full | Full |
| Context at session start | Hooks (automatic) | Rules (LLM-driven, best-effort) |
| Persist at session end | Hooks (automatic) | Rules (LLM-driven, best-effort) |
| Wiki reminders | Every 8 tool calls | No |
| Crash-resilient checkpoints | Yes | No |
Claude Code gets the full experience via native hooks — context injection and persistence happen automatically, even if the LLM forgets.
Other editors get rules files that instruct the LLM to call neuromcp tools at session start/end. This depends on LLM compliance — it works well in practice but is not guaranteed like hooks.
# Auto只显示了开头部分;其余内容请在仓库中阅读