A powerful TypeScript code indexing and search tool with Language Server Protocol support and MCP (Model Context Protocol) integration.
- Semantic Search: Advanced code search using embeddings for natural language queries
- Symbol Search: Exact symbol name matching and lookup
- LSP Integration: Language Server Protocol support for TypeScript analysis
- MCP Server: Exposes indexing and search capabilities through Model Context Protocol
- Vector Database: SQLite-based storage with vector search capabilities
- Multiple Transports: Support for stdio, HTTP, and SSE communication protocols
- TypeScript Parser: tree-sitter-typescript - TypeScript and TSX grammars for tree-sitter
- Language Server: yioneko/vtsls / typescript-language-server - LSP wrapper for TypeScript
- Vector Database: asg017/sqlite-vec - Vector search extension for SQLite
ts-index index --project /path/to/project --db /path/to/index.dbts-index search "function to parse JSON" --project /path/to/project --db /path/to/index.dbts-index search "parseJSON" --symbol --db /path/to/index.db# Analyze symbol at position
ts-index lsp analyze src/utils.ts --project /path/to/project --line 10 --character 5
# Get code completions
ts-index lsp completion src/utils.ts --project /path/to/project --line 10 --character 5
# Search workspace symbols
ts-index lsp symbols --project /path/to/project --query "parse"
# Install language server
ts-index lsp install vtsls
# Check LSP health
ts-index lsp health# stdio mode (default)
ts-index mcp --project /path/to/project --db /path/to/index.db
# HTTP mode
ts-index mcp --transport http --address :8080 --db /path/to/index.db
# SSE mode
ts-index mcp --transport sse --address :8080 --db /path/to/index.db# Run linter
make lint
# Run linter with auto-fix
make lint-fix
# Run test
make testgo build -o bin/ts-index ./cmd/ts-index