@sofianedjerbi/knowledge-tree-mcp
Version:
MCP server for hierarchical project knowledge management
46 lines • 1.52 kB
TypeScript
/**
* Server context implementation
* Provides shared functionality for tool handlers
*/
import type { ServerContext, UsageLogEntry } from '../types/index.js';
import type { ServerOptions } from './types.js';
/**
* Implementation of the ServerContext interface
* This class encapsulates shared server functionality that tools need
*/
export declare class ServerContextImpl implements ServerContext {
private options;
readonly knowledgeRoot: string;
readonly logsDir: string;
readonly wsClients: Set<any>;
constructor(options: ServerOptions, wsClients: Set<any>);
/**
* Log general usage activity
*/
logUsage(entry: UsageLogEntry): Promise<void>;
/**
* Log knowledge entry access
*/
logAccess(path: string, metadata?: Record<string, any>): Promise<void>;
/**
* Log search activity
*/
logSearch(query: string, metadata?: Record<string, any>): Promise<void>;
/**
* Log tool usage
*/
logToolCall(tool: string, metadata?: Record<string, any>): Promise<void>;
/**
* Scan the knowledge tree for all entries
*/
scanKnowledgeTree(): Promise<string[]>;
/**
* Read knowledge entry with depth traversal
*/
readWithDepth(fullPath: string, relativePath: string, depth: number, visited: Set<string>): Promise<any>;
/**
* Broadcast updates to all connected WebSocket clients
*/
broadcastUpdate(type: string, data: any): Promise<void>;
}
//# sourceMappingURL=ServerContext.d.ts.map