FEATURES.md•7.63 kB
# SCS-MCP Features
Comprehensive documentation of all features available in the Smart Code Search MCP Server.
## Table of Contents
- [Core Search Capabilities](#core-search-capabilities)
- [Code Analysis](#code-analysis)
- [Graph Visualization](#graph-visualization)
- [Voice Assistant](#voice-assistant)
- [Model Management](#model-management)
- [Orchestration Framework](#orchestration-framework)
- [Git Integration](#git-integration)
## Core Search Capabilities
### Semantic Search
- **Technology**: Sentence transformers with all-MiniLM-L6-v2 model
- **Features**:
- Natural language queries
- Code similarity matching
- Context-aware ranking
- Multi-language support
### Hybrid Search
- Combines semantic and keyword matching
- Weighted scoring system
- Metadata filtering (TODOs, comments, types)
### Symbol Analysis
- Deep analysis of functions, classes, and variables
- Usage tracking across codebase
- Test coverage identification
- Call graph generation
## Code Analysis
### Instant Code Review
Provides immediate feedback on code quality:
- Best practices violations
- Security issues
- Performance problems
- Style inconsistencies
- Complexity metrics
### Complexity Analysis
- **Cyclomatic Complexity**: Measures decision points
- **Cognitive Complexity**: Measures mental effort to understand
- **Halstead Metrics**: Volume, difficulty, effort
- **Maintainability Index**: Overall code health score
### Test Gap Detection
- Identifies untested functions and classes
- Suggests test cases based on code patterns
- Coverage analysis without running tests
- Test file association
### Import Optimization
- Detects unused imports
- Identifies missing imports
- Suggests import reorganization
- Circular dependency detection
## Graph Visualization
### Dependency Graphs
Generate visual representations of code dependencies in multiple formats:
#### Output Formats
1. **DOT (Graphviz)**
- Industry-standard graph description language
- Can be rendered with Graphviz tools
- Suitable for documentation
2. **Mermaid**
- Renders directly in GitHub/GitLab markdown
- No external tools required
- Interactive in supporting viewers
3. **JSON**
- Structured data for custom tools
- Includes metadata and metrics
- Suitable for programmatic analysis
#### Graph Types
- **Import Graph**: File and module dependencies
- **Call Graph**: Function call relationships
- **Inheritance Tree**: Class hierarchy visualization
#### Features
- Circular dependency detection
- Node clustering by module
- Edge labeling with relationship types
- Configurable depth and filtering
### Example Usage
```json
{
"tool": "generate_dependency_graph",
"arguments": {
"output_format": "mermaid",
"graph_type": "imports",
"file_pattern": "src/**/*.py",
"detect_cycles": true
}
}
```
## Voice Assistant
### Web Interface
- Real-time speech recognition
- Natural language processing
- Visual feedback and waveforms
- Media history with screenshots
### Voice Commands
- **Search**: "Find authentication code"
- **Review**: "Review the current function"
- **Navigate**: "Go to the user model"
- **Analyze**: "What does this code do?"
- **Generate**: "Create a test for this function"
### Media Capture
- **Screenshots**: Voice-triggered or manual capture with annotation tools
- **Screen Recording**: Full session recording with WebM format
- **Automatic Capture**: Context-aware screenshots during debugging/review
- **Media Management**: Gallery view with search, filter, and export
- **Annotations**: Drawing tools, text overlay, and highlighting
- **Storage**: Organized file system with SQLite metadata
- See [Media Server Documentation](MEDIA_SERVER.md) for complete details
### VS Code Integration
- Extension for editor context
- Current file awareness
- Selection handling
- Quick actions
## Model Management
### Multi-Model Support
Track and compare different AI models:
- **Capabilities Matrix**: What each model can do
- **Cost Analysis**: Token pricing and estimates
- **Performance Metrics**: Speed and quality comparisons
- **Context Windows**: Token limits per model
### Model Recommendation
- Task-based model selection
- Cost optimization suggestions
- Quality vs. speed trade-offs
- Fallback strategies
### Dynamic Model Loading
- On-demand model switching
- Memory management
- Cache optimization
- Parallel processing support
## Orchestration Framework
### Multi-Agent Coordination
Coordinate multiple specialized agents for complex tasks:
#### Available Orchestrations
1. **Technical Debt Analysis**
- Code smells detection
- Complexity assessment
- Refactoring prioritization
- Migration planning
2. **Instant Review**
- Best practices check
- Security scan
- Performance analysis
- Documentation review
3. **Test Gap Analysis**
- Coverage calculation
- Test case generation
- Edge case identification
- Integration test planning
4. **Import Optimization**
- Dependency cleanup
- Module reorganization
- Circular dependency resolution
- Package structure optimization
### Context Management
- Large file handling with chunking
- Context window optimization
- Relevant snippet extraction
- Cross-file analysis
## Git Integration
### History Search
- Search through commit messages
- Find code changes over time
- Author-based filtering
- Date range queries
### Blame Analysis
- Line-by-line authorship
- Change frequency tracking
- Hot spot identification
- Contributor statistics
### Diff Analysis
- Smart diff interpretation
- Change impact assessment
- Breaking change detection
- Migration path suggestions
## Performance Features
### Caching System
- Embedding cache for repeated queries
- Result caching with TTL
- Git history caching
- Incremental indexing
### Thread Safety
- Concurrent request handling
- Database connection pooling
- Lock-free operations where possible
- Graceful degradation
### Scalability
- Handles projects with 100k+ files
- Efficient memory usage
- Lazy loading strategies
- Background indexing
## Security Features
### Code Scanning
- Basic vulnerability detection
- Hardcoded credential detection
- SQL injection patterns
- XSS vulnerability patterns
### Access Control
- API key authentication (optional)
- Rate limiting support
- Audit logging
- Secure configuration
## Configuration
### Customization Options
- Embedding model selection
- Index update intervals
- Cache sizes and TTLs
- Performance tuning
### Language Support
Currently supported languages:
- Python (.py)
- JavaScript (.js, .jsx, .mjs)
- TypeScript (.ts, .tsx)
- Java (.java)
- Go (.go)
- Rust (.rs)
- Ruby (.rb)
- C/C++ (.c, .cpp, .h, .hpp)
### File Type Support
- Source code files
- Configuration files (JSON, YAML, TOML)
- Documentation (Markdown, RST)
- Shell scripts
- Docker files
## Integration Points
### MCP Protocol
Full compliance with Model Context Protocol:
- Tool discovery
- Async execution
- Error handling
- Progress reporting
### IDE Integration
- VS Code extension
- Command-line interface
- REST API (planned)
- Language server protocol (planned)
### CI/CD Integration
- GitHub Actions support
- Pre-commit hooks
- Quality gates
- Automated reviews
## Future Roadmap
### Planned Features
- [ ] Cloud deployment support
- [ ] Team collaboration features
- [ ] Custom rule definitions
- [ ] Machine learning-based suggestions
- [ ] Real-time collaboration
- [ ] Plugin system
- [ ] Web dashboard
- [ ] Mobile app support
### Under Consideration
- GraphQL API
- Kubernetes operator
- Terraform provider
- Browser extension
- Slack/Discord integration