#!/usr/bin/env node
/**
 * Remote MCP Server for Memory Service
 * HTTP-based MCP server with Clerk OAuth authentication
 */
interface JsonRpcRequest {
    jsonrpc: '2.0';
    id?: string | number | null;
    method: string;
    params?: any;
}
interface JsonRpcResponse {
    jsonrpc: '2.0';
    id: string | number;
    result?: any;
    error?: {
        code: number;
        message: string;
        data?: any;
    };
}
/**
 * Remote MCP Server with HTTP transport and OAuth authentication
 */
export declare class RemoteMCPServer {
    private fastify;
    private memoryCore;
    private db;
    private sessionManager;
    private debugEnabled;
    private requestCounter;
    private port;
    private host;
    constructor(port?: number, host?: string);
    private logDebug;
    private logError;
    private ensureValidId;
    private setupMiddleware;
    private setupRoutes;
    private handleMCPRequest;
    private processRequest;
    private handleInitialize;
    private handleToolsList;
    private handleToolsCall;
    start(): Promise<void>;
    stop(): Promise<void>;
    /**
     * Handle a single JSON-RPC request (for serverless/Vercel)
     */
    handleRequest(rpcRequest: JsonRpcRequest, authHeader: string): Promise<JsonRpcResponse>;
}
export {};
//# sourceMappingURL=remote-mcp-server.d.ts.map