Context7
Up-to-date docs for AI agents
作者提供的说明(英文原文)
Local code-intelligence server: hybrid code search, call graph and project memory.
这三项永远不会合并成一个分数:意见、测量和人气是不同的东西。
我们还没有为它写通俗的介绍。下面是我们从注册中心读取到的事实。
选择你使用的 AI 应用,然后复制设置。
NEXUS_STORAGE_DIR, NEXUS_OFFLINE你需要
你用的是哪个应用?
在上方选择你的应用。我们会记住它,下次按钮会显示“安装到 …”。
打开 Claude Desktop → Settings → Developer → Edit Config,把下面的内容粘贴到 claude_desktop_config.json
{
"mcpServers": {
"nexus": {
"command": "uvx",
"args": [
"nexus-mcp-ci"
],
"env": {
"NEXUS_STORAGE_DIR": "your-value",
"NEXUS_OFFLINE": "your-value"
}
}
}
}在终端中运行这条命令
claude mcp add nexus --env NEXUS_STORAGE_DIR=your-value --env NEXUS_OFFLINE=your-value -- uvx nexus-mcp-ci运行前请先填写空着的值。
粘贴到项目中的 .cursor/mcp.json,或 ~/.cursor/mcp.json
{
"mcpServers": {
"nexus": {
"command": "uvx",
"args": [
"nexus-mcp-ci"
],
"env": {
"NEXUS_STORAGE_DIR": "your-value",
"NEXUS_OFFLINE": "your-value"
}
}
}
}浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
粘贴到项目中的 .vscode/mcp.json
{
"servers": {
"nexus": {
"type": "stdio",
"command": "uvx",
"args": [
"nexus-mcp-ci"
],
"env": {
"NEXUS_STORAGE_DIR": "your-value",
"NEXUS_OFFLINE": "your-value"
}
}
}
}浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
这个服务器在你的电脑上运行,而 ChatGPT 只能连接互联网上的服务器。请选择其他应用。
你的选择通过 Cookie 保存在这台设备上,无需账户。
NEXUS_STORAGE_DIR envNEXUS_OFFLINE env这些设置是根据作者在注册中心的条目生成的。如果 README 的写法不同,请以 README 为准。
它在你的电脑上运行;安装后,工具列表会显示在你的 AI 应用中。
我们检查的是任何人都能看到的信息;我们没有阅读代码。不适用的检查项不计入总数。 · 检查于 2026年11月7日
注册名称已通过 GitHub 账户 jaggernaut007 验证,该账户拥有此仓库
我们还没有从 GitHub 读取这个仓库
我们还没有从 GitHub 读取这个仓库
它在你的电脑上运行,没有互联网端点
在你的电脑上运行,改用本地设置
它在你的电脑上运行;我们只能读取互联网端点的工具列表
与注册中心里这个分类中所有活跃的服务器比较。只有当发布者拥有该仓库时,星标数才计入。
它在 1 项适用的基础检查中通过了 1 项。我们没有阅读代码。在添加密钥或令牌之前,请先看看这个服务器要求哪些权限,并使用只具备所需权限的密钥。
注册中心没有列出必需的密钥,不过有些服务器会在首次使用时要求你登录。
它在你的电脑上运行。你的 AI 应用会在需要时启动它,数据不会经过作者的服务器(除非它自己调用在线服务)。
GitHub 仓库最后更新于–,最新版本(2.3.0)于昨天进入注册中心。
支持 MCP 的应用,例如 Claude Desktop、Claude Code、Cursor 和 VS Code。你的电脑上还需要有 Python (uv)。
同一分类中有:Context7, Codebase Memory, Exa
同一分类中其他作者的服务器,按星标数排序。
如何看卡片:★ GitHub 星标i三大支柱:评价 · 检查 · 使用情况i更新 = 最新版本发布到注册中心的时间i
Up-to-date docs for AI agents
Codebase knowledge graph for AI agents — 162 languages, sub-ms queries, 99% fewer tokens.
Connect AI agents to Exa for web search, content fetching, and multi-step research.
按原文从作者的仓库复制。PopNx MCP 没有审查或背书其内容。HTML、图片和脚本已被移除。链接会离开本站。
Hybrid search + code graph + semantic memory in a single local MCP server. About 90 MB idle and 460 MB with the embedding model loaded ([measurements](https://github.com/jaggernaut007/Nexus-MCP/blob/main/docs/MEMORY.md)).
Nexus-MCP is a local code-intelligence MCP server for Claude Code, Codex, Cursor and any Model Context Protocol client. It gives AI agents precise, token-efficient answers about your codebase without cloud dependencies: no API keys, no data egress, no subscriptions.
Not sure yet? Measure it on your own code first. It is free, runs offline, calls no LLM and takes a few minutes:
uvx nexus-mcp-ci eval # the current folder
uvx nexus-mcp-ci eval --example # or the Nexus-MCP source, if you have no project at hand
You get a verdict ("Strong fit", "Likely fit" or "Weak fit") and the tokens an agent needs to reach the right file, with and without Nexus-MCP. Nothing leaves your machine. See Evaluate on your project.
Ready?
pip install nexus-mcp-ci
claude mcp add nexus-mcp -- nexus-mcp-ci
| Project | Cost: Grep and Read → Nexus-MCP | Turns | Correct answers |
|---|---|---|---|
| Private Python project (460 files) | $0.571 → $0.446 (-22%) | 55 → 35 | 36 → 35 of 36 |
| Django (3,000 files) | $0.894 → $0.863 (-3%) | 93 → 71 | 34 → 36 of 36 |
Live runs: Claude Code, Claude Sonnet, headless (claude -p), 12 questions per project, 3 runs each, version 2.1.0 (2026-10-28). The same code can vary by about 20% in cost with 3 runs per question (measured 2026-10-28). Search hit@1 on the four retrieval suites: jobscout 0.81, nexus_mcp 0.80, shop_repo 0.50, flask 0.64.
nexus-mcp-ci eval (the free offline check, no LLM) on 3 projects:
| Project | Verdict | Median tokens to the right file | Right file first |
|---|---|---|---|
| Chromium base/ (3,638 files) | Strong fit | 17,998 → 950 | 40% → 70% |
| pallets/click (91 files) | Strong fit | 24,774 → 1,301 | 27% → 97% |
| Nexus-MCP source (59 files) | Likely fit | 5,385 → 1,234 | 70% → 93% |
Nexus-MCP and GitNexus on Chromium base/ (C++, 4,243 files): 8 tasks, 3 runs each, 2026-11-04.
| Condition | Version | Tokens (median) | Cost per task (median) | Correct |
|---|---|---|---|---|
| Grep and Read | built-in tools | 62,450 | $0.057 | 24 of 24 |
| Nexus-MCP | 2.2.0 with the C++ parser fixes of 2.2.1 | 82,900 | $0.062 | 24 of 24 |
| GitNexus | 1.6.12 | 164,192 | $0.085 | 24 of 24 |
Nexus-MCP used fewer tokens than GitNexus on 8 of 8 tasks and cost less on 6; GitNexus cost $0.002 less on one task, and one task was a tie. Grep and Read cost less than both on this C++ code. Nexus-MCP cost less than Grep and Read on 3 of 8 tasks (the two needle tasks and WeakPtr). Each condition had the same agent, model, prompt and built-in tools, and each tool had its MCP server and its always-loaded instructions (method).
All numbers: benchmarks page · JSON · CSV.
An agent that explores a codebase with Grep and Read pays for every call: each call is one more turn, and each turn reads the whole conversation again. Nexus-MCP answers a question about code in fewer calls. search returns the whole code of its top results, find_symbol returns the code of several names in one call, and graph returns every text reference beside the call edges.
The north star of the project is lower token use with the same accuracy. It is measured, not estimated: see Token efficiency and benchmarks/.
Decide with your own numbers. The quick check is free, offline and calls no LLM:
uvx nexus-mcp-ci eval # the current folder
uvx nexus-mcp-ci eval path/to/project # another folder uvx nexus-mcp-ci eval https://github.com/pallets/flask # a public repo (shallow clone) uvx nexus-mcp-ci eval --example # the Nexus-MCP source, offline
It asks about 30 questions made from your own code and compares Grep and Read with one Nexus-MCP search. The right answer is the file that defines the symbol, from the parser, never from the Nexus-MCP ranking. On this repo's source (59 files) it gave "Likely fit": 1,234 median tokens to reach the right file against 5,385, and the right file first in 93% of questions against 70%. On Chromium's base/ (3,638 files of C++, Java and Python) it gave "Strong fit": 950 median tokens against 17,998 (95% fewer), and the right file first in 70% of questions against 40%. On pallets/click (91 files, from its URL) it gave "Strong fit": 1,301 median tokens against 24,774 (95% fewer), and the right file first in 97% of questions against 27%. On a tiny project Grep and Read win, and the report says so.
Want the real agent cost? The agent tier runs your own Claude Code or Codex login on tasks from your code, with and without Nexus-MCP. It shows the cost first and asks:
nexus-mcp-ci eval --agent claude # Claude Sonnet
nexus-mcp-ci eval --preset efficient --agent claude:haiku,claude:sonnet
Results are saved in ~/.nexus-mcp/evals/ (eval list, eval show ). eval share posts the numbers (no code, no paths) to the community table, only after you say yes. Full guide: docs/EVALUATE.md. In Claude Code, the plugin adds /nexus-mcp:evaluate.
Your code stays on your machine. The server makes no network calls and has no telemetry.
NEXUS_OFFLINE=1 after that). eval also runs a git clone.eval --agent (prompts and code go to Anthropic or OpenAI through your own CLI) or eval share (numbers only). Both ask first. /.nexus/ (it holds code: add it to .gitignore), the model in ~/.cache/huggingface/, eval results in ~/.nexus-mcp/evals/.nexus-mcp-ci data where # every location and its size
nexus-mcp-ci data clear --all # dry run; add --yes to delete
Every location, the shell commands that do the same, and the uninstall steps: docs/PRIVACY.md.
You need uv. Nothing else.
Ask your agent. Open your agent (Claude Code, Codex, Cursor, Gemini CLI) in your project and say:
Install Nexus-MCP from https://github.com/jaggernaut007/Nexus-MCP
The agent reads llms-install.md and runs one command. You can run the same command yourself:
uvx nexus-mcp-ci setup
setup finds the MCP clients on your machine, shows each change, and asks before it writes anything. It adds the server and a short skill that tells the agent when to use each tool. Add --dry-run to see the changes only, --client codex to pick one client, and --uninstall to remove what it wrote. Then reload your client (or start a new session) and ask something like "where do we retry failed payments?". The agent calls search, and index once, the first time in a project.
The server sends its own usage instructions when it connects, so the agent knows which tool answers which question even without the skill.
Other ways in, each with the same server:
nexus-mcp.mcpb from the latest release and open itgemini extensions install https://github.com/jaggernaut007/Nexus-MCPdocker run -i --rm -v "$PWD:/workspace" -v nexus-data:/data ghcr.io/jaggernaut007/nexus-mcpuses: jaggernaut007/Nexus-MCP@v2All channels, and what each needs: docs/DISTRIBUTION.md.
The plugin registers the server and the same routing skill. It runs the server through uvx, so it needs only uv, no pip install:
/plugin marketplace add jaggernaut007/Nexus-MCP
/plugin install nexus-mcp@nexus-mcp
Use setup or the plugin for Claude Code, not both, or the server is registered twice. Tool names differ by route: mcp__nexus-mcp__search after setup, mcp__plugin_nexus-mcp_nexus-mcp__search through the plugin. The rest of this README writes bare names (search) and you do not need the prefix in prompts.
If you want the rules in your own project file, a short block is enough:
## Code Navigation
The nexus-mcp server is connected. For questions about how this codebase works:
index only if a tool says the project is not indexed.search to find code, find_symbol for symbols, map for structure.graph with transitive=true before you change a shared function. The call graph is static, so also use search for dynamic call sites.
The full routing guide is in docs/AGENT_ROUTING.md.
Source files
│ ├─ Step 1: Discover ──────── walk tree, filter by ext/size/.gitignore │ ├─ Step 2: Parse symbols ─── tree-sitter (parallel ThreadPool) │ extracts: functions, classes, methods │ captures: name, signature, docstring, line_start/end, language │ ├─ Step 3: Parse graph ────── ast-grep (sequential for consistency) │ extracts: containment edges, import edges, callee names of each function │ (indexing/call_resolver.py makes CALLS edges after the
只显示了开头部分;其余内容请在仓库中阅读