Context+
An MCP server that turns a large codebase into a semantic feature graph for precise navigation and meaning-based search
Medium risk
We rate an entry medium when the tool runs code, makes network calls or reads project files. Check what exactly it does before installing.
Why this level
- Reads project files and runs linters and compilers for analysis
- Changes code files through propose_commit and reaches the network for embeddings with a cloud provider
Install
In your terminal, with SkillFoxx CLI
npx skillfoxx add mcp/contextDetects the agents on your machine, checks the risk and pins the version.
Other ways to install
Run in a terminal
claude mcp add --transport stdio contextplus -- npx -y contextplusOr add to the file .mcp.json, in the project
{
"mcpServers": {
"contextplus": {
"command": "npx",
"args": [
"-y",
"contextplus"
]
}
}
}If the file already exists, add the server inside the mcpServers key.
Keys and settings
OLLAMA_EMBED_MODELoptional
Replace the values in angle brackets with your own. Keys never go into install links and are not stored by us.
The button opens the agent and offers to add the server. If nothing happens, copy the config below.
Add to the file ~/.cursor/mcp.json, for all projects
{
"mcpServers": {
"contextplus": {
"command": "npx",
"args": [
"-y",
"contextplus"
]
}
}
}If the file already exists, add the server inside the mcpServers key. For a single project, put the same block into .cursor/mcp.json.
Keys and settings
OLLAMA_EMBED_MODELoptional
Replace the values in angle brackets with your own. Keys never go into install links and are not stored by us.
The button opens the agent and offers to add the server. If nothing happens, copy the config below.
Run in a terminal
code --add-mcp '{"name":"contextplus","type":"stdio","command":"npx","args":["-y","contextplus"]}'Or add to the file .vscode/mcp.json, in the project
{
"servers": {
"contextplus": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"contextplus"
]
}
}
}If the file already exists, add the server inside the servers key.
Keys and settings
OLLAMA_EMBED_MODELoptional
Replace the values in angle brackets with your own. Keys never go into install links and are not stored by us.
Run in a terminal
codex mcp add contextplus -- npx -y contextplusOr add to the file ~/.codex/config.toml, for all projects
[mcp_servers.contextplus]
command = "npx"
args = ["-y", "contextplus"]If the file already exists, append the block to the end.
Keys and settings
OLLAMA_EMBED_MODELoptional
Replace the values in angle brackets with your own. Keys never go into install links and are not stored by us.
Add to the file ~/.gemini/settings.json, for all projects
{
"mcpServers": {
"contextplus": {
"command": "npx",
"args": [
"-y",
"contextplus"
]
}
}
}If the file already exists, add the server inside the mcpServers key.
Keys and settings
OLLAMA_EMBED_MODELoptional
Replace the values in angle brackets with your own. Keys never go into install links and are not stored by us.
Add to the file ~/.config/devin/mcp_config.json, for all projects
{
"mcpServers": {
"contextplus": {
"command": "npx",
"args": [
"-y",
"contextplus"
]
}
}
}If the file already exists, add the server inside the mcpServers key. Legacy Cascade keeps the MCP config in ~/.codeium/windsurf/mcp_config.json.
Keys and settings
OLLAMA_EMBED_MODELoptional
Replace the values in angle brackets with your own. Keys never go into install links and are not stored by us.
Formerly Windsurf.
Add to the file cline_mcp_settings.json, for all projects
{
"mcpServers": {
"contextplus": {
"command": "npx",
"args": [
"-y",
"contextplus"
]
}
}
}If the file already exists, add the server inside the mcpServers key. Open the settings file in Cline: MCP Servers tab, Configure MCP Servers.
Keys and settings
OLLAMA_EMBED_MODELoptional
Replace the values in angle brackets with your own. Keys never go into install links and are not stored by us.
Add to the file .roo/mcp.json, in the project
{
"mcpServers": {
"contextplus": {
"command": "npx",
"args": [
"-y",
"contextplus"
]
}
}
}If the file already exists, add the server inside the mcpServers key.
Keys and settings
OLLAMA_EMBED_MODELoptional
Replace the values in angle brackets with your own. Keys never go into install links and are not stored by us.
A fork of Roo Code, same .roo folders.
Add to the file opencode.json, in the project
{
"mcp": {
"contextplus": {
"type": "local",
"command": [
"npx",
"-y",
"contextplus"
]
}
}
}If the file already exists, add the server inside the mcp key.
Keys and settings
OLLAMA_EMBED_MODELoptional
Replace the values in angle brackets with your own. Keys never go into install links and are not stored by us.
Add to the file ~/.config/zed/settings.json, for all projects
{
"context_servers": {
"contextplus": {
"command": "npx",
"args": [
"-y",
"contextplus"
]
}
}
}If the file already exists, add the server inside the context_servers key.
Keys and settings
OLLAMA_EMBED_MODELoptional
Replace the values in angle brackets with your own. Keys never go into install links and are not stored by us.
Add to the file .codeassistant/mcp.json, in the project
{
"mcpServers": {
"contextplus": {
"command": "npx",
"args": [
"-y",
"contextplus"
]
}
}
}If the file already exists, add the server inside the mcpServers key.
Keys and settings
OLLAMA_EMBED_MODELoptional
Replace the values in angle brackets with your own. Keys never go into install links and are not stored by us.
Add the MCP server to the client config: command npx, args -y and contextplus. For local embeddings run Ollama with the nomic-embed-text model, for a cloud provider set the key in environment variables.
Other ways from the author
{
"mcpServers": {
"contextplus": {
"command": "npx",
"args": ["-y", "contextplus"],
"env": {
"OLLAMA_EMBED_MODEL": "nomic-embed-text"
}
}
}
}By default a running local Ollama is required. For a cloud provider set CONTEXTPLUS_EMBED_PROVIDER and a key.
This is third-party code. Review the repository files before installing.
What it does
Context+ indexes a project and gives the agent tools for a large codebase. Discovery tools build a structural AST tree, show signatures without function bodies, search by meaning through embeddings and group related files with spectral clustering. Analysis tools trace where a symbol is used and run linters and compilers to find dead code and type errors in TypeScript, Python, Rust and Go. Writing code goes only through the propose_commit tool, which validates edits and creates a restore point before saving, with a list of restore points and undo. A separate module keeps memory as a graph of nodes and relations with embeddings and neighbor traversal. Embeddings run on a local Ollama by default or through an OpenAI-compatible API.
Who it is for. For developers working on large projects who want the agent to navigate by meaning, not just by text.
Good fit when
- You need meaning-based code search and a structural view of a large project without reading every file
- You need to see where a symbol is used before changing it
- You need safe edits with a restore point and undo
Not a fit when
- You have neither a local Ollama nor an embeddings API key
- The project is small and plain text search is enough
Example request
Find by meaning where the project handles file uploads and show every place that function is usedLimitations
Embeddings need a running local Ollama or a key to an OpenAI-compatible provider. Cloud providers such as OpenAI and Gemini require access to their networks, a local Ollama works offline. Indexing a large repository takes time. Code writes go only through propose_commit.
How to disable. Remove the contextplus block from your client's MCP configuration and restart it.
MCP
- Transport
- stdio
- Authentication
- not required
| Environment variables | |
|---|---|
| OLLAMA_EMBED_MODEL | Embedding model for local Ollama, for example nomic-embed-text |
| CONTEXTPLUS_EMBED_PROVIDER | Embedding backend: ollama by default or openai |
| CONTEXTPLUS_OPENAI_API_KEY secret | Key for an OpenAI-compatible provider when openai is selected |
Security check
- Reads project files and runs linters and compilers for analysis
- Changes code files through propose_commit and reaches the network for embeddings with a cloud provider
README in short
The README describes Context+ as an MCP server that combines RAG, Tree-sitter AST, spectral clustering and Obsidian-style linking to make a large codebase navigable. Tools are grouped into discovery, analysis, code ops, version control through restore points and a graph-based memory. Installation is via npx or bunx by adding a block to the client's MCP config, with an init subcommand to generate the config for Claude Code, Cursor, VS Code, Windsurf and OpenCode. Embeddings support two backends: a local Ollama by default and an OpenAI-compatible API. MIT licensed.
FAQ
Do I need a paid key?
No, by default a local Ollama computes embeddings. A key is only needed if you pick an OpenAI-compatible provider.
Can the server change code by itself?
Writes go only through propose_commit, which validates edits and creates a restore point, with undo available via undo_change.
Related
A skills library that gives coding agents a development process: brainstorming, planning, TDD, subagents and code review
Skills for real engineers by Matt Pocock
Skills For Real Engineers
Small composable skills for engineering with agents: plan grilling, TDD, bug diagnosis, code review and architecture
GitHub toolkit for spec-driven development: the specify CLI adds agent commands and skills to a project, from principles to implementation
Reference MCP servers
Model Context Protocol servers
Official reference MCP servers: Filesystem, Fetch, Git, Memory, Sequential Thinking, Time and Everything