Context7
Up-to-date docs for AI agents
作者による説明(英語の原文)
Local code-intelligence server: hybrid code search, call graph and project memory.
この3つを1つのスコアにまとめることはしません。意見、測定、人気はそれぞれ別のものだからです。
このサーバーのやさしい解説はまだ書いていません。以下はレジストリから読み取った事実です。
使っている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)がレジストリに届いたのは今日です。
Claude Desktop、Claude Code、Cursor、VS CodeなどのMCP対応アプリで使えます。パソコンにPython (uv)も必要です。
同じカテゴリには:Context7, Codebase Memory, Exa
同じカテゴリで、ほかの作者が作ったサーバー。スターの多い順。
カードの見方:★ GitHubスターi3つの柱:レビュー · チェック · 利用状況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
冒頭だけを表示しています。続きはリポジトリで読めます