PlugWiki
contextplus logo

Context+ MCP Server: Setup for Claude, Cursor and Other Apps

CommunityLocal
Getnpmcontextplusforloopcodes/contextplus

Lets your AI assistant search a codebase by meaning, see where code is used, and keep a memory of what it learned.

Context+ is a community code-search server that lets Claude, Cursor and other assistants find code by meaning, trace where a symbol is used, and keep a memory graph of notes. It runs on your computer inside the project folder. By default it makes embeddings with a local Ollama model, and you can switch to a cloud provider such as OpenAI or Gemini. It can also write files, restore older versions, and run the project's linter or compiler.

Good for

  • Developers who work in large codebases and want the assistant to find the right files faster
  • Teams who run Ollama and want code search without sending code to a cloud service
  • Anyone who wants a built-in way to undo assistant edits to files

Works in

12 should work

Tap an app to see how to set it up and any known problems.

Install contextplus MCP

Claude Code

  1. 1

    Copy this prompt.

    Add the contextplus MCP server to Claude Code. Run this command:
    
    claude mcp add contextplus -- npx -y contextplus
    
    Then check that it loaded and tell me if I need to sign in or restart.
  2. 2

    Paste it into Claude Code. It shows the change and asks before running it.

Requires Node.js.

Built from the package data we hold. Not yet tested by us.

Tools

  • Finds code by what it does, not by exact words

    Matches your question to files and symbols by meaning, so "user authentication" can find login and session code that never uses those words. It returns the matching definition lines. It builds and saves a search index in the project, and sends code snippets to your embedding provider.

    Try: “Find the code that handles user authentication.”

    Write · semantic_code_search

  • Finds functions and classes by intent, with where they are used

    Looks up functions, methods, classes and variables by what you describe, then lists their definitions and the places that call them, with line numbers. It uses the same saved embedding index as code search.

    Try: “Where is the retry logic for failed payments defined and called?”

    Write · semantic_identifier_search

  • Shows the project's folders, files and symbols as a tree

    Draws the project as a tree with each file's short header and the functions, classes and enums inside it. Large projects are trimmed automatically to fit a token limit, and you can limit depth or point it at one folder.

    Try: “Give me an outline of the src folder, two levels deep.”

    Files · get_context_tree

  • Shows a file's function signatures without the bodies

    Lists the functions, methods and types in one file with their parameters, return types and line ranges. It lets the assistant learn how to use a file without loading all of it.

    Try: “Show the public API of src/core/parser.ts.”

    Files · get_file_skeleton

  • Groups the project's files into labeled topic clusters

    Clusters files that are about similar things and gives each cluster a name using a chat model. It needs an embedding model and a chat model, and it saves embeddings in the project.

    Try: “Group this repo's files by feature and name each group.”

    Write · semantic_navigate

  • Lists everywhere a function, class or variable is used

    Finds every file and line that imports or uses a symbol you name. Use it before deleting or changing code, and it warns when a symbol is barely used.

    Try: “What breaks if I rename parseConfig?”

    Files · get_blast_radius

  • Runs the project's own linter or compiler and reports problems

    Runs a checker that matches the file type: tsc for TypeScript, eslint for JavaScript, py_compile for Python, cargo check for Rust, go vet for Go. These run on your machine inside the project folder with a 30 second limit.

    Try: “Run the type checker on this project and list the errors.”

    Runs code · run_static_analysis

  • Saves a file after checking it against the server's code rules

    Writes a full file to the project, but only if it passes the server's rules, such as a two-line header, no inline comments, a nesting limit and a file length limit. It saves a restore point of the old file first.

    Try: “Save this new version of src/api/client.ts.”

    Write · propose_commit

  • Lists the saved copies made before the assistant changed files

    Shows every restore point made before a save, so you can pick one to go back to. Reads a small file in the project's .mcp_data folder.

    Try: “Show the restore points from today.”

    Files · list_restore_points

  • Puts files back to how they were before a specific change

    Rewrites the files from a restore point over the current ones, so changes made after that point are lost. Git history is not touched.

    Try: “Undo the last change to src/api/client.ts.”

    Write · undo_change

  • Browses feature maps written as Markdown notes with links to code

    Reads hub notes, which are Markdown files with [[wikilinks]] to code files. It can list the hubs, show one with outlines of the files it links, or find files that no hub mentions.

    Try: “List the feature hubs and any files that are not linked to one.”

    Files · get_feature_hub

  • Saves or updates a note, concept or symbol in a memory graph

    Stores a node for a concept, file, symbol or note in the project's memory graph, or updates it if the same label exists. Its text is turned into an embedding using your provider.

    Try: “Remember that the payments module depends on the billing API.”

    Write · upsert_memory_node

Read from the source code

Permissions

high risk · 5 things to watch

High risk

The assistant can overwrite files in your project, run your linters and compilers there, and send code snippets to your embedding provider if you pick a cloud one. Work on a git branch, and keep the default local Ollama setup if your code is private.

What it can do

  • Read your data
  • Create and change things
  • Delete things
  • Read-only mode

Watch out for

  • propose_commit overwrites any file the path points to

    It writes whatever path the assistant gives, and the 1.0.8 build does not check that the path stays inside the project folder, so a path such as ../../.zshrc is written as given. The header and comment rules only reject some content. undo_change also rewrites files from a restore point. Work in a git branch and review every change. github.com

  • run_static_analysis runs commands in your project through a shell

    It runs tsc, eslint, py_compile, cargo check or go vet with exec, joining the file path into a shell command line without quoting. cargo check and go vet run project build code, and a crafted path can add shell commands. It has no read-only mode. Use it only on projects you trust. github.com

  • A cloud provider receives your code snippets

    If you set the embedding provider to OpenAI, Gemini or another API, file contents and symbol text are sent there to be embedded. The default Ollama setup keeps this local unless you add an Ollama Cloud key. github.com

  • It saves data inside your project

    A .mcp_data folder holds embedding caches, restore points and the memory graph. Add it to .gitignore so it is not committed. github.com

  • prune_stale_links deletes memory data

    It removes faded links and unused notes from the memory graph. It does not touch your source files. github.com

Security advisories

No published security advisories as of Nov 1, 2026.

Technical details
Turning on read-onlyNo read-only mode is documented. Every tool is always available.
Talks toYour embedding provider: local Ollama by default, or an OpenAI-compatible API if you set one
Sign-in and keysNo account. An API key is needed only if you use Ollama Cloud or an OpenAI-compatible provider, set as an environment variable.

Questions

Is Context+ official?

No. It is a community project by forloopcodes. It is not made by Ollama, OpenAI or any editor vendor.

Does it need Ollama?

By default yes. It uses a local Ollama server with an embedding model such as nomic-embed-text. You can switch to an OpenAI-compatible API, including Gemini's free tier, with environment variables.

Does it send my code to the cloud?

Not with the default local Ollama setup. With an OpenAI-compatible provider or an Ollama Cloud key, file content and symbols are sent to that service to be embedded.

Which folder does it index?

The folder you start it in, or a path you add after the package name. The README shows an optional --include flag for gitignored sub-folders.

Can it change my files?

Yes. propose_commit writes whole files and undo_change restores older copies. There is no read-only mode, so review changes in git.

What does the README say about npx or bunx?

Both work. The README examples use bunx, and says to use npx with the -y flag if you prefer it.

Which apps does it work with?

The README names Claude Code, Cursor, VS Code, Windsurf and OpenCode, with a command that creates the config file for each.

Is the list of 17 tools complete?

Yes for the main branch, where the README and the source both list 17. The npm release is 1.0.8 and main is at 1.0.9, so a tool added or removed in between could differ.

Information

updated Nov 2, 2026

Publisher
Community
Package
contextplus
Registry
npm
Transport
stdio
Auth
None
License
MIT
Last commit
Jul 13, 2026
Open issues
1

WebsiteGitHubIssues

Sources

Docs, issue trackers and discussions this page is built from. Issues, quotes and findings above link to their own source.

Show all 3
  1. github.com · github.com
  2. github.com · github.com
  3. github.com · github.com

Facts from the official MCP registry, GitHub, npm, PyPI and the Docker catalog. Updated Nov 2, 2026.