Skip to main content

Skill-Orchestrated Context Intelligence Engine for AI coding agents

Project description

V.I.S.O.R.

AI is wasting 60% of your tokens reading the wrong code. V.I.S.O.R. fixes that.

CI PyPI License: MIT Python MCP

Visual Intelligence System for Orchestrated Reasoning

V.I.S.O.R. is a Skill-Orchestrated Context Intelligence Engine โ€” a local-first MCP server that indexes your codebase via Tree-sitter AST parsing, ranks code with a multi-signal scoring engine, and delivers surgical context to AI coding agents. It works with Antigravity, VS Code, Cursor, and Claude Code.

V.I.S.O.R HUD Dashboard

๐Ÿš€ Install

1. Install the Backend

pip install visor-mcp

Or run directly without installing (recommended):

uvx visor-mcp

2. Configure Your IDE

Add V.I.S.O.R. to your IDE's MCP config. The JSON block is the same everywhere โ€” only the file location changes.

Claude Code (one command)
claude mcp add visor -- uvx visor-mcp

Done. Claude Code handles everything.

Cursor (~/.cursor/mcp.json)
{
  "mcpServers": {
    "visor": {
      "command": "uvx",
      "args": ["visor-mcp"]
    }
  }
}

Or per-project: create .cursor/mcp.json in your repo root.

Claude Desktop (claude_desktop_config.json)

macOS: ~/Library/Application Support/Claude/claude_desktop_config.json Linux: ~/.config/claude/claude_desktop_config.json Windows: %APPDATA%\Claude\claude_desktop_config.json

{
  "mcpServers": {
    "visor": {
      "command": "uvx",
      "args": ["visor-mcp"]
    }
  }
}
VS Code (.vscode/mcp.json)
{
  "mcpServers": {
    "visor": {
      "command": "uvx",
      "args": ["visor-mcp"]
    }
  }
}

Or use Command Palette โ†’ MCP: Add Server.

Antigravity (.vscode/mcp.json in your project)

Create .vscode/mcp.json in your project root:

{
  "servers": {
    "visor": {
      "command": "uvx",
      "args": ["visor-mcp"],
      "env": {
        "WORKSPACE_ROOT": "${workspaceFolder}"
      }
    }
  }
}

Note: Do NOT use the global ~/.gemini/antigravity/mcp_config.json for V.I.S.O.R. โ€” it doesn't resolve ${workspaceFolder} and will index the wrong directory.

For the full 3D HUD experience, also install the V.I.S.O.R. HUD extension from the VS Code Marketplace.

Windsurf

Open Plugins sidebar โ†’ Manage plugins โ†’ View raw config, then add:

{
  "mcpServers": {
    "visor": {
      "command": "uvx",
      "args": ["visor-mcp"]
    }
  }
}

Prerequisite: You need uv installed. uvx (included with uv) handles virtual environments and dependencies automatically โ€” no manual setup needed.

Why V.I.S.O.R.?

Every time your AI agent searches for context, it burns tokens reading irrelevant files. V.I.S.O.R. eliminates this waste:

Without V.I.S.O.R. With V.I.S.O.R.
Agent greps 20+ files blindly Agent gets 3-5 precise snippets
~12,000 tokens per context fetch ~2,300 tokens (80% reduction)
No reasoning โ€” just raw search Every selection is explainable
Stale context โ†’ hallucinations Drift detection prevents errors

โœจ Key Features

๐Ÿง  Context Intelligence Engine

The build_context tool is the core differentiator. It doesn't just search โ€” it reasons:

  • Intent Classification โ€” Detects if you're debugging, refactoring, or exploring, and adjusts weights dynamically
  • 5-Signal Scoring โ€” Combines embedding similarity, exact match, co-location, dependency proximity, and recency
  • Explainable Decisions โ€” Every node includes human-readable reasoning for why it was selected
  • Token Metrics โ€” Shows exact reduction percentage vs. naive full-file approach

โšก Skill Execution Layer

Pre-loaded strategies that change how V.I.S.O.R. retrieves context:

Skill Intent Behavior
bug-fixer BUG_FIX Boosts dependency chains + recently modified files
architecture-explainer EXPLAIN Heavy embedding similarity for broad understanding
refactor-assistant REFACTOR Wide dependency graph + exact symbol matching
performance-optimizer BUG_FIX Hotspot detection via extreme recency weighting

Skills are defined as JSON strategies and stored in SQLite. Create your own via add_custom_skill.

๐Ÿ” Semantic AST Indexing

Powered by Tree-sitter, V.I.S.O.R. indexes 9 languages out of the box. Symbols are embedded using all-MiniLM-L6-v2 and stored in a local SQLite + sqlite-vec vector store.

Language Extensions Status
Python .py โœ…
TypeScript .ts, .tsx โœ…
JavaScript .js, .jsx โœ…
Go .go โœ…
Rust .rs โœ…
Java .java โœ…
C .c, .h โœ…
C++ .cpp, .cc, .cxx, .hpp โœ…

Want more? Adding a new language is ~15 lines of code. See CONTRIBUTING.md.

๐Ÿ“Š 3D WebGPU Developer HUD

A real-time force-directed graph visualization of your codebase architecture, embedded directly in your IDE sidebar. Displays live telemetry: Agent Context Burn, Graph Scale, and Drift Alerts.

โš ๏ธ Drift Detection

Dual-mode detection (SHA-256 hash comparison or file changelog timestamps) warns agents before they hallucinate from stale context.


๐Ÿ› ๏ธ CLI

visor context "how is authentication handled"   # General context query
visor fix "login crash on null user"             # Bug-fixer skill
visor explain "database client"                  # Architecture-explainer skill
visor trace src/auth.py src/db/client.py         # Trace architectural path
visor drift                                       # Check for drift
visor init                                        # Auto-configure for your IDE

๐Ÿ› ๏ธ MCP Tool Suite

V.I.S.O.R. exposes 16 MCP tools across 5 categories. See docs/MCP_TOOLS.md for the full API reference.

๐Ÿง  Intelligence

Tool Description
build_context(query, skill?) Ranked context with scoring, reasoning, metrics, and prompt export

๐Ÿ” Search

Tool Description
search_codebase(query) Semantic vector search across AST nodes
get_symbol_context(symbol) Find all definitions with file + line range
get_file_context(path) Full AST symbol listing for a file

๐Ÿ—บ๏ธ Graph Analysis

Tool Description
get_dependency_chain(symbol) Transitive import chain (BFS depth 5)
impact_analysis(file_path) Downstream blast radius
trace_route(source, target) Shortest path between files
dead_code_detection() Files with zero incoming edges

โš ๏ธ Drift Detection

Tool Description
get_drift_report(files, loaded_at, hashes?) Hash or timestamp-based drift detection

๐Ÿงฉ Memory & Skills

Tool Description
store_memory(role, content) Persist conversation with embedding
add_custom_skill(name, desc, content, strategy?) Create a skill with optional JSON strategy
list_custom_skills() List all skills with strategies
delete_custom_skill(id) Remove a skill

๐Ÿ“ฆ Example Output

$ visor fix "authentication crash"
============================================================
  V.I.S.O.R. Context Intelligence Engine
============================================================
  Query:  authentication crash
  Intent: BUG_FIX
  Skill:  bug-fixer
โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€
  Tokens without V.I.S.O.R.: 11,400
  Tokens with V.I.S.O.R.:    2,180
  Reduction:                  80.9%
โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€
  Selected 4 nodes (truncated=False):

  [2.8500]  src/auth/jwt.py:verify_token
            โ†’ Matched query token in symbol name
            โ†’ Co-located in same file as top semantic hit
            โ†’ Recently modified file (boosted)

  [2.1200]  src/auth/middleware.py:auth_guard
            โ†’ Reachable via dependency chain
            โ†’ Semantic similarity (score: 0.375)

============================================================

๐Ÿ“š Documentation

Document Description
docs/ARCHITECTURE.md System design, data flow, DB schema
docs/MCP_TOOLS.md Complete MCP tool API reference
docs/FAQ.md Frequently asked questions
docs/TROUBLESHOOTING.md Common issues and solutions
CONTRIBUTING.md How to contribute (add languages, tools, skills)
CHANGELOG.md Release history

๐Ÿค Contributing

V.I.S.O.R. welcomes contributions! The easiest way to start is by adding a new language โ€” it's ~15 lines and a great first issue.

git clone https://github.com/dibun75/visor.git
cd visor && uv sync --dev
uv run pytest tests/ -v

See CONTRIBUTING.md for the full guide.


๐ŸŒ Compatibility

IDE Support Method
Claude Code โœ… Full claude mcp add visor -- uvx visor-mcp
Cursor โœ… Full ~/.cursor/mcp.json
Claude Desktop โœ… Full claude_desktop_config.json
VS Code โœ… Full .vscode/mcp.json
Antigravity โœ… Full MCP config + HUD Extension
Windsurf โœ… Full Plugin raw config

License

MIT ยฉ Arunav Mandal

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

visor_mcp-1.0.2.tar.gz (771.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

visor_mcp-1.0.2-py3-none-any.whl (779.9 kB view details)

Uploaded Python 3

File details

Details for the file visor_mcp-1.0.2.tar.gz.

File metadata

  • Download URL: visor_mcp-1.0.2.tar.gz
  • Upload date:
  • Size: 771.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for visor_mcp-1.0.2.tar.gz
Algorithm Hash digest
SHA256 b705bb85771719f06be4e0fbb7e2d85836c524e47370aa87711ecd370ed6f6dc
MD5 20552396e731b38447a75b78ebb6991b
BLAKE2b-256 5b5a1156ac8b378b12c25eb7ed37947079e59ccca908f7e1aecfdced8e69296b

See more details on using hashes here.

Provenance

The following attestation bundles were made for visor_mcp-1.0.2.tar.gz:

Publisher: publish.yml on dibun75/visor

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file visor_mcp-1.0.2-py3-none-any.whl.

File metadata

  • Download URL: visor_mcp-1.0.2-py3-none-any.whl
  • Upload date:
  • Size: 779.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for visor_mcp-1.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 9d973b7ec92a09deaedb8dadc03fccd7f7e8b9e0652ea8e4a6795082d09671be
MD5 c4f2caeb2dfa9c5e7823ce887c48606b
BLAKE2b-256 30c7e50ea994b317b432298db2707b83322d50c9fc6962de069f2c47fc62a575

See more details on using hashes here.

Provenance

The following attestation bundles were made for visor_mcp-1.0.2-py3-none-any.whl:

Publisher: publish.yml on dibun75/visor

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page