contextplus

Из публичных источников

Семантический интеллект для крупномасштабной разработки. Context+ — это MCP-сервер, созданный для разработчиков, которым нужна точность 99%. Комбинируя RAG, AST Tree-sitter, спектральную кластеризацию и связывание в стиле Obsidian, Context+ превращает огромную кодовую базу в доступный для поиска иерархический граф функций.

Машинный перевод · Показать оригинал

Semantic Intelligence for Large-Scale Engineering. Context+ is an MCP server designed for developers who demand 99% accuracy. By combining RAG, Tree-sitter AST, Spectral Clustering, and Obsidian-style linking, Context+ turns a massive codebase into a searchable, hierarchical feature graph.

MCP-серверКатегория: MCP-серверы · ИИ и память · Git и разработка · Поиск и знанияOpen sourceданные проверены 15 окт. 2026 г.

Обзор

  • mcp-server

Установка

Команды только показываются, маркетплейс их не выполняет. Сверяйтесь с официальной документацией.
  • Официальный сайтИз публичных источниковиз метаданных каталога
    contextplus.vercel.app/ ↗
  • Реестр пакетов языкаnodejsИз публичных источниковиз манифеста пакета — публикация в реестре не проверена
    npm install -g contextplus

    Не проверено: перед установкой убедитесь, что пакет в реестре принадлежит этому проекту.

    www.npmjs.com/package/contextplus ↗
  • Сборка из исходниковИз публичных источниковиз метаданных каталога

    Сборка из исходников: проверенного рецепта сборки нет — следуйте инструкциям репозитория.

    github.com/forloopcodes/contextplus ↗

Совместимость

«Неизвестно» значит, что доказательств не найдено, а не что продукт несовместим.
ПлатформаСтатусАрхитектураДоказательствоУверенность
Claude (web & desktop)Неизвестно———
Claude CodeНеизвестно———
CursorНеизвестно———
VS CodeНеизвестно———
WindsurfНеизвестно———
ChatGPTНеизвестно———
Node.jsСовместимо—манифест пакета: package.json name0.60

Релизы

проверено 29 окт. 2026 г.
В источнике релизы не найдены.

Профиль качества

алгоритм quality-v1.0 · оценено 15 окт. 2026 г.
Оценка качества75
Оценка риска0
Уверенность 1.00
Оценка качества и оценка риска — разные показатели. Высокое качество не гарантирует безопасность.

Составляющие оценки

Поддержка · 2012
last activity 94 days ago
Документация · 1515
README 15230 chars, description present
Готовность к использованию · 159
install instructions: yes; releases: no
Метаданные · 1010
4/4 of description, homepage, license, topics
Релизы · 102
0 release(s)
Точность категории · 109
classifier confidence 0.85
Популярность · 108
1983 stars (log-dampened, 10k = max)
Ясность лицензии · 55
SPDX MIT
Сообщество · 55
issues enabled, 170 forks

Лицензия

MIT
Лицензия известнапо данным хостинга репозитория

Это статус политики каталога, а не юридическое заключение.

Источники

github.com/forloopcodes/contextplusОсновной★ 1 983 звёздактивность 13 июл. 2026 г.Основной репозиторий · Уверенность 1.00

Отзывы

Войдите, чтобы написать отзыв

Отзывов пока нет.

Альтернативы

worldmonitorПохожий
Панель глобальной аналитики в реальном времени. Агрегация новостей с помощью ИИ, мониторинг геополитической обстановки и отслеживание инфраструктуры в едином интерфейсе ситуационной осведомлённостиAGPL-3.0 · MCP-серверы
ScraplingПохожий
🕷️ Адаптивный фреймворк для веб-скрапинга, который справляется со всем — от одиночного запроса до масштабного краулинга! Не стесняйтесь, присоединяйтесь здесь: https://discord.gg/EMgGbDceNQ и подписывайтесь здесь, чтобы получать ежедневные советы и хитрости: https://x.com/Scrapling_devBSD-3-Clause · MCP-серверы
context7Похожий
Context7 Platform — актуальная документация для ИИ-агентовMIT · MCP-серверы
reactive-resumeПохожий
Уникальный конструктор резюме, который заботится о вашей конфиденциальности. Полностью безопасный, настраиваемый, переносимый, с открытым исходным кодом и бесплатный навсегда. Попробуйте прямо сегодня!MIT · MCP-серверы
gpt-researcherПохожий
Автономный агент, который проводит глубокое исследование любых данных с помощью любых провайдеров LLMApache-2.0 · MCP-серверы
python-sdkПохожий
Официальный SDK для Python для серверов и клиентов Model Context ProtocolMIT · MCP-серверы

README

Из forloopcodes/contextplus · лицензия MIT · загружено 29 окт. 2026 г.

Context+

Semantic Intelligence for Large-Scale Engineering.

Context+ is an MCP server designed for developers who demand 99% accuracy. By combining RAG, Tree-sitter AST, Spectral Clustering, and Obsidian-style linking, Context+ turns a massive codebase into a searchable, hierarchical feature graph.

https://github.com/user-attachments/assets/a97a451f-c9b4-468d-b036-15b65fc13e79

Tools

Discovery

ToolDescription
get_context_treeStructural AST tree of a project with file headers and symbol ranges (line numbers for functions/classes/methods). Dynamic pruning shrinks output automatically.
get_file_skeletonFunction signatures, class methods, and type definitions with line ranges, without reading full bodies. Shows the API surface.
semantic_code_searchSearch by meaning, not exact text. Uses embeddings over file headers/symbols and returns matched symbol definition lines.
semantic_identifier_searchIdentifier-level semantic retrieval for functions/classes/variables with ranked call sites and line numbers.
semantic_navigateBrowse codebase by meaning using spectral clustering. Groups semantically related files into labeled clusters.

Analysis

ToolDescription
get_blast_radiusTrace every file and line where a symbol is imported or used. Prevents orphaned references.
run_static_analysisRun native linters and compilers to find unused variables, dead code, and type errors. Supports TypeScript, Python, Rust, Go.

Code Ops

ToolDescription
propose_commitThe only way to write code. Validates against strict rules before saving. Creates a shadow restore point before writing.
get_feature_hubObsidian-style feature hub navigator. Hubs are .md files with [[wikilinks]] that map features to code files.

Version Control

ToolDescription
list_restore_pointsList all shadow restore points created by propose_commit. Each captures file state before AI changes.
undo_changeRestore files to their state before a specific AI change. Uses shadow restore points. Does not affect git.

Memory & RAG

ToolDescription
upsert_memory_nodeCreate or update a memory node (concept, file, symbol, note) with auto-generated embeddings.
create_relationCreate typed edges between nodes (relates_to, depends_on, implements, references, similar_to, contains).
search_memory_graphSemantic search with graph traversal — finds direct matches then walks 1st/2nd-degree neighbors.
prune_stale_linksRemove decayed edges (e^(-λt) below threshold) and orphan nodes with low access counts.
add_interlinked_contextBulk-add nodes with auto-similarity linking (cosine ≥ 0.72 creates edges automatically).
retrieve_with_traversalStart from a node and walk outward — returns all reachable neighbors scored by decay and depth.

Complementary server: pmll-memory-mcp (npx pmll-memory-mcp) is a separate MCP server by @drQedwards that adapts Context+'s long-term memory graph and adds short-term KV context memory, Q-promise deduplication, and a solution engine on top. See drQedwards/PPM for details.

Setup

Quick Start (npx / bunx)

No installation needed. Add Context+ to your IDE MCP config.

For Claude Code, Cursor, and Windsurf, use mcpServers:

{
  "mcpServers": {
    "contextplus": {
      "command": "bunx",
      "args": ["contextplus"],
      "env": {
        "OLLAMA_EMBED_MODEL": "nomic-embed-text",
        "OLLAMA_CHAT_MODEL": "gemma2:27b",
        "OLLAMA_API_KEY": "YOUR_OLLAMA_API_KEY"
      }
    }
  }
}

For VS Code (.vscode/mcp.json), use servers and inputs:

{
  "servers": {
    "contextplus": {
      "type": "stdio",
      "command": "bunx",
      "args": ["contextplus"],
      "env": {
        "OLLAMA_EMBED_MODEL": "nomic-embed-text",
        "OLLAMA_CHAT_MODEL": "gemma2:27b",
        "OLLAMA_API_KEY": "YOUR_OLLAMA_API_KEY"
      }
    }
  },
  "inputs": []
}

If you prefer npx, use:

  • "command": "npx"
  • "args": ["-y", "contextplus"]

Or generate the MCP config file directly in your current directory:

npx -y contextplus init claude
bunx contextplus init cursor
npx -y contextplus init opencode

Supported coding agent names: claude, cursor, vscode, windsurf, opencode.

Config file locations:

IDEConfig File
Claude Code.mcp.json
Cursor.cursor/mcp.json
VS Code.vscode/mcp.json
Windsurf.windsurf/mcp.json
OpenCodeopencode.json

CLI Subcommands

  • init [target] - Generate MCP configuration (targets: claude, cursor, vscode, windsurf, opencode).
  • skeleton [path] or tree [path] - (New) View the structural tree of a project with file headers and symbol definitions directly in your terminal.
  • [path] - Start the MCP server (stdio) for the specified path (defaults to current directory).

Including paths excluded by the workspace .gitignore

If your workspace .gitignore excludes a sub-directory that you still want indexed (common in monorepos where sub-projects under repos/, packages/, or vendor/ are gitignored at the top level), use --include or CONTEXTPLUS_EXTRA_ROOTS to add the paths back.

CLI form (repeatable):

bunx contextplus /path/to/workspace \
  --include repos/lacuna \
  --include repos/graphrag-core

Environment variable (fallback when no --include flag is set; uses the system path separator — : on Unix, ; on Windows):

CONTEXTPLUS_EXTRA_ROOTS=repos/lacuna:repos/graphrag-core \
  bunx contextplus /path/to/workspace

In .mcp.json the env form is usually more ergonomic:

{
  "mcpServers": {
    "contextplus": {
      "command": "bunx",
      "args": ["contextplus", "/path/to/workspace"],
      "env": {
        "CONTEXTPLUS_EXTRA_ROOTS": "repos/lacuna:repos/graphrag-core"
      }
    }
  }
}

Each path listed is walked independently of the workspace root, with a fresh ignore scope. Each path's own .gitignore is respected. Paths are validated at startup; invalid entries (non-existent, not a directory, outside the workspace) emit a stderr warning and are skipped.

Nested .gitignore files inside the workspace and inside each extra root are loaded and merged with inherited rules, matching git and ripgrep behavior.

From Source

npm install
npm run build

Embedding Providers

Context+ supports two embedding backends controlled by CONTEXTPLUS_EMBED_PROVIDER:

ProviderValueRequiresBest For
Ollama (default)ollamaLocal Ollama serverFree, offline, private
OpenAI-compatibleopenaiAPI keyGemini (free tier), OpenAI, Groq, vLLM

Ollama (Default)

No extra configuration needed. Just run Ollama with an embedding model:

ollama pull nomic-embed-text
ollama serve

Google Gemini (Free Tier)

Full Claude Code .mcp.json example:

{
  "mcpServers": {
    "contextplus": {
      "command": "npx",
      "args": ["-y", "contextplus"],
      "env": {
        "CONTEXTPLUS_EMBED_PROVIDER": "openai",
        "CONTEXTPLUS_OPENAI_API_KEY": "YOUR_GEMINI_API_KEY",
        "CONTEXTPLUS_OPENAI_BASE_URL": "https://generativelanguage.googleapis.com/v1beta/openai",
        "CONTEXTPLUS_OPENAI_EMBED_MODEL": "text-embedding-004"
      }
    }
  }
}

Get a free API key at Google AI Studio.

OpenAI

{
  "mcpServers": {
    "contextplus": {
      "command": "npx",
      "args": ["-y", "contextplus"],
      "env": {
        "CONTEXTPLUS_EMBED_PROVIDER": "openai",
        "OPENAI_API_KEY": "sk-...",
        "OPENAI_EMBED_MODEL": "text-embedding-3-small"
      }
    }
  }
}

Other OpenAI-compatible APIs (Groq, vLLM, LiteLLM)

Any endpoint implementing the OpenAI Embeddings API works:

{
  "mcpServers": {
    "contextplus": {
      "command": "npx",
      "args": ["-y", "contextplus"],
      "env": {
        "CONTEXTPLUS_EMBED_PROVIDER": "openai",
        "CONTEXTPLUS_OPENAI_API_KEY": "YOUR_KEY",
        "CONTEXTPLUS_OPENAI_BASE_URL": "https://your-proxy.example.com/v1",
        "CONTEXTPLUS_OPENAI_EMBED_MODEL": "your-model-name"
      }
    }
  }
}

Note: The semantic_navigate tool also uses a chat model for cluster labeling. When using the openai provider, set CONTEXTPLUS_OPENAI_CHAT_MODEL (default: gpt-4o-mini).

For VS Code, Cursor, or OpenCode, use the same env block inside your IDE's MCP config format (see Config file locations table above).

Architecture

Three layers built with TypeScript over stdio using the Model Context Protocol SDK:

Core (src/core/) - Multi-language AST parsing (tree-sitter, 43 extensions), gitignore-aware traversal, Ollama vector embeddings with disk cache, wikilink hub graph, in-memory property graph with decay scoring.

Tools (src/tools/) - 17 MCP tools exposing structural, semantic, operational, and memory graph capabilities.

Git (src/git/) - Shadow restore point system for undo without touching git history.

Runtime Cache (.mcp_data/) - created on server startup; stores reusable file, identifier, and call-site embeddings to avoid repeated GPU/CPU embedding work. A realtime tracker refreshes changed files/functions incrementally.

Config

VariableTypeDefaultDescription
CONTEXTPLUS_EMBED_PROVIDERstringollamaEmbedding backend: ollama or openai
OLLAMA_EMBED_MODELstringnomic-embed-textOllama embedding model
OLLAMA_API_KEYstring-Ollama Cloud API key
OLLAMA_CHAT_MODELstringllama3.2Ollama chat model for cluster labeling
CONTEXTPLUS_OPENAI_API_KEYstring-API key for OpenAI-compatible provider (alias: OPENAI_API_KEY)
CONTEXTPLUS_OPENAI_BASE_URLstringhttps://api.openai.com/v1OpenAI-compatible endpoint URL (alias: OPENAI_BASE_URL)
CONTEXTPLUS_OPENAI_EMBED_MODELstringtext-embedding-3-smallOpenAI-compatible embedding model (alias: OPENAI_EMBED_MODEL)
CONTEXTPLUS_OPENAI_CHAT_MODELstringgpt-4o-miniOpenAI-compatible chat model for labeling (alias: OPENAI_CHAT_MODEL)
CONTEXTPLUS_EMBED_BATCH_SIZEstring (parsed as number)8Embedding batch size per GPU call, clamped to 5-10
CONTEXTPLUS_EMBED_CHUNK_CHARSstring (parsed as number)2000Per-chunk chars before merge, clamped to 256-8000
CONTEXTPLUS_MAX_EMBED_FILE_SIZEstring (parsed as number)51200Skip non-code text files larger than this many bytes
CONTEXTPLUS_EMBED_NUM_GPUstring (parsed as number)-Optional Ollama embed runtime num_gpu override
CONTEXTPLUS_EMBED_MAIN_GPUstring (parsed as number)-Optional Ollama embed runtime main_gpu override
CONTEXTPLUS_EMBED_NUM_THREADstring (parsed as number)-Optional Ollama embed runtime num_thread override
CONTEXTPLUS_EMBED_NUM_BATCHstring (parsed as number)-Optional Ollama embed runtime num_batch override
CONTEXTPLUS_EMBED_NUM_CTXstring (parsed as number)-Optional Ollama embed runtime num_ctx override
CONTEXTPLUS_EMBED_LOW_VRAMstring (parsed as boolean)-Optional Ollama embed runtime low_vram override
CONTEXTPLUS_EMBED_TRACKERstring (parsed as boolean)trueEnable realtime embedding refresh on file changes
CONTEXTPLUS_EMBED_TRACKER_MAX_FILESstring (parsed as number)8Max changed files processed per tracker tick, clamped to 5-10
CONTEXTPLUS_EMBED_TRACKER_DEBOUNCE_MSstring (parsed as number)700Debounce window before tracker refresh

Test

npm test
npm run test:demo
npm run test:all
Открыть репозиторий ↗