main
dart 27 lines 674 Bytes
Raw
1 enum ToolProviderType { builtIn, mcp, lmStudioServer }
2
3 class ToolDefinition {
4 final String name;
5 final String description;
6 final Map<String, dynamic> inputSchema;
7 final ToolProviderType providerType;
8 final String? providerRef;
9
10 const ToolDefinition({
11 required this.name,
12 required this.description,
13 required this.inputSchema,
14 required this.providerType,
15 this.providerRef,
16 });
17 }
18
19 class ToolExecutionResult {
20 final bool success;
21 final String output;
22 final String? error;
23
24 const ToolExecutionResult.success(this.output) : success = true, error = null;
25
26 const ToolExecutionResult.failure(this.error) : success = false, output = '';
27 }