import { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js'; import type { AnySchema, ZodRawShapeCompat } from '@modelcontextprotocol/sdk/server/zod-compat.js'; import type { Connection } from '@salesforce/core'; import { type McpServerConfig } from './config/mcp-config.js'; import type { ToolHandler } from './tools/index.js'; /** * Tool registration entry for declarative tool setup. */ type ToolRegistration = { readonly name: string; readonly description: string; readonly inputSchema: AnySchema | ZodRawShapeCompat; readonly handler: ToolHandler; }; /** * Complete tool registry with descriptions, schemas, and handlers. * * Handlers accept typed params — casts at this boundary are safe because * the McpServer SDK validates input via Zod schemas before calling handlers. */ export declare function getToolRegistrations(): ToolRegistration[]; /** * Creates and configures the Cuneiform MCP server using McpServer. * * Registers all 18 tools via `registerTool()` with native Zod schema support, * eliminating the manual dispatch layer and JSON Schema duplication. * * @param config - MCP server configuration * @param connection - Salesforce connection * @returns Configured McpServer instance */ export declare function createMcpServer(config: McpServerConfig, connection: Connection): McpServer; /** * Starts the MCP server with stdio transport. * * @param server - Configured McpServer instance * @param debug - Enable debug logging */ export declare function startMcpServer(server: McpServer, debug?: boolean): Promise; export {};