lore_structure
Detect structural anomalies — import cycles (Tarjan SCC), layering violations (Kahn toposort), and outlier couplings
How to use it
lore_structure is exposed by the Lore MCP server. Add the server to your MCP client (Claude Desktop, Cursor, Windsurf and others), and the lore_structure tool becomes available to the model automatically. See the full listing for setup details and every tool this server provides.
Install Lore
npx @jafreck/lore mcp --db /path/to/lore.dbOther tools in Lore (25)
Commits by author/email substring
Full/prefix SHA lookup (+files +refs)
Commits that touched a path
combines structural and semantic candidates; symbol filters apply to symbol candidates and doc filters apply to semantic doc-section candidates before final fused ranking.
optional indexed file language filter.
optional maximum rows for empty/browse symbol queries (default 20).
Query blame, line-range history, or ownership aggregates with optional symbol targeting, commit-context enrichment, and risk signals
Rank directories by module cohesion (ratio of internal to external symbol references)
Find everything affected by changing a symbol or file — callers, importers, subclasses, and type references with automatic transitive traversal (up to 5 hops) in one call
Compare exported symbols between two indexed branches; returns added, removed, and changed symbols
Query call/import/inheritance/type-dependency edges with automatic transitive traversal (up to 5 hops); supports sourceid for outbound and targetid for inbound/reverse queries; materializes virtual dispatch edges for polymorphic call resolution
Query commit history by file, commit, author, ref, recency, or semantic commit-message similarity
Find symbols by name or files by path, including external dependency API symbols and LSP-resolved metadata when available
Aggregate index metrics
Structural BM25, semantic vector, or fused RRF search across symbols and doc sections
Return snippets from indexed source snapshots by file path + line range or by symbol name; path/symbol resolution is branch-aware and responses include containing-symbol context metadata (name, kind, start/end lines) when available
Trace an execution path from an entry point and return an ordered call sequence with source code for each step
optional symbol-name matching mode (exact, prefix, contains); defaults to exact (case-insensitive).
optional rows to skip for empty/browse symbol queries (default 0).
optional indexed file-path prefix filter.
Newest commits
Commits matching branch/tag ref name
Conceptual commit-message search (falls back to recent when vectors are unavailable)
returns symbol hits only; applies pathprefix, language, and kind.
optional symbol kind filter (for example, function or class).