@@ -125,127 +125,68 @@ export interface IMCPProviderParams {
125125 toolTimeout ?: number ;
126126}
127127
128- /**
129- * Intent analysis results
130- */
131128export interface IUserIntent {
132- /** Primary intent type */
133129 type : 'coding' | 'documentation' | 'debugging' | 'explanation' | 'generation' | 'completion' ;
134- /** Confidence score 0-1 */
135130 confidence : number ;
136- /** Extracted keywords */
137131 keywords : string [ ] ;
138- /** Detected domains */
139132 domains : string [ ] ;
140- /** Query complexity level */
141133 complexity : 'low' | 'medium' | 'high' ;
142- /** Original query */
143134 originalQuery : string ;
144135}
145136
146- /**
147- * Resource relevance score
148- */
149137export interface IResourceScore {
150- /** Resource reference */
151138 resource : IMCPResource ;
152- /** Server name */
153139 serverName : string ;
154- /** Overall relevance score 0-1 */
155140 score : number ;
156- /** Breakdown of score components */
157141 components : {
158142 keywordMatch : number ;
159143 domainRelevance : number ;
160144 typeRelevance : number ;
161145 priority : number ;
162146 freshness : number ;
163147 } ;
164- /** Explanation of why this resource was selected */
165148 reasoning : string ;
166149}
167150
168- /**
169- * Enhanced resource selection result
170- */
171151export interface IResourceSelectionResult {
172- /** Selected resources with scores */
173152 selectedResources : IResourceScore [ ] ;
174- /** Total resources considered */
175153 totalResourcesConsidered : number ;
176- /** Selection strategy used */
177154 strategy : 'priority' | 'semantic' | 'hybrid' ;
178- /** Intent analysis result */
179155 intent : IUserIntent ;
180156}
181157
182- /**
183- * Extended MCP provider configuration with intent matching
184- */
185158export interface IEnhancedMCPProviderParams extends IMCPProviderParams {
186- /** Enable intelligent resource selection */
187159 enableIntentMatching ?: boolean ;
188- /** Minimum relevance score threshold */
189160 relevanceThreshold ?: number ;
190- /** Resource selection strategy */
191161 selectionStrategy ?: 'priority' | 'semantic' | 'hybrid' ;
192- /** Domain-specific weights */
193162 domainWeights ?: Record < string , number > ;
194- /** Enable query expansion */
195163 enableQueryExpansion ?: boolean ;
196- /** Maximum query expansion terms */
197164 maxExpansionTerms ?: number ;
198165}
199166
200- /**
201- * Extended IParams interface with MCP support
202- */
203167export interface IMCPAwareParams {
204- /** MCP-specific parameters */
205168 mcp ?: IEnhancedMCPProviderParams ;
206169}
207170
208- /**
209- * Record of a single tool call during code execution
210- */
211171export interface IToolCallRecord {
212- /** Name of the tool that was called */
213172 name : string ;
214- /** Arguments passed to the tool */
215173 arguments : Record < string , any > ;
216- /** Full result payload from the tool */
217174 result : IMCPToolResult ;
218- /** Execution time for this specific tool call in milliseconds */
219175 executionTime : number ;
220176}
221177
222- /**
223- * Code execution result for MCP code mode
224- */
225178export interface ICodeExecutionResult {
226- /** Whether the execution was successful */
227179 success : boolean ;
228- /** Console output from the execution */
229180 output : string ;
230- /** Error message if execution failed */
231181 error ?: string ;
232- /** Execution time in milliseconds */
233182 executionTime : number ;
234- /** List of MCP tools called during execution */
235183 toolsCalled : string [ ] ;
236- /** Full records of all tool calls with their payloads */
237184 toolCallRecords : IToolCallRecord [ ] ;
238- /** Return value from the executed code */
239185 returnValue ?: any ;
240186}
241187
242- /**
243- * Execution context provided to code execution sandbox
244- */
245188export interface IExecutionContext {
246- /** Execute an MCP tool by name */
247189 executeToolCall : ( name : string , args : Record < string , any > ) => Promise < IMCPToolResult > ;
248- /** Console interface for logging */
249190 console : {
250191 log : ( ...args : any [ ] ) => void ;
251192 error : ( ...args : any [ ] ) => void ;
0 commit comments