Предоставляет локальный инструмент для анализа кода, включая навигацию по символам, иерархию вызовов и лексический поиск для AI-агентов разработки.
Также известен как phuongddx/codeintel, codeintel-navigation-mcp
- Звёзды
- 4
- Инструменты
- —
- Загрузки, 30 дней
- 4
- Последняя версия
- 0.4.0
- Последний коммит
- 19 окт. 2026 г.
- Лицензия
- MIT
Что такое jarvis MCP?
jarvis — это MCP server. Предоставляет локальный инструмент для анализа кода, включая навигацию по символам, иерархию вызовов и лексический поиск для AI-агентов разработки.
Сводка сгенерирована из README проекта
О jarvis MCP server
codeintel предоставляет локальный уровень интеллектуального анализа, разработанный для того, чтобы помогать AI-агентам навигацию по большим кодовым базам, не тратя контекстное окно на зашумленные результаты поиска. Вместо того чтобы полагаться на стандартные команды grep, которые возвращают нерелевантные комментарии или тестовые файлы, этот MCP server использует предварительно вычисленные индексы для обеспечения точной навигации по символам и лексического поиска. Он создан для разработчиков, использующих MCP-клиенты, такие как Claude Code или Cursor, на macOS и Linux.
Система работает следующим образом: перед регистрацией MCP server запускается процесс локального индексирования через автономный бинарный файл. После индексации сервер предоставляет десять специализированных инструментов, включая findReferences, goToDefinition, callHierarchy и searchCode. Такая архитектура гарантирует, что ваш исходный код и индексы полностью остаются на вашем устройстве. В то время как дистрибутив Homebrew ориентирован на лексический поиск и поиск по символам, пользователи могут собрать проект из исходного кода, чтобы активировать возможности семантического поиска с использованием моделей эмбеддингов.
Что вы можете с ним делать
- 1Навигация по структурам кодаПопросите агента проследить путь вызовов функций или найти определение конкретного символа.
- 2Выполнение точного лексического поискаИспользуйте регулярные выражения или текстовые шаблоны, чтобы найти конкретные фрагменты кода без лишнего шума из несвязанных файлов.
Взято из README проекта. Каждый вариант использования проверен на соответствие цитате из него.
Как установить jarvis MCP
Форматы проверены 10 ноя 2026Добавить в CursorДобавить в GooseУстановка jarvis MCP в Claude Code
$ claude mcp add codeintel -- uvx codeintel-navigation-mcpУстановка jarvis MCP в Cursor
~/.cursor/mcp.json
{
"mcpServers": {
"codeintel": {
"command": "uvx",
"args": [
"codeintel-navigation-mcp"
]
}
}
}Установка jarvis MCP в VS Code
.vscode/mcp.json
{
"servers": {
"codeintel": {
"type": "stdio",
"command": "uvx",
"args": [
"codeintel-navigation-mcp"
]
}
}
}Установка jarvis MCP в VS Code CLI
$ code --add-mcp '{"name":"codeintel","type":"stdio","command":"uvx","args":["codeintel-navigation-mcp"]}'Установка jarvis MCP в Claude Desktop
claude_desktop_config.json
{
"mcpServers": {
"codeintel": {
"command": "uvx",
"args": [
"codeintel-navigation-mcp"
]
}
}
}Установка jarvis MCP в Codex
$ codex mcp add codeintel -- uvx codeintel-navigation-mcpУстановка jarvis MCP в Codex config.toml
~/.codex/config.toml
[mcp_servers.codeintel] command = "uvx" args = ["codeintel-navigation-mcp"]
Установка jarvis MCP в Gemini CLI
$ gemini mcp add -s user codeintel uvx -- codeintel-navigation-mcpУстановка jarvis MCP в Gemini settings.json
~/.gemini/settings.json
{
"mcpServers": {
"codeintel": {
"command": "uvx",
"args": [
"codeintel-navigation-mcp"
]
}
}
}Автоматические проверки
Запущено 14 нояб. 2026 г.Полный отчёт →Прошло наши автоматизированные проверки. Это не аудит безопасности: изучите код и предоставьте серверу минимально необходимый доступ. Как работают проверки
- Связанный и доступный исходный репозиторийphuongddx/codeintel is public and reachablegithub.com/phuongddx/codeintel ↗Пройдено
- Пакет указывает этот репозиторий как источникНе проверялось
- Происхождение сборки (аттестация Sigstore)Не проверялось
- Open source лицензия (OSI)MITspdx.org/licenses/MIT.html ↗Пройдено
- Коммит или релиз за последний годLast commit or release 2026-10-19github.com/phuongddx/codeintel ↗Пройдено
- OpenSSF ScorecardНе проверялось
- Имя пакета не похоже на популярный пакетNo popular package one edit away from codeintel-navigation-mcpПройдено
- Нет критических предупреждений в пакете или его зависимостяхthe package checked; no critical advisoryosv.dev ↗Пройдено
- Нет скрытых инструкций для модели0 tool descriptions and the README read; no override phrases, credential paths or hidden charactersПройдено
- Деструктивные инструменты помеченыНе проверялось
- Удалённая конечная точка отвечает на рукопожатие MCPНе проверялось
README
Открыть на GitHubjarvis
Your coding agent should not spend its context window on grep.
When your agent asks "where is AuthService used?", grep returns comments,
markdown, test fixtures, and similarly named symbols in one noisy pile. The
agent burns context re-reading files to filter signal from noise — and still
misses call sites.
jarvis precomputes a local code-intelligence layer so your agent calls
findReferences for exact occurrences, goToDefinition for the defining
range, callHierarchy for call paths, and searchCode for precise lexical
search — ten MCP tools for Claude Code, Cursor, or any MCP client.
Your code and indexes never leave your machine.
| Without jarvis | Grep → comments, tests, imports mixed with real hits → opens files to filter → guesses at call sites → burns context on search instead of reasoning |
| With jarvis | findReferences("AuthService") → exact file-and-range occurrences → callHierarchy for the graph → searchCode("token refresh") → answers without opening every match |
Quick start · MCP tools · Dashboard · Limits · Details · Docs
Quick start
1. Install the standalone binary:
brew install jarvis-intelligence/jarvis/jarvis
Linux users need Homebrew/Linuxbrew
installed first. The formula supports macOS arm64/x86_64 and Linux
arm64/x86_64, installs both jarvis and jarvis-server, and embeds Python
3.12, dashboard assets, tree-sitter libraries, watch, scip,
zoekt-git-index, and zoekt-webserver. Homebrew supplies
universal-ctags. No Python, uv, pip, or PyPI installation is required.
Upgrade with brew upgrade jarvis; recover a damaged installation with
brew reinstall jarvis.
2. Index a repo (slug defaults to the directory name):
jarvis index /path/to/your/repo
3. Register the MCP server:
claude mcp add jarvis --scope user -- jarvis-server
Ask your agent "find all references to AuthService" — it calls
findReferences instead of grepping.
{
"mcpServers": {
"jarvis": {
"command": "jarvis-server"
}
}
}
If your client can't find jarvis-server on PATH (GUI apps often don't
inherit your shell's), use the absolute path from which jarvis-server.
Install the Homebrew binary first. The plugin adds jarvis skills and can
register the already-installed jarvis-server.
/plugin marketplace add jarvis-intelligence/jarvis-index
/plugin install jarvis@jarvis
The standalone package includes the SCIP converter and both Zoekt binaries.
The Homebrew formula does not install setup.sh; from a jarvis source
checkout, install the optional per-language indexer for your repo:
| Language | Installer | Toolchain |
|---|---|---|
| TypeScript/TSX | sh setup.sh --only scip-typescript |
Node.js/npm |
| Python | sh setup.sh --only scip-python |
Node.js/npm |
| Java/Kotlin | sh setup.sh --only scip-java |
JDK; Kotlin repos require Kotlin 2.2.0 exactly |
| Swift | sh setup.sh --only scip-swift |
Xcode on macOS arm64 |
For Maven-built Java repositories on macOS, also install a modern Bash with
brew install bash, then run sh setup.sh --only bash-shim from that same
source checkout. Reindex after adding an indexer. Without the matching
indexer, documentSymbols and goToDefinition still work via Tree-sitter
where coverage exists;
findReferences, callHierarchy, and typeHierarchy return recovery
guidance.
semanticSearch is registered for MCP compatibility but is excluded from the
standalone distribution. It returns a Homebrew-specific unavailability error
that points to the source-build steps below; lexical search and symbol search
remain available.
The standalone Homebrew package excludes semantic dependencies. In a source checkout, install them with:
uv run jarvis install-semantic
Then index explicitly:
uv run jarvis index /path/to/repo --semantic
install-semantic also pre-downloads the embedding model (BAAI/bge-m3,
~4.3 GB, one time) into the shared Hugging Face cache
(~/.cache/huggingface/); every indexed repo reuses it. If the download is
interrupted, the next jarvis index retries it automatically.
MCP tools
| Tool | What it does |
|---|---|
goToDefinition |
Resolve a symbol to its defining file and range |
findReferences |
Every occurrence of a symbol across the indexed repo |
callHierarchy |
Incoming/outgoing calls for a symbol |
typeHierarchy |
Supertypes/subtypes |
documentSymbols |
Outline of every symbol defined in one file |
searchCode |
Zoekt lexical/regex search, optionally filtered to one repo |
semanticSearch |
Returns the Homebrew distribution's semantic-unavailability error |
blastRadius |
Which other indexed repos depend on a package, up to 2 hops |
getIndexStatus |
Published commit, freshness, staleness vs. working tree |
indexRepo |
Build an index for a git repo at path |
Dashboard
jarvis dashboard # serves http://127.0.0.1:6080 and opens a browser
A localhost web console over the same ~/.jarvis data the CLI and MCP server read:
Requirements and limits
- macOS arm64/x86_64 and Linux arm64/x86_64 only. Windows is not supported.
- Semantic search is unavailable in the Homebrew distribution.
- One language per repo — detected by extension plurality across git-tracked files; override with
--language. - jarvis never edits code. It is the retrieval half — Serena complements it for renames/refactors.
- Indexing is explicit — run
jarvis index(orjarvis watch) before querying.
Details
One indexing CLI writes precomputed indexes into ~/.jarvis; one stdio
runtime reads them down. The two share no other contract.
- Publishing is atomic — a reindex writes a new snapshot, then flips the
currentpointer viaos.replace. A query reading the old snapshot keeps working; no downtime window. - The runtime path never writes — every query opens the published snapshot read-only (
mode=ro&immutable=1). - The package graph is rebuilt, not accumulated — each reindex clears that repo's outgoing edges before recomputing.
Full detail: docs/system-architecture.md
jarvis index /path/to/your/repo # slug defaults to the directory name
jarvis index /path/to/your/repo --slug foo # or pick one explicitly
jarvis index /path/to/your/repo --scheme MyScheme # Swift repo with an ambiguous Xcode scheme
jarvis index /path/to/your/repo --language python # force the language instead of detecting it
jarvis index /path/to/your/repo --no-scip # skip optional SCIP enrichment; syntax baseline + Zoekt still publish
jarvis index /path/to/your/repo --scip # re-enable SCIP enrichment (both flags persist per repo)
jarvis list
jarvis status foo
jarvis reindex foo
jarvis forget foo
jarvis watch /path/to/your/repo [--debounce 5.0] # debounced auto-reindex on file changes (foreground)
scip-javacan't index Android/Gradle repos — its Gradle plugin keys off standard source sets that AGP replaces (scip-java#177). Detected automatically; degrades to search-only.- Kotlin indexing requires an exact Kotlin version match —
scip-kotlincis compiled against one pinned release (currently2.2.0). Detected automatically. - Maven-built Java repos need bash ≥ 4.4 on macOS —
brew install bashfixes it. - Swift indexing requires
scip >= v0.9.0— older converters silently drop occurrence ranges.jarvis indexrefuses an oldersciprather than publishing a broken index.
| Variable | Purpose |
|---|---|
JARVIS_DATA_DIR |
Override default ~/.jarvis for all indexes and registry |
The source-development semantic path has additional model-prefix overrides; they have no effect in the standalone distribution.
Documentation
docs/project-overview-pdr.md— scope, value prop, out-of-scope itemsdocs/system-architecture.md— architectural guarantees, storage layout, query pathsdocs/codebase-summary.md— module map, test coveragedocs/code-standards.md— code patterns and conventionsdocs/dashboard.md— dashboard views, actions, security model
License
Вопросы о jarvis MCP
Как добавить jarvis MCP в Claude Code?
Выполните claude mcp add codeintel -- uvx codeintel-navigation-mcp в терминале. Добавьте --scope user, чтобы сервер был доступен во всех проектах.
Как добавить jarvis MCP в Cursor?
Откройте ~/.cursor/mcp.json и добавьте сервер в mcpServers, используя конфигурацию Cursor из раздела установки выше.
Редактирует ли jarvis мой код?
Нет, jarvis является исключительно компонентом для поиска данных и не вносит никаких изменений в код.
Какие операционные системы поддерживаются?
Сервер поддерживает macOS (arm64/x86_64) и Linux (arm64/x86_64), но Windows не поддерживается.
Доступен ли семантический поиск в версии Homebrew?
Нет, семантический поиск исключен из автономного дистрибутива Homebrew; его необходимо устанавливать путем сборки из исходного кода.
Как использовать его с Claude Code?
Вы можете добавить его с помощью команды: /plugin marketplace add jarvis-intelligence/jarvis-index, а затем /plugin install jarvis@jarvis.