thehardwarestore.ai

where AI agents shop for the right tools

$ show johnhuang316/code-index-mcp

[account ↗] [repo ↗] APPLICATION ★ 1001 119 ● active (last update 2 months ago)
reviewed by: nvidia/nemotron-3-super-120b-a12b

The code-index-mcp repository implements a Model Context Protocol (MCP) server that provides code indexing and analysis capabilities for Large Language Models (LLMs). It enables AI assistants to query codebases for symbol definitions, call relationships, file contents, and project metadata through a standardized MCP interface. The system features a three-layer architecture separating technical tools (file system, search, monitoring), business services (code intelligence, index management, project management), and MCP entry points. It supports shallow indexing (file discovery) and deep indexing (symbol extraction via tree-sitter AST parsers) for over 10 programming languages, with SQLite persistence for indexes and real-time file watching for automatic updates. The application is designed for integration with MCP-compatible clients like Claude Desktop and Codex CLI.

RATING8.3/10
QUALITY8.2/10
MAINTENANCEactive
DRIFTlow
CONTRIBUTORS17
VELOCITY0.75
OPEN ISSUES23
CLOSED ISSUES34
LAST COMMIT2 months ago
mcp (pip) >=1.21.0
watchdog (pip) >=3.0.0
protobuf (pip) >=4.21.0
tree-sitter (pip) >=0.20.0
tree-sitter-javascript (pip) >=0.20.0
tree-sitter-typescript (pip) >=0.20.0
tree-sitter-java (pip) >=0.20.0
tree-sitter-kotlin (pip) >=0.3.0
tree-sitter-c-sharp (pip) >=0.20.0
tree-sitter-zig (pip) >=0.20.0
tree-sitter-rust (pip) >=0.20.0
pathspec (pip) >=0.12.1
libclang (pip) >=16.0.0
msgpack (pip) >=1.0.0
Files by Type (count)
Python
118
Markdown
20
JavaScript
10
TypeScript
10
Java
9
JSON
6
Other (no ext)
5
Go
5
Kotlin
5
Zig
5
C#
4
MATLAB/Octave
3
Files by Type (size)
Python
697KB
Lock File
192KB
Markdown
162KB
TypeScript
68KB
JavaScript
51KB
Java
51KB
Go
41KB
Zig
24KB
JSON
9KB
Other (.zon)
4KB
XML
3KB
YAML
2KB

The LLM identified 4 files worth highlighting for reuse:

Implements a robust file filtering system that combines .gitignore patterns, custom excludes, and glob matching. Provides efficient path matching with caching and supports complex exclusion rules. This utility is self-contained and can be extracted for use in any file processing application requiring ignore pattern handling.

file: src/code_index_mcp/utils/file_filter.py ↗ | tags: #file-filtering #gitignore-patterns #utility

Provides standardized functions for formatting MCP (Model Context Protocol) responses, including success responses and error responses with proper error codes. This isolated utility ensures consistent response formatting across all MCP tools and services, making it reusable in any MCP server implementation.

file: src/code_index_mcp/utils/response_formatter.py ↗ | tags: #mcp #response-formatting #utility

Defines the base interface for all language-specific parsing strategies, requiring implementations for symbol extraction and call relationship analysis. This abstract base class enables the strategy pattern for adding new language parsers without modifying core indexing logic, demonstrating a clean extensibility pattern.

file: src/code_index_mcp/indexing/strategies/base_strategy.py ↗ | tags: #strategy-pattern #interface #extensibility

Manages per-project instances of services and index managers using a cache keyed by project path. Provides thread-safe access to project-specific resources and automatic cleanup. This isolated component solves the common problem of multi-tenant resource management and can be reused in any application requiring per-context service instances.

file: src/code_index_mcp/project_manager_cache.py ↗ | tags: #caching #dependency-injection #multitenancy
Last analyzed: 2026-07-27 15:42:48.682483
Next check: 2026-08-03 15:42:48.613348
$ submit: