UNPKG

@knath2000/codebase-indexing-mcp

Version:

MCP server for codebase indexing with Voyage AI embeddings and Qdrant vector storage

353 lines (352 loc) 9.57 kB
#!/usr/bin/env node import { Server } from '@modelcontextprotocol/sdk/server/index.js'; import { IndexingService } from './services/indexing-service.js'; import { SearchService } from './services/search-service.js'; export declare const TOOL_DEFINITIONS: ({ name: string; description: string; inputSchema: { type: string; properties: { directory_path: { type: string; description: string; }; file_path?: never; query?: never; language?: never; chunk_type?: never; limit?: never; threshold?: never; chunk_id?: never; context_lines?: never; force?: never; max_tokens?: never; enable_hybrid?: never; enable_reranking?: never; prefer_implementation?: never; workspace_id?: never; }; required: string[]; }; } | { name: string; description: string; inputSchema: { type: string; properties: { file_path: { type: string; description: string; }; directory_path?: never; query?: never; language?: never; chunk_type?: never; limit?: never; threshold?: never; chunk_id?: never; context_lines?: never; force?: never; max_tokens?: never; enable_hybrid?: never; enable_reranking?: never; prefer_implementation?: never; workspace_id?: never; }; required: string[]; }; } | { name: string; description: string; inputSchema: { type: string; properties: { query: { type: string; description: string; }; language: { type: string; description: string; }; chunk_type: { type: string; description: string; }; file_path: { type: string; description: string; }; limit: { type: string; description: string; }; threshold: { type: string; description: string; }; directory_path?: never; chunk_id?: never; context_lines?: never; force?: never; max_tokens?: never; enable_hybrid?: never; enable_reranking?: never; prefer_implementation?: never; workspace_id?: never; }; required: string[]; }; } | { name: string; description: string; inputSchema: { type: string; properties: { query: { type: string; description: string; }; language: { type: string; description: string; }; limit: { type: string; description: string; }; directory_path?: never; file_path?: never; chunk_type?: never; threshold?: never; chunk_id?: never; context_lines?: never; force?: never; max_tokens?: never; enable_hybrid?: never; enable_reranking?: never; prefer_implementation?: never; workspace_id?: never; }; required: string[]; }; } | { name: string; description: string; inputSchema: { type: string; properties: { chunk_id: { type: string; description: string; }; limit: { type: string; description: string; }; threshold: { type: string; description: string; }; directory_path?: never; file_path?: never; query?: never; language?: never; chunk_type?: never; context_lines?: never; force?: never; max_tokens?: never; enable_hybrid?: never; enable_reranking?: never; prefer_implementation?: never; workspace_id?: never; }; required: string[]; }; } | { name: string; description: string; inputSchema: { type: string; properties: { chunk_id: { type: string; description: string; }; context_lines: { type: string; description: string; }; directory_path?: never; file_path?: never; query?: never; language?: never; chunk_type?: never; limit?: never; threshold?: never; force?: never; max_tokens?: never; enable_hybrid?: never; enable_reranking?: never; prefer_implementation?: never; workspace_id?: never; }; required: string[]; }; } | { name: string; description: string; inputSchema: { type: string; properties: { directory_path?: never; file_path?: never; query?: never; language?: never; chunk_type?: never; limit?: never; threshold?: never; chunk_id?: never; context_lines?: never; force?: never; max_tokens?: never; enable_hybrid?: never; enable_reranking?: never; prefer_implementation?: never; workspace_id?: never; }; required?: never; }; } | { name: string; description: string; inputSchema: { type: string; properties: { force: { type: string; description: string; default: boolean; }; directory_path?: never; file_path?: never; query?: never; language?: never; chunk_type?: never; limit?: never; threshold?: never; chunk_id?: never; context_lines?: never; max_tokens?: never; enable_hybrid?: never; enable_reranking?: never; prefer_implementation?: never; workspace_id?: never; }; required: never[]; }; } | { name: string; description: string; inputSchema: { type: string; properties: { query: { type: string; description: string; }; language: { type: string; description: string; }; chunk_type: { type: string; description: string; }; file_path: { type: string; description: string; }; limit: { type: string; description: string; }; max_tokens: { type: string; description: string; }; enable_hybrid: { type: string; description: string; }; enable_reranking: { type: string; description: string; }; prefer_implementation: { type: string; description: string; }; directory_path?: never; threshold?: never; chunk_id?: never; context_lines?: never; force?: never; workspace_id?: never; }; required: string[]; }; } | { name: string; description: string; inputSchema: { type: string; properties: { directory_path?: never; file_path?: never; query?: never; language?: never; chunk_type?: never; limit?: never; threshold?: never; chunk_id?: never; context_lines?: never; force?: never; max_tokens?: never; enable_hybrid?: never; enable_reranking?: never; prefer_implementation?: never; workspace_id?: never; }; required: never[]; }; } | { name: string; description: string; inputSchema: { type: string; properties: { workspace_id: { type: string; description: string; }; directory_path?: never; file_path?: never; query?: never; language?: never; chunk_type?: never; limit?: never; threshold?: never; chunk_id?: never; context_lines?: never; force?: never; max_tokens?: never; enable_hybrid?: never; enable_reranking?: never; prefer_implementation?: never; }; required: string[]; }; })[]; export declare function setupMcpTools(server: Server, indexingService: IndexingService, searchService: SearchService): void;