MCP Hub
Back to servers

narsil-mcp

A blazingly fast Rust-powered MCP server providing comprehensive code intelligence for 16 languages. It offers 75+ tools for symbol extraction, call graph analysis, neural semantic search, and advanced security scanning including taint analysis and SBOM generation.

Stars
70
Forks
8
Tools
74
Updated
Jan 4, 2026
Validated
Jan 9, 2026

narsil-mcp

The blazing-fast, privacy-first MCP server for deep code intelligence

License Rust Tests MCP

A Rust-powered MCP (Model Context Protocol) server providing AI assistants with deep code understanding through 76 specialized tools.

Why narsil-mcp?

Featurenarsil-mcpXRAYSerenaGitHub MCP
Languages16430+ (LSP)N/A
Neural SearchYesNoNoNo
Taint AnalysisYesNoNoNo
SBOM/LicensesYesNoNoPartial
Offline/LocalYesYesYesNo
WASM/BrowserYesNoNoNo
Call GraphsYesPartialNoNo
Type InferenceYesNoNoNo

Key Features

  • Code Intelligence - Symbol extraction, semantic search, call graph analysis
  • Neural Semantic Search - Find similar code using embeddings (Voyage AI, OpenAI)
  • Security Analysis - Taint analysis, vulnerability scanning, OWASP/CWE coverage
  • Supply Chain Security - SBOM generation, dependency auditing, license compliance
  • Advanced Analysis - Control flow graphs, data flow analysis, dead code detection

Why Choose narsil-mcp?

  • Written in Rust - Blazingly fast, memory-safe, single binary (~30MB)
  • Tree-sitter powered - Accurate, incremental parsing for 16 languages
  • Zero config - Point at repos and go
  • MCP compliant - Works with Claude, Cursor, VS Code Copilot, Zed, and any MCP client
  • Privacy-first - Fully local, no data leaves your machine
  • Parallel indexing - Uses all cores via Rayon
  • Smart excerpts - Expands to complete syntactic scopes
  • Security-first - Built-in vulnerability detection and taint analysis
  • Neural embeddings - Optional semantic search with Voyage AI or OpenAI
  • WASM support - Run in browser with WebAssembly build
  • Real-time streaming - Results as indexing progresses for large repos

Supported Languages

LanguageExtensionsSymbols Extracted
Rust.rsfunctions, structs, enums, traits, impls, mods
Python.py, .pyifunctions, classes
JavaScript.js, .jsx, .mjsfunctions, classes, methods, variables
TypeScript.ts, .tsxfunctions, classes, interfaces, types, enums
Go.gofunctions, methods, types
C.c, .hfunctions, structs, enums, typedefs
C++.cpp, .cc, .hppfunctions, classes, structs, namespaces
Java.javamethods, classes, interfaces, enums
C#.csmethods, classes, interfaces, structs, enums, delegates, namespaces
Bash.sh, .bash, .zshfunctions, variables
Ruby.rb, .rake, .gemspecmethods, classes, modules
Kotlin.kt, .ktsfunctions, classes, objects, interfaces
PHP.php, .phtmlfunctions, methods, classes, interfaces, traits
Swift.swiftclasses, structs, enums, protocols, functions
Verilog/SystemVerilog.v, .vh, .sv, .svhmodules, tasks, functions, interfaces, classes

Installation

Via Package Managers (Recommended)

macOS / Linux (Homebrew):

brew tap postrv/narsil
brew install narsil-mcp

Windows (Scoop):

scoop bucket add narsil https://github.com/postrv/scoop-narsil
scoop install narsil-mcp

Arch Linux (AUR):

yay -S narsil-mcp-bin  # Binary release (faster)
# or
yay -S narsil-mcp      # Build from source

Rust/Cargo (all platforms):

cargo install narsil-mcp

Node.js/npm (all platforms):

npm install -g narsil-mcp
# or
yarn global add narsil-mcp
# or
pnpm add -g narsil-mcp

One-Click Install Script

macOS / Linux:

curl -fsSL https://raw.githubusercontent.com/postrv/narsil-mcp/main/install.sh | bash

Windows (PowerShell):

irm https://raw.githubusercontent.com/postrv/narsil-mcp/main/install.ps1 | iex

Windows (Git Bash / MSYS2):

curl -fsSL https://raw.githubusercontent.com/postrv/narsil-mcp/main/install.sh | bash

Note for Windows users: The PowerShell installer provides better error messages and native Windows integration. It will automatically configure your PATH and check for required build tools if building from source.

From Source

Prerequisites:

# Clone and build
git clone git@github.com:postrv/narsil-mcp.git
cd narsil-mcp
cargo build --release

# Binary will be at:
# - macOS/Linux: target/release/narsil-mcp
# - Windows: target/release/narsil-mcp.exe

Feature Builds

narsil-mcp supports different feature sets for different use cases:

# Default build - native MCP server (~30MB)
cargo build --release

# With neural vector search (~18MB) - adds TF-IDF similarity
cargo build --release --features neural

# With ONNX model support (~50MB) - adds local neural embeddings
cargo build --release --features neural-onnx

# With embedded visualization frontend (~31MB)
cargo build --release --features frontend

# For browser/WASM usage
cargo build --release --target wasm32-unknown-unknown --features wasm
FeatureDescriptionSize
native (default)Full MCP server with all tools~30MB
frontend+ Embedded visualization web UI~31MB
neural+ TF-IDF vector search, API embeddings~32MB
neural-onnx+ Local ONNX model inference~50MB
wasmBrowser build (no file system, git)~3MB

For detailed installation instructions, troubleshooting, and platform-specific guides, see docs/INSTALL.md.

Usage

Basic Usage

macOS / Linux:

# Index a single repository
narsil-mcp --repos /path/to/your/project

# Index multiple repositories
narsil-mcp --repos ~/projects/project1 --repos ~/projects/project2

# Enable verbose logging
narsil-mcp --repos /path/to/project --verbose

# Force re-index on startup
narsil-mcp --repos /path/to/project --reindex

Windows (PowerShell / CMD):

# Index a single repository
narsil-mcp --repos C:\Users\YourName\Projects\my-project

# Index multiple repositories
narsil-mcp --repos C:\Projects\project1 --repos C:\Projects\project2

# Enable verbose logging
narsil-mcp --repos C:\Projects\my-project --verbose

# Force re-index on startup
narsil-mcp --repos C:\Projects\my-project --reindex

Full Feature Set

narsil-mcp \
  --repos ~/projects/my-app \
  --git \           # Enable git blame, history, contributors
  --call-graph \    # Enable function call analysis
  --persist \       # Save index to disk for fast startup
  --watch \         # Auto-reindex on file changes
  --lsp \           # Enable LSP for hover, go-to-definition
  --streaming \     # Stream large result sets
  --remote \        # Enable GitHub remote repo support
  --neural \        # Enable neural semantic embeddings
  --neural-backend api \  # Backend: "api" (Voyage/OpenAI) or "onnx"
  --neural-model voyage-code-2  # Model to use

Note: Neural embeddings require an API key (or custom endpoint). The easiest way to set this up is with the interactive wizard:

# Run the neural API key setup wizard
narsil-mcp config init --neural

The wizard will:

  • Detect your editor (Claude Desktop, Claude Code, Zed, VS Code, JetBrains)
  • Prompt for your API provider (Voyage AI, OpenAI, or custom)
  • Validate your API key
  • Automatically add it to your editor's MCP config

Alternatively, you can manually set one of these environment variables:

  • EMBEDDING_API_KEY - Generic API key for any provider
  • VOYAGE_API_KEY - Voyage AI specific API key
  • OPENAI_API_KEY - OpenAI specific API key
  • EMBEDDING_SERVER_ENDPOINT - Custom embedding API endpoint URL (optional, allows using self-hosted models)

Configuration

v1.1.0+ introduces optional configuration for fine-grained control over tools and performance. All existing usage continues to work - configuration is completely optional!

Quick Start

# Generate default config interactively
narsil-mcp config init

# List available tools
narsil-mcp tools list

# Apply a preset via CLI
narsil-mcp --repos ~/project --preset minimal

Automatic Editor Detection

narsil-mcp detects your editor and applies an optimal preset automatically:

EditorPresetToolsContext TokensWhy
ZedMinimal26~4,686Fast startup, minimal context
VS CodeBalanced51~8,948Good feature balance
Claude DesktopFull75+~12,001Maximum capabilities

Token Savings:

  • Minimal preset: 61% fewer tokens vs Full
  • Balanced preset: 25% fewer tokens vs Full

Presets

Choose a preset based on your use case:

# Minimal - Fast, lightweight (Zed, Cursor)
narsil-mcp --repos ~/project --preset minimal

# Balanced - Good defaults (VS Code, IntelliJ)
narsil-mcp --repos ~/project --preset balanced --git --call-graph

# Full - All features (Claude Desktop, comprehensive analysis)
narsil-mcp --repos ~/project --preset full --git --call-graph

# Security-focused - Security and supply chain tools
narsil-mcp --repos ~/project --preset security-focused

Configuration Files

User config (~/.config/narsil-mcp/config.yaml):

version: "1.0"
preset: "balanced"

tools:
  # Disable slow tools
  overrides:
    neural_search:
      enabled: false
      reason: "Too slow for interactive use"

performance:
  max_tool_count: 50  # Limit total tools

Project config (.narsil.yaml in repo root):

version: "1.0"
preset: "security-focused"  # Override user preset

tools:
  categories:
    Security:
      enabled: true
    SupplyChain:
      enabled: true

Priority: CLI flags > Environment vars > Project config > User config > Defaults

Environment Variables

# Apply preset
export NARSIL_PRESET=minimal

# Enable specific categories
export NARSIL_ENABLED_CATEGORIES=Repository,Symbols,Search

# Disable specific tools
export NARSIL_DISABLED_TOOLS=neural_search,generate_sbom

CLI Commands

# View effective config
narsil-mcp config show

# Validate config file
narsil-mcp config validate ~/.config/narsil-mcp/config.yaml

# List tools by category
narsil-mcp tools list --category Search

# Search for tools
narsil-mcp tools search "git"

# Export config
narsil-mcp config export > my-config.yaml

Learn More:

Visualization Frontend

Explore call graphs, imports, and code structure interactively in your browser.

# Build with embedded frontend
cargo build --release --features frontend

# Run with HTTP server
narsil-mcp --repos ~/project --http --call-graph
# Open http://localhost:3000

Features: interactive graphs, complexity overlays, security highlighting, multiple layouts.

Full documentation: See docs/frontend.md for setup, API endpoints, and development mode.

Neural Semantic Search

Find similar code using neural embeddings - even when variable names and structure differ.

# Quick setup with wizard
narsil-mcp config init --neural

# Or manually with Voyage AI
export VOYAGE_API_KEY="your-key"
narsil-mcp --repos ~/project --neural --neural-model voyage-code-2

Supports Voyage AI, OpenAI, custom endpoints, and local ONNX models.

Full documentation: See docs/neural-search.md for setup, backends, and use cases.

Type Inference

Built-in type inference for Python, JavaScript, and TypeScript - no mypy or tsc required.

ToolDescription
infer_typesGet inferred types for all variables in a function
check_type_errorsFind potential type mismatches
get_typed_taint_flowEnhanced security analysis with type info
def process(data):
    result = data.split(",")  # result: list[str]
    count = len(result)       # count: int
    return count * 2          # returns: int

MCP Configuration

Add narsil-mcp to your AI assistant by creating a configuration file. Here are the recommended setups:


Claude Code (.mcp.json in project root - Recommended):

Create .mcp.json in your project directory for per-project configuration:

{
  "mcpServers": {
    "narsil-mcp": {
      "command": "narsil-mcp",
      "args": ["--repos", ".", "--git", "--call-graph"]
    }
  }
}

Then start Claude Code in your project:

cd /path/to/project
claude

Using . for --repos automatically indexes the current directory. Claude now has access to 76 code intelligence tools.

Tip: Add --persist --index-path .claude/cache for faster startup on subsequent runs.

For global configuration, edit ~/.claude/settings.json instead. See Claude Code Integration for advanced setups.


Cursor (.cursor/mcp.json):

{
  "mcpServers": {
    "narsil-mcp": {
      "command": "narsil-mcp",
      "args": ["--repos", ".", "--git", "--call-graph"]
    }
  }
}

VS Code + GitHub Copilot (.vscode/mcp.json):

{
  "servers": {
    "narsil-mcp": {
      "command": "narsil-mcp",
      "args": ["--repos", ".", "--git", "--call-graph"]
    }
  }
}

Note for Copilot Enterprise: MCP support requires VS Code 1.102+ and must be enabled by your organization administrator.


Claude Desktop (claude_desktop_config.json):

{
  "mcpServers": {
    "narsil-mcp": {
      "command": "narsil-mcp",
      "args": ["--repos", "/path/to/your/projects", "--git"]
    }
  }
}

Zed (settings.json → Context Servers):

{
  "context_servers": {
    "narsil-mcp": {
      "command": "narsil-mcp",
      "args": ["--repos", ".", "--git"]
    }
  }
}

Note for Zed: narsil-mcp starts immediately and indexes in the background, preventing initialization timeouts.


Claude Code Plugin

For Claude Code users, we provide a plugin with slash commands and a skill for effective tool usage.

Install via Marketplace (Recommended):

# Add the narsil-mcp marketplace
/plugin marketplace add postrv/narsil-mcp

# Install the plugin
/plugin install narsil@narsil-mcp

Or install directly from GitHub:

/plugin install github:postrv/narsil-mcp/narsil-plugin

What's included:

ComponentDescription
/narsil:security-scanRun comprehensive security audits
/narsil:exploreExplore unfamiliar codebases
/narsil:analyze-functionDeep dive on specific functions
/narsil:find-featureFind where features are implemented
/narsil:supply-chainAnalyze supply chain security
SkillGuides Claude on using 76 tools effectively
MCP ConfigAuto-starts narsil-mcp with sensible defaults

See narsil-plugin/README.md for full documentation.

Playbooks & Tutorials

See docs/playbooks for practical usage guides:

GuideDescription
Getting StartedQuick setup and first tool calls
Understand a CodebaseExplore unfamiliar projects
Fix a BugDebug with call graphs and taint analysis
Security AuditFind vulnerabilities with OWASP/CWE scanning
Code ReviewReview changes effectively

Each playbook shows the exact tool chains Claude uses to answer your questions.

WebAssembly (Browser) Usage

narsil-mcp can run entirely in the browser via WebAssembly - perfect for browser-based IDEs, code review tools, or educational platforms.

npm install @narsil-mcp/wasm
import { CodeIntelClient } from '@narsil-mcp/wasm';

const client = new CodeIntelClient();
await client.init();
client.indexFile('src/main.rs', rustSourceCode);
const symbols = client.findSymbols('Handler');

Full documentation: See docs/wasm.md for build instructions, React examples, and API reference.

Available Tools (76)

Repository & File Management

ToolDescription
list_reposList all indexed repositories with metadata
get_project_structureGet directory tree with file icons and sizes
get_fileGet file contents with optional line range
get_excerptExtract code around specific lines with context
reindexTrigger re-indexing of repositories
discover_reposAuto-discover repositories in a directory
validate_repoCheck if path is a valid repository
get_index_statusShow index stats and enabled features

Symbol Search & Navigation

ToolDescription
find_symbolsFind structs, classes, functions by type/pattern
get_symbol_definitionGet symbol source with surrounding context
find_referencesFind all references to a symbol
get_dependenciesAnalyze imports and dependents
workspace_symbol_searchFuzzy search symbols across workspace
find_symbol_usagesCross-file symbol usage with imports
get_export_mapGet exported symbols from a file/module

Code Search

ToolDescription
search_codeKeyword search with relevance ranking
semantic_searchBM25-ranked semantic search
hybrid_searchCombined BM25 + TF-IDF with rank fusion
search_chunksSearch over AST-aware code chunks
find_similar_codeFind code similar to a snippet (TF-IDF)
find_similar_to_symbolFind code similar to a symbol

AST-Aware Chunking

ToolDescription
get_chunksGet AST-aware chunks for a file
get_chunk_statsStatistics about code chunks
get_embedding_statsEmbedding index statistics

Neural Semantic Search (requires --neural)

ToolDescription
neural_searchSemantic search using neural embeddings (finds similar code even with different names)
find_semantic_clonesFind Type-3/4 semantic clones of a function
get_neural_statsNeural embedding index statistics

Call Graph Analysis (requires --call-graph)

ToolDescription
get_call_graphGet call graph for repository/function
get_callersFind functions that call a function
get_calleesFind functions called by a function
find_call_pathFind path between two functions
get_complexityGet cyclomatic/cognitive complexity
get_function_hotspotsFind highly connected functions

Control Flow Analysis

ToolDescription
get_control_flowGet CFG showing basic blocks and branches
find_dead_codeFind unreachable code blocks

Data Flow Analysis

ToolDescription
get_data_flowVariable definitions and uses
get_reaching_definitionsWhich assignments reach each point
find_uninitializedVariables used before initialization
find_dead_storesAssignments that are never read

Type Inference (Python/JavaScript/TypeScript)

ToolDescription
infer_typesInfer types for variables in a function without external type checkers
check_type_errorsFind potential type errors without running mypy/tsc
get_typed_taint_flowEnhanced taint analysis combining data flow with type inference

Import/Dependency Graph

ToolDescription
get_import_graphBuild and analyze import graph
find_circular_importsDetect circular dependencies
get_incremental_statusMerkle tree and change statistics

Security Analysis - Taint Tracking

ToolDescription
find_injection_vulnerabilitiesFind SQL injection, XSS, command injection, path traversal
trace_taintTrace tainted data flow from a source
get_taint_sourcesList taint sources (user input, files, network)
get_security_summaryComprehensive security risk assessment

Security Analysis - Rules Engine

ToolDescription
scan_securityScan with security rules (OWASP, CWE, crypto, secrets)
check_owasp_top10Scan for OWASP Top 10 2021 vulnerabilities
check_cwe_top25Scan for CWE Top 25 weaknesses
explain_vulnerabilityGet detailed vulnerability explanation
suggest_fixGet remediation suggestions for findings

Supply Chain Security

ToolDescription
generate_sbomGenerate SBOM (CycloneDX/SPDX/JSON)
check_dependenciesCheck for known vulnerabilities (OSV database)
check_licensesAnalyze licenses for compliance issues
find_upgrade_pathFind safe upgrade paths for vulnerable deps

Git Integration (requires --git)

ToolDescription
get_blameGit blame for file
get_file_historyCommit history for file
get_recent_changesRecent commits in repository
get_hotspotsFiles with high churn and complexity
get_contributorsRepository/file contributors
get_commit_diffDiff for specific commit
get_symbol_historyCommits that changed a symbol
get_branch_infoCurrent branch and status
get_modified_filesWorking tree changes

LSP Integration (requires --lsp)

ToolDescription
get_hover_infoType info and documentation
get_type_infoPrecise type information
go_to_definitionFind definition location

Remote Repository Support (requires --remote)

ToolDescription
add_remote_repoClone and index GitHub repository
list_remote_filesList files via GitHub API
get_remote_fileFetch file via GitHub API

Metrics

ToolDescription
get_metricsPerformance stats and timing

Security Rules

narsil-mcp includes built-in security rules in rules/:

  • owasp-top10.yaml - OWASP Top 10 2021 vulnerability patterns
  • cwe-top25.yaml - CWE Top 25 Most Dangerous Weaknesses
  • crypto.yaml - Cryptographic issues (weak algorithms, hardcoded keys)
  • secrets.yaml - Secret detection (API keys, passwords, tokens)

Custom rules can be loaded with scan_security --ruleset /path/to/rules.yaml.

Architecture

+-----------------------------------------------------------------+
|                         MCP Server                               |
|  +-----------------------------------------------------------+  |
|  |                   JSON-RPC over stdio                      |  |
|  +-----------------------------------------------------------+  |
|                              |                                   |
|  +---------------------------v-------------------------------+  |
|  |                   Code Intel Engine                        |  |
|  |  +------------+ +------------+ +------------------------+  |  |
|  |  |  Symbol    | |   File     | |    Search Engine       |  |  |
|  |  |  Index     | |   Cache    | |  (Tantivy + TF-IDF)    |  |  |
|  |  | (DashMap)  | | (DashMap)  | +------------------------+  |  |
|  |  +------------+ +------------+                              |  |
|  |  +------------+ +------------+ +------------------------+  |  |
|  |  | Call Graph | |  Taint     | |   Security Rules       |  |  |
|  |  |  Analysis  | |  Tracker   | |   Engine               |  |  |
|  |  +------------+ +------------+ +------------------------+  |  |
|  +-----------------------------------------------------------+  |
|                              |                                   |
|  +---------------------------v-------------------------------+  |
|  |                Tree-sitter Parser                          |  |
|  |  +------+ +------+ +------+ +------+ +------+             |  |
|  |  | Rust | |Python| |  JS  | |  TS  | | Go   | ...         |  |
|  |  +------+ +------+ +------+ +------+ +------+             |  |
|  +-----------------------------------------------------------+  |
|                              |                                   |
|  +---------------------------v-------------------------------+  |
|  |                Repository Walker                           |  |
|  |           (ignore crate - respects .gitignore)             |  |
|  +-----------------------------------------------------------+  |
+-----------------------------------------------------------------+

Performance

Benchmarked on Apple M1 (criterion.rs):

Parsing Throughput

LanguageInput SizeTimeThroughput
Rust (large file)278 KB131 µs1.98 GiB/s
Rust (medium file)27 KB13.5 µs1.89 GiB/s
Python~4 KB16.7 µs-
TypeScript~5 KB13.9 µs-
Mixed (5 files)~15 KB57 µs-

Search Latency

OperationCorpus SizeTime
Symbol exact match1,000 symbols483 ns
Symbol prefix match1,000 symbols2.7 µs
Symbol fuzzy match1,000 symbols16.5 µs
BM25 full-text1,000 docs80 µs
TF-IDF similarity1,000 docs130 µs
Hybrid (BM25+TF-IDF)1,000 docs151 µs

End-to-End Indexing

RepositoryFilesSymbolsTimeMemory
narsil-mcp (this repo)531,733220 ms~50 MB
rust-analyzer2,847~50K2.1s89 MB
linux kernel78,000+~500K45s2.1 GB

Key metrics:

  • Tree-sitter parsing: ~2 GiB/s sustained throughput
  • Symbol lookup: <1µs for exact match
  • Full-text search: <1ms for most queries
  • Hybrid search runs BM25 + TF-IDF in parallel via rayon

Development

# Run tests (359 tests)
cargo test

# Run benchmarks (criterion.rs)
cargo bench

# Run with debug logging
RUST_LOG=debug cargo run -- --repos ./test-fixtures

# Format code
cargo fmt

# Lint
cargo clippy

# Test with MCP Inspector
npx @modelcontextprotocol/inspector ./target/release/narsil-mcp --repos ./path/to/repo

Troubleshooting

Tree-sitter Build Errors

If you see errors about missing C compilers or tree-sitter during build:

# macOS
xcode-select --install

# Ubuntu/Debian
sudo apt install build-essential

# For WASM builds
brew install emscripten  # macOS

Neural Search API Errors

# Check your API key is set
echo $VOYAGE_API_KEY  # or $OPENAI_API_KEY

# Common issue: wrong key format
export VOYAGE_API_KEY="pa-..."  # Voyage keys start with "pa-"
export OPENAI_API_KEY="sk-..."  # OpenAI keys start with "sk-"

Index Not Finding Files

# Check .gitignore isn't excluding files
narsil-mcp --repos /path --verbose  # Shows skipped files

# Force reindex
narsil-mcp --repos /path --reindex

Memory Issues with Large Repos

# For very large repos (>50K files), increase stack size
RUST_MIN_STACK=8388608 narsil-mcp --repos /path/to/huge-repo

# Or index specific subdirectories
narsil-mcp --repos /path/to/repo/src --repos /path/to/repo/lib

Roadmap

Completed

  • Multi-language symbol extraction (16 languages)
  • Full-text search with Tantivy (BM25 ranking)
  • Hybrid search (BM25 + TF-IDF with RRF)
  • AST-aware code chunking
  • Git blame/history integration
  • Call graph analysis with complexity metrics
  • Control flow graph (CFG) analysis
  • Data flow analysis (DFG) with reaching definitions
  • Dead code and dead store detection
  • Taint analysis for injection vulnerabilities
  • Security rules engine (OWASP, CWE, crypto, secrets)
  • SBOM generation (CycloneDX, SPDX)
  • Dependency vulnerability checking (OSV)
  • License compliance analysis
  • Import graph with circular dependency detection
  • Cross-language symbol resolution
  • Incremental indexing with Merkle trees
  • Index persistence
  • Watch mode for file changes
  • LSP integration
  • Remote repository support
  • Streaming responses

What's New

v1.1.x (Current)

  • Multi-platform distribution - Install via Homebrew, Scoop, npm, Cargo, or direct download
  • Configurable tool presets - Minimal, balanced, full, and security-focused presets
  • Automatic editor detection - Optimal defaults for Zed, VS Code, Claude Desktop
  • Interactive setup wizard - narsil-mcp config init for easy configuration
  • Swift and Verilog support - Now supporting 16 languages
  • Improved performance - Faster startup with background indexing

v1.0.x

  • Neural semantic search - Find similar code using Voyage AI or OpenAI embeddings
  • Type inference - Infer types in Python/JavaScript/TypeScript without external tools
  • Multi-language taint analysis - Security scanning for PHP, Java, C#, Ruby, Kotlin
  • WASM build - Run in browser for code playgrounds and educational tools
  • 111 bundled security rules - OWASP, CWE, crypto, secrets detection
  • IDE configs included - Claude Desktop, Cursor, VS Code, Zed templates

License

Licensed under either of:

at your option.

Credits

Built with:

Reviews

No reviews yet

Sign in to write a review