Project
Code Graph Search
A multi-language code analysis platform that turns repositories into a searchable graph of classes, functions, calls, and dependencies — with a REST API, a web UI, and an MCP server for AI assistants.
Code Graph Search parses repositories in many languages, extracts the structural relationships between code elements — containment, calls, inheritance, imports, dependencies — and makes the resulting graph searchable and traversable by people and by AI assistants.
What it does
-
Parses Java, Go, Rust, TypeScript and JavaScript, C, C++, Markdown, and YAML/JSON (and compiled
.classfiles). -
Stores a persistent graph with directional edge indices, plus full-text search over every code element.
-
Graph traversal: shortest paths, type hierarchies, call graphs, and connectivity analysis.
-
Watches the file system and re-indexes incrementally (debounced).
-
Models cross-repository links, such as gRPC calls between services.
-
Three interfaces over the same service: a REST API, a React web UI with a Cytoscape.js graph view, and an MCP server (stdio, HTTP, or SSE).
How it is built
Java. Parsers (a Java source parser, Tree-sitter for the other languages, and dedicated Markdown, config-file, and class-file parsers) produce a common model of code elements and typed edges. A graph service with 80-plus operations sits over three stores: RocksDB for the graph itself, Lucene for full-text search, and SQLite for repository metadata.