diff options
Diffstat (limited to 'packages/server/src/tools/tools.ts')
| -rw-r--r-- | packages/server/src/tools/tools.ts | 20 |
1 files changed, 16 insertions, 4 deletions
diff --git a/packages/server/src/tools/tools.ts b/packages/server/src/tools/tools.ts index e5d0c7cf..a2e7fa06 100644 --- a/packages/server/src/tools/tools.ts +++ b/packages/server/src/tools/tools.ts @@ -212,12 +212,24 @@ export interface ToolExecuteConfirmationDetails { rootCommand: string; } +export interface ToolMcpConfirmationDetails { + type: 'mcp'; + title: string; + serverName: string; + toolName: string; + toolDisplayName: string; + onConfirm: (outcome: ToolConfirmationOutcome) => Promise<void> | void; +} + export type ToolCallConfirmationDetails = | ToolEditConfirmationDetails - | ToolExecuteConfirmationDetails; + | ToolExecuteConfirmationDetails + | ToolMcpConfirmationDetails; export enum ToolConfirmationOutcome { - ProceedOnce, - ProceedAlways, - Cancel, + ProceedOnce = 'proceed_once', + ProceedAlways = 'proceed_always', + ProceedAlwaysServer = 'proceed_always_server', + ProceedAlwaysTool = 'proceed_always_tool', + Cancel = 'cancel', } |
