代码图谱RAG
STDIO多语言代码分析与语义智能MCP服务器
多语言代码分析与语义智能MCP服务器
Sponsor https://accelerator.slider-ai.ru/
Advanced Multi-Language Code Analysis with Semantic Intelligence
A powerful Model Context Protocol server that creates intelligent graph representations of your codebase with comprehensive semantic analysis capabilities.
🌟 10 Languages Supported | ⚡ 5.5x Faster | 🔍 Semantic Search | 📊 23 MCP Methods
# Install globally npm install -g @er77/code-graph-rag-mcp # Or use with npx (no installation) npx @er77/code-graph-rag-mcp /path/to/your/project
# Quick setup (recommended) npx @modelcontextprotocol/inspector add code-graph-rag \ --command "npx" \ --args "@er77/code-graph-rag-mcp /path/to/your/codebase"
or
# Быстрая настройка (рекомендуется)
  claude mcp add-json  code-graph-rag ' { 
        "command": "npx",
        "args": ["@er77/code-graph-rag-mcp", "/_work_fodler"],
  "env": {
    "MCP_TIMEOUT": "80000"
  }
      }
Manual setup: Add to Claude Desktop config → See detailed instructions
# Using helper script (prints the exact gemini CLI command to run) ./scripts/GEMINI-CORRECT-CONFIG.sh # Or manually (example) gemini mcp add-json code-graph-rag '{ "command": "npx", "args": ["@er77/code-graph-rag-mcp", "/path/to/your/codebase"] }'
# Using helper script (prints how to update ~/.codex/config.toml) ./scripts/CODEX-CORRECT-CONFIG.sh # Project-scoped MCP server in ~/.codex/config.toml [projects."/path/to/your/project".mcp_servers.code_graph_rag] command = "npx" args = ["@er77/code-graph-rag-mcp", "/path/to/your/codebase"] transport = "stdio"
Multi-codebase support: Analyze multiple projects simultaneously → Multi-Codebase Setup Guide
npm install -g @er77/code-graph-rag-mcpcode-graph-rag-mcp /path/to/your/project./scripts/GEMINI-CORRECT-CONFIG.sh and follow the printed command./scripts/CODEX-CORRECT-CONFIG.sh and update ~/.codex/config.toml5.5x faster than Native Claude tools with comprehensive testing results:
| Metric | Native Claude | MCP CodeGraph | Improvement | 
|---|---|---|---|
| Execution Time | 55.84s | <10s | 5.5x faster | 
| Memory Usage | Process-heavy | 65MB | Optimized | 
| Features | Basic patterns | 22 methods | Comprehensive | 
| Accuracy | Pattern-based | Semantic | Superior | 
| Feature | Description | Use Case | 
|---|---|---|
| Semantic Search | Natural language code search | "Find authentication functions" | 
| Code Similarity | Duplicate & clone detection | Identify refactoring opportunities | 
| JSCPD Clone Scan | JSCPD-based copy/paste detection without embeddings | Targeted duplicate sweeps | 
| Impact Analysis | Change impact prediction | Assess modification risks | 
| AI Refactoring | Intelligent code suggestions | Improve code quality | 
| Hotspot Analysis | Complexity & coupling metrics | Find problem areas | 
| Cross-Language | Multi-language relationships | Polyglot codebases | 
| Graph Health | Database diagnostics | get_graph_health | 
| Version Info | Server version & runtime details | get_version | 
| Safe Reset | Clean reindexing | reset_graph, clean_index | 
| Agent Telemetry | Runtime metrics across agents | get_agent_metrics | 
| Bus Diagnostics | Inspect/clear knowledge bus topics | get_bus_stats, clear_bus_topic | 
| Semantic Warmup | Configurable cache priming for embeddings | mcp.semantic.cacheWarmupLimit | 
| Metric | Capability | Details | 
|---|---|---|
| Parsing Speed | 100+ files/second | Tree-sitter based | 
| Query Response | <100ms | Optimized SQLite + vector search | 
| Agent System | Multi-agent coordination | Resource-managed execution | 
| Vector Search | Hardware-accelerated (optional) | Automatic embedding ingestion | 
| AST Analysis | Precise code snippets | Semantic context extraction | 
| Language | Features | Support Level | 
|---|---|---|
| Python | Async/await, decorators, magic methods (40+), dataclasses | ✅ Advanced (95%) | 
| TypeScript/JavaScript | Full ES6+, JSX, TSX, React patterns | ✅ Complete (100%) | 
| C/C++ | Functions, structs/unions/enums, classes, namespaces, templates | ✅ Advanced (90%) | 
| C# | Classes, interfaces, enums, properties, LINQ, async/await | ✅ Advanced (90%) | 
| Rust | Functions, structs, enums, traits, impls, modules, use | ✅ Advanced (90%) | 
| Go | Packages, functions, structs, interfaces, goroutines, channels | ✅ Advanced (90%) | 
| Java | Classes, interfaces, enums, records (Java 14+), generics, lambdas | ✅ Advanced (90%) | 
| VBA | Modules, subs, functions, properties, user-defined types | ✅ Regex-based (80%) | 
# Single project analysis code-graph-rag-mcp /path/to/your/project # CLI helpers code-graph-rag-mcp --help code-graph-rag-mcp --version # Multi-project setup (see Multi-Codebase Setup Guide) # Configure multiple projects in Claude Desktop config # Check installation code-graph-rag-mcp --help # Health & maintenance # Health check (totals + sample) get_graph_health # Reset graph data safely reset_graph # Clean reindex (reset + full index) clean_index # Agent telemetry snapshot get_agent_metrics # Knowledge bus diagnostics get_bus_stats clear_bus_topic --args '{"topic": "semantic:search"}' # One-shot index from the CLI (debug mode) node dist/index.js /home/er77/tt '{"jsonrpc":"2.0","id":"index-1","method":"tools/call","params":{"name":"index","arguments":{"directory":"/home/er77/tt","incremental":false,"fullScan":true,"reset":true}}}' # Relationships for an entity name list_entity_relationships (entityName: "YourEntity", relationshipTypes: ["imports"]) # Adjust semantic warmup (optional) export MCP_SEMANTIC_WARMUP_LIMIT=25 # Note: when an agent is saturated, `AgentBusyError` responses include `retryAfterMs` hints.
With Claude Desktop:
Multi-Project Queries:
Native module mismatch (better-sqlite3)
Since v2.6.4 the server automatically rebuilds the native binary when it detects a NODE_MODULE_VERSION mismatch. If the automatic rebuild fails (for example due to file permissions), run:
npm rebuild better-sqlite3
in the installation directory (globally this is commonly /usr/lib/node_modules/@er77/code-graph-rag-mcp).
Legacy database missing new columns
Older installations might lack the latest embeddings columns (metadata, model_name, etc.). The server now auto-upgrades in place, but if you still encounter migration errors, delete the local DB and re-run the indexer:
rm ~/.code-graph-rag/codegraph.db
Then start the server again to trigger a clean rebuild.
Running a one-shot index from the CLI
You can trigger tools directly by passing JSON-RPC payloads. When a payload is supplied, the server skips the semantic agent and uses low-memory batching for debugging. Example:
node dist/index.js /path/to/project \ '{"jsonrpc":"2.0","id":"index-1","method":"tools/call","params":{"name":"index","arguments":{"directory":"/path/to/project","incremental":false,"fullScan":true,"reset":true}}}'
The command logs progress to logs_llm/mcp-server-YYYY-MM-DD.log. Set MCP_DEBUG_DISABLE_SEMANTIC=0 if you want embeddings enabled during the run.
--help/-h and --version/-v flags for quick CLI interactiondetect_code_clones now merges deduplicated semantic groups with JSCPD summariesjscpd_detect_clones summary includes duplicated line/token counts, percentages, and inline snippetsjscpd_detect_clones MCP tool exposing JSCPD duplicate detection without requiring embeddingsBreaking Changes & Major Improvements ⚡
get_agent_metrics, get_bus_stats, and clear_bus_topic expose live telemetry and knowledge-bus controls for Codex automationagent_busy responses with retry guidance when capacity is saturateddoc_embeddings, vec_doc_embeddings) with improved sqlite-vec integrationTechnical Details:
Testing & Validation (2025-10-21):
get_agent_metrics, get_bus_stats, clear_bus_topicsqliteVecEnabled propertycase "get_graph" in src/index.ts:1668 & 1707 (non-critical, line 1707 unreachable)v2.5.7 - Semantic analysis improvements, lowered thresholds, clone detection
v2.5.6 - Fixed DoraAgent type collision (+16% success rate)
v2.5.5 - WASM path resolution fix, get_version tool, restart script
v2.5.4 - Architecture Decision Records (ADRs)
v2.5.3 - Deprecated dependency warning suppression
v2.5.2 - Enhanced README documentation
v2.5.1 - Python magic methods, import analysis enhancements
v2.5.0 - 8 new languages (C#, Rust, C, C++, Go, Java, VBA), Research Trinity
v2.4.1 - Rust AST parsing, system architecture docs
v2.4.0 - Health check tools, AST hotspots, semantic routing
v2.3.3 - Entity extraction fix (0 → 4,467 entities)
Minimum: Node.js 18+, 2GB RAM, Dual-core CPU Recommended: Node.js 18+, 8GB RAM, Quad-core CPU with SSD
[email protected] warning: This is a transitive dependency from the optional onnxruntime-node package (used for ML embeddings). The package is deprecated but functional. The warning can be safely ignored as it doesn't affect core functionality.Contributing Guide • Issue Tracker
MIT License - see LICENSE file for details.
Links: GitHub • NPM • MCP Protocol