import type { Server } from 'node:http'; import { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js'; export interface McpServerConfig { port: number; bearerToken: string; rateLimit?: { ratePerSec: number; burst: number; }; version: string; logDir?: string; logLevel?: 'debug' | 'info' | 'warn' | 'error'; maxBodySize?: number; } export interface McpServerInstance { httpServer: Server; start(): Promise; stop(): Promise; } /** * Creates the MCP HTTP server with multi-session support. * * Each MCP client gets its own McpServer + Transport pair so multiple Claude * Code instances can share the daemon without interfering. Stale sessions * (no activity for 30 minutes) are swept automatically. * * @param registerTools — called on every new McpServer to register provider * tools and resources. Omit for a bare server (useful in tests). */ export declare function createMcpServer(config: McpServerConfig, getProviderStatuses: () => Record, registerTools?: (mcpServer: McpServer) => void): McpServerInstance; //# sourceMappingURL=server.d.ts.map