UNPKG

knowledgegraph-mcp

Version:

MCP server for enabling persistent knowledge storage for Claude through a knowledge graph with multiple storage backends

60 lines 2.37 kB
import Database from 'better-sqlite3'; import { Entity } from '../../core.js'; import { SearchConfig, PaginationOptions, PaginationResult } from '../types.js'; import { BaseSearchStrategy } from './base-strategy.js'; /** * SQLite search strategy - uses client-side fuzzy search only * SQLite doesn't have built-in fuzzy search capabilities like PostgreSQL, * so we always use Fuse.js for fuzzy searching */ export declare class SQLiteFuzzyStrategy extends BaseSearchStrategy { private db; private project; private searchLimits; constructor(config: SearchConfig, db: Database.Database, project: string); canUseDatabase(): boolean; searchDatabase(query: string | string[], threshold: number, project?: string): Promise<Entity[]>; searchClientSide(entities: Entity[], query: string | string[]): Entity[]; private searchSingleClientSide; /** * Get all entities for a project from SQLite database * This is used to load entities for client-side search * Respects maxClientSideEntities limit to prevent memory issues */ getAllEntities(project?: string): Promise<Entity[]>; /** * Perform exact search at database level for better performance * This can be used as an optimization for exact searches */ searchExact(query: string | string[], project?: string): Promise<Entity[]>; /** * Optimized multiple exact search using single SQL query with OR conditions * This provides better performance than sequential searches */ private searchExactMultiple; /** * Single exact search implementation */ private searchExactSingle; /** * Get all entities with pagination support */ getAllEntitiesPaginated(pagination: PaginationOptions, project?: string): Promise<PaginationResult<Entity>>; /** * Perform exact search with pagination support */ searchExactPaginated(query: string | string[], pagination: PaginationOptions, project?: string): Promise<PaginationResult<Entity>>; /** * Single exact search with pagination */ private searchExactSinglePaginated; /** * Multiple exact search with pagination */ private searchExactMultiplePaginated; /** * Safely parse JSON with fallback to default value */ private safeJsonParse; } //# sourceMappingURL=sqlite-strategy.d.ts.map