Skip to content

v0.2.0

Choose a tag to compare

@github-actions github-actions released this 14 Nov 02:41
· 35 commits to main since this release
ce0a1d9

Minor Changes

  • 806223b: Complete MCP Codebase Index Implementation (Phases 1-10)

    This is the initial complete implementation of the MCP Codebase Index server, providing semantic code search capabilities through the Model Context Protocol.

    🎉 Phase 1: Foundation

    • TypeScript project setup with strict mode and ESM modules
    • Zod-based configuration system with environment variable support
    • Comprehensive utility functions (logger, error classes, retry logic, file operations)
    • Basic MCP server infrastructure with placeholder handlers

    📝 Phase 2: Code Parsing

    • Tree-sitter integration for TypeScript, Python, JavaScript, Go, Rust, C/C++, C#, Java, Ruby, PHP
    • Markdown parser with header-based chunking
    • Fallback line-based chunking for unsupported languages
    • Comprehensive code block extraction with metadata

    🧠 Phase 3: Embedding Generation

    • Multi-provider embedding system supporting:
      • Google Gemini (text-embedding-004)
      • OpenAI (text-embedding-3-small/large)
      • Ollama (local models)
      • OpenAI-compatible services
    • LRU caching for embedding results
    • Batch processing with retry logic
    • Provider health checks and validation

    💾 Phase 4: Vector Storage

    • Qdrant vector database integration
    • Collection management with automatic creation
    • Batch upsert, delete, and scroll operations
    • Semantic search with filtering and pagination
    • Point metadata storage and retrieval

    🔄 Phase 5: Indexing Engine

    • Complete end-to-end indexing pipeline
    • File watching with debouncing
    • Git branch change detection
    • Priority-based task queue with retries
    • Concurrent batch processing
    • File hash caching for incremental updates
    • .mcpignore and .gitignore support

    🔍 Phase 6: Search Implementation

    • Semantic search with vector similarity
    • Multi-factor relevance ranking:
      • Exact match detection
      • Name similarity scoring
      • File path relevance
      • Recency scoring
      • Language and type boosting
    • Context extraction with configurable line ranges
    • Result caching with TTL
    • Filter support (file types, paths, languages)

    📊 Phase 7: Status Management

    • State machine for indexing status (standby, indexing, indexed, error)
    • Real-time progress tracking
    • Statistics collection (blocks, vectors, languages)
    • Error aggregation and reporting
    • Progress percentage calculation

    🔧 Phase 8: MCP Tools Integration

    • Orchestrator class wiring all components together
    • Six MCP tool handlers:
      1. codebase_search - Semantic code search with filters
      2. indexing_status - Real-time status and statistics
      3. reindex - Trigger full, incremental, or file-specific reindexing
      4. configure_indexer - Runtime configuration updates
      5. clear_index - Reset and clear indexed data
      6. validate_config - Test connections and validate setup
    • Complete tool schemas with validation
    • Comprehensive error handling

    ✅ Phase 9: Testing & Documentation

    • Vitest testing infrastructure with 70% coverage thresholds
    • 58 passing tests across unit and integration suites
    • Comprehensive USAGE.md with examples and troubleshooting
    • Updated README with complete feature documentation
    • API documentation for all components

    📦 Phase 10: Release Preparation

    • Complete API.md with all component documentation
    • Changesets for version management
    • CHANGELOG.md initialization
    • npm publishing configuration
    • GitHub Actions workflows (CI, release, manual publish)
    • MIT license
    • Production-ready package.json

    🐛 Bug Fixes & Quality Improvements

    • Fixed all TypeScript compilation errors and warnings
    • Resolved 26 test failures - now 100% passing
    • Fixed ESLint configuration for proper linting
    • Addressed all 11 Copilot AI review comments:
      • Enhanced type safety (removed all any types from handlers)
      • Fixed baseUrl validation for local Ollama paths
      • Removed unused web-tree-sitter dependency
      • Added missing environment variable documentation
      • Improved error logging and signal handling
      • Added graceful shutdown with orchestrator cleanup

    📈 Current Status

    • ✅ 58 tests passing, 1 skipped
    • ✅ Zero compilation errors
    • ✅ Zero linting errors (35 non-blocking warnings)
    • ✅ Full TypeScript strict mode compliance
    • ✅ Comprehensive documentation
    • ✅ Ready for npm publishing

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog,
and this project adheres to Semantic Versioning.