UNPKG

@gebrai/gebrai

Version:

Model Context Protocol server for GeoGebra mathematical visualization

76 lines 1.84 kB
import { EventEmitter } from 'events'; import { JsonRpcResponse, McpServerConfig } from './types/mcp'; /** * MCP Server implementation following JSON-RPC 2.0 protocol over stdio */ export declare class McpServer extends EventEmitter { private config; private isRunning; private isInitialized; private readline; constructor(config: McpServerConfig); /** * Start the MCP server with stdio communication */ start(): Promise<void>; /** * Stop the MCP server */ stop(): Promise<void>; /** * Process a JSON-RPC request */ processRequest(requestData: unknown): Promise<JsonRpcResponse | null>; /** * Handle initialize requests */ private handleInitialize; /** * Handle notifications/initialized requests (notification, no response expected) */ private handleInitialized; /** * Handle tools/list requests */ private handleToolsList; /** * Handle tools/call requests */ private handleToolsCall; /** * Create an error response */ private createErrorResponse; /** * Create a tools/list error response */ private createToolsListErrorResponse; /** * Create a tools/call error response */ private createToolsCallErrorResponse; /** * Create an initialize error response */ private createInitializeErrorResponse; /** * Get server status */ getStatus(): { name: string; version: string; description: string; isRunning: boolean; toolCount: number; uptime: number; }; /** * Get server configuration */ getConfig(): McpServerConfig; /** * Check if server is running */ isServerRunning(): boolean; } //# sourceMappingURL=server.d.ts.map