1+ import { Server } from '@modelcontextprotocol/sdk/server/index.js' ;
2+ import { CallToolResult } from '@modelcontextprotocol/sdk/types.js' ;
3+ import type { EnvironmentValidation , McpResult } from './types/index.js' ;
4+ export declare class XcodeServer {
5+ server : Server ;
6+ currentProjectPath : string | null ;
7+ private environmentValidation ;
8+ private isValidated ;
9+ private canOperateInDegradedMode ;
10+ constructor ( ) ;
11+ /**
12+ * Validates the environment and sets up the server accordingly
13+ */
14+ validateEnvironment ( ) : Promise < EnvironmentValidation > ;
15+ /**
16+ * Checks if a tool operation should be blocked due to environment issues
17+ */
18+ validateToolOperation ( toolName : string ) : Promise < McpResult | null > ;
19+ /**
20+ * Determines tool limitations based on environment validation
21+ */
22+ private getToolLimitations ;
23+ /**
24+ * Enhances error messages with configuration guidance
25+ */
26+ enhanceErrorWithGuidance ( error : Error | {
27+ message ?: string ;
28+ } , _toolName : string ) : Promise < string | null > ;
29+ private setupToolHandlers ;
30+ openProject ( projectPath : string ) : Promise < McpResult > ;
31+ executeJXA ( script : string ) : Promise < string > ;
32+ validateProjectPath ( projectPath : string ) : McpResult | null ;
33+ findProjectDerivedData ( projectPath : string ) : Promise < string | null > ;
34+ getLatestBuildLog ( projectPath : string ) : Promise < import ( "./types/index.js" ) . BuildLogInfo | null > ;
35+ build ( projectPath : string , schemeName ?: string , destination ?: string | null ) : Promise < import ( './types/index.js' ) . McpResult > ;
36+ clean ( projectPath : string ) : Promise < import ( './types/index.js' ) . McpResult > ;
37+ test ( projectPath : string , destination : string , commandLineArguments ?: string [ ] ) : Promise < import ( './types/index.js' ) . McpResult > ;
38+ run ( projectPath : string , commandLineArguments ?: string [ ] ) : Promise < import ( './types/index.js' ) . McpResult > ;
39+ debug ( projectPath : string , scheme : string , skipBuilding ?: boolean ) : Promise < import ( './types/index.js' ) . McpResult > ;
40+ stop ( projectPath ?: string ) : Promise < import ( './types/index.js' ) . McpResult > ;
41+ getSchemes ( projectPath : string ) : Promise < import ( './types/index.js' ) . McpResult > ;
42+ getRunDestinations ( projectPath : string ) : Promise < import ( './types/index.js' ) . McpResult > ;
43+ setActiveScheme ( projectPath : string , schemeName : string ) : Promise < import ( './types/index.js' ) . McpResult > ;
44+ getWorkspaceInfo ( projectPath : string ) : Promise < import ( './types/index.js' ) . McpResult > ;
45+ getProjects ( projectPath : string ) : Promise < import ( './types/index.js' ) . McpResult > ;
46+ openFile ( filePath : string , lineNumber ?: number ) : Promise < import ( './types/index.js' ) . McpResult > ;
47+ parseBuildLog ( logPath : string , retryCount ?: number , maxRetries ?: number ) : Promise < import ( "./types/index.js" ) . ParsedBuildResults > ;
48+ canParseLog ( logPath : string ) : Promise < boolean > ;
49+ getCustomDerivedDataLocationFromXcodePreferences ( ) : Promise < string | null > ;
50+ /**
51+ * Call a tool directly without going through the MCP protocol
52+ * This is used by the CLI to bypass the JSON-RPC layer
53+ */
54+ callToolDirect ( name : string , args ?: Record < string , unknown > ) : Promise < CallToolResult > ;
55+ }
56+ //# sourceMappingURL=XcodeServer.d.ts.map
0 commit comments