@opentabs-dev/mcp-server 0.0.61 → 0.0.62
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/browser-tools/analyze-site.d.ts.map +1 -1
- package/dist/browser-tools/analyze-site.js +2 -0
- package/dist/browser-tools/analyze-site.js.map +1 -1
- package/dist/browser-tools/clear-console-logs.d.ts.map +1 -1
- package/dist/browser-tools/clear-console-logs.js +2 -0
- package/dist/browser-tools/clear-console-logs.js.map +1 -1
- package/dist/browser-tools/click-element.d.ts.map +1 -1
- package/dist/browser-tools/click-element.js +2 -0
- package/dist/browser-tools/click-element.js.map +1 -1
- package/dist/browser-tools/close-tab.d.ts.map +1 -1
- package/dist/browser-tools/close-tab.js +2 -0
- package/dist/browser-tools/close-tab.js.map +1 -1
- package/dist/browser-tools/definition.d.ts +4 -0
- package/dist/browser-tools/definition.d.ts.map +1 -1
- package/dist/browser-tools/definition.js.map +1 -1
- package/dist/browser-tools/delete-cookies.d.ts.map +1 -1
- package/dist/browser-tools/delete-cookies.js +2 -0
- package/dist/browser-tools/delete-cookies.js.map +1 -1
- package/dist/browser-tools/disable-network-capture.d.ts.map +1 -1
- package/dist/browser-tools/disable-network-capture.js +2 -0
- package/dist/browser-tools/disable-network-capture.js.map +1 -1
- package/dist/browser-tools/enable-network-capture.d.ts.map +1 -1
- package/dist/browser-tools/enable-network-capture.js +2 -0
- package/dist/browser-tools/enable-network-capture.js.map +1 -1
- package/dist/browser-tools/execute-script.d.ts.map +1 -1
- package/dist/browser-tools/execute-script.js +2 -0
- package/dist/browser-tools/execute-script.js.map +1 -1
- package/dist/browser-tools/export-har.d.ts.map +1 -1
- package/dist/browser-tools/export-har.js +2 -0
- package/dist/browser-tools/export-har.js.map +1 -1
- package/dist/browser-tools/extension-check-adapter.d.ts.map +1 -1
- package/dist/browser-tools/extension-check-adapter.js +2 -0
- package/dist/browser-tools/extension-check-adapter.js.map +1 -1
- package/dist/browser-tools/extension-force-reconnect.d.ts.map +1 -1
- package/dist/browser-tools/extension-force-reconnect.js +2 -0
- package/dist/browser-tools/extension-force-reconnect.js.map +1 -1
- package/dist/browser-tools/extension-get-logs.d.ts +1 -1
- package/dist/browser-tools/extension-get-logs.d.ts.map +1 -1
- package/dist/browser-tools/extension-get-logs.js +2 -0
- package/dist/browser-tools/extension-get-logs.js.map +1 -1
- package/dist/browser-tools/extension-get-side-panel.d.ts.map +1 -1
- package/dist/browser-tools/extension-get-side-panel.js +2 -0
- package/dist/browser-tools/extension-get-side-panel.js.map +1 -1
- package/dist/browser-tools/extension-get-state.d.ts.map +1 -1
- package/dist/browser-tools/extension-get-state.js +2 -0
- package/dist/browser-tools/extension-get-state.js.map +1 -1
- package/dist/browser-tools/focus-tab.d.ts.map +1 -1
- package/dist/browser-tools/focus-tab.js +2 -0
- package/dist/browser-tools/focus-tab.js.map +1 -1
- package/dist/browser-tools/get-console-logs.d.ts +1 -1
- package/dist/browser-tools/get-console-logs.d.ts.map +1 -1
- package/dist/browser-tools/get-console-logs.js +2 -0
- package/dist/browser-tools/get-console-logs.js.map +1 -1
- package/dist/browser-tools/get-cookies.d.ts.map +1 -1
- package/dist/browser-tools/get-cookies.js +2 -0
- package/dist/browser-tools/get-cookies.js.map +1 -1
- package/dist/browser-tools/get-network-requests.d.ts.map +1 -1
- package/dist/browser-tools/get-network-requests.js +2 -0
- package/dist/browser-tools/get-network-requests.js.map +1 -1
- package/dist/browser-tools/get-page-html.d.ts.map +1 -1
- package/dist/browser-tools/get-page-html.js +2 -0
- package/dist/browser-tools/get-page-html.js.map +1 -1
- package/dist/browser-tools/get-resource-content.d.ts.map +1 -1
- package/dist/browser-tools/get-resource-content.js +2 -0
- package/dist/browser-tools/get-resource-content.js.map +1 -1
- package/dist/browser-tools/get-storage.d.ts.map +1 -1
- package/dist/browser-tools/get-storage.js +2 -0
- package/dist/browser-tools/get-storage.js.map +1 -1
- package/dist/browser-tools/get-tab-content.d.ts.map +1 -1
- package/dist/browser-tools/get-tab-content.js +2 -0
- package/dist/browser-tools/get-tab-content.js.map +1 -1
- package/dist/browser-tools/get-tab-info.d.ts.map +1 -1
- package/dist/browser-tools/get-tab-info.js +2 -0
- package/dist/browser-tools/get-tab-info.js.map +1 -1
- package/dist/browser-tools/get-websocket-frames.d.ts.map +1 -1
- package/dist/browser-tools/get-websocket-frames.js +2 -0
- package/dist/browser-tools/get-websocket-frames.js.map +1 -1
- package/dist/browser-tools/handle-dialog.d.ts.map +1 -1
- package/dist/browser-tools/handle-dialog.js +2 -0
- package/dist/browser-tools/handle-dialog.js.map +1 -1
- package/dist/browser-tools/hover-element.d.ts.map +1 -1
- package/dist/browser-tools/hover-element.js +2 -0
- package/dist/browser-tools/hover-element.js.map +1 -1
- package/dist/browser-tools/index.d.ts.map +1 -1
- package/dist/browser-tools/index.js +5 -0
- package/dist/browser-tools/index.js.map +1 -1
- package/dist/browser-tools/list-resources.d.ts.map +1 -1
- package/dist/browser-tools/list-resources.js +2 -0
- package/dist/browser-tools/list-resources.js.map +1 -1
- package/dist/browser-tools/list-tabs.d.ts.map +1 -1
- package/dist/browser-tools/list-tabs.js +2 -0
- package/dist/browser-tools/list-tabs.js.map +1 -1
- package/dist/browser-tools/navigate-tab.d.ts.map +1 -1
- package/dist/browser-tools/navigate-tab.js +2 -0
- package/dist/browser-tools/navigate-tab.js.map +1 -1
- package/dist/browser-tools/open-tab.d.ts.map +1 -1
- package/dist/browser-tools/open-tab.js +2 -0
- package/dist/browser-tools/open-tab.js.map +1 -1
- package/dist/browser-tools/plugin-list-tabs.d.ts.map +1 -1
- package/dist/browser-tools/plugin-list-tabs.js +2 -0
- package/dist/browser-tools/plugin-list-tabs.js.map +1 -1
- package/dist/browser-tools/press-key.d.ts.map +1 -1
- package/dist/browser-tools/press-key.js +2 -0
- package/dist/browser-tools/press-key.js.map +1 -1
- package/dist/browser-tools/query-elements.d.ts.map +1 -1
- package/dist/browser-tools/query-elements.js +2 -0
- package/dist/browser-tools/query-elements.js.map +1 -1
- package/dist/browser-tools/reload-extension.d.ts.map +1 -1
- package/dist/browser-tools/reload-extension.js +2 -0
- package/dist/browser-tools/reload-extension.js.map +1 -1
- package/dist/browser-tools/screenshot-tab.d.ts.map +1 -1
- package/dist/browser-tools/screenshot-tab.js +2 -0
- package/dist/browser-tools/screenshot-tab.js.map +1 -1
- package/dist/browser-tools/scroll.d.ts.map +1 -1
- package/dist/browser-tools/scroll.js +2 -0
- package/dist/browser-tools/scroll.js.map +1 -1
- package/dist/browser-tools/select-option.d.ts.map +1 -1
- package/dist/browser-tools/select-option.js +2 -0
- package/dist/browser-tools/select-option.js.map +1 -1
- package/dist/browser-tools/set-cookie.d.ts.map +1 -1
- package/dist/browser-tools/set-cookie.js +2 -0
- package/dist/browser-tools/set-cookie.js.map +1 -1
- package/dist/browser-tools/type-text.d.ts.map +1 -1
- package/dist/browser-tools/type-text.js +2 -0
- package/dist/browser-tools/type-text.js.map +1 -1
- package/dist/browser-tools/wait-for-element.d.ts.map +1 -1
- package/dist/browser-tools/wait-for-element.js +2 -0
- package/dist/browser-tools/wait-for-element.js.map +1 -1
- package/dist/config.d.ts +16 -41
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +56 -111
- package/dist/config.js.map +1 -1
- package/dist/discovery.d.ts +1 -4
- package/dist/discovery.d.ts.map +1 -1
- package/dist/discovery.js +5 -17
- package/dist/discovery.js.map +1 -1
- package/dist/extension-handlers.d.ts +21 -14
- package/dist/extension-handlers.d.ts.map +1 -1
- package/dist/extension-handlers.js +108 -188
- package/dist/extension-handlers.js.map +1 -1
- package/dist/extension-protocol.d.ts +4 -9
- package/dist/extension-protocol.d.ts.map +1 -1
- package/dist/extension-protocol.js +16 -45
- package/dist/extension-protocol.js.map +1 -1
- package/dist/file-watcher.js +2 -2
- package/dist/file-watcher.js.map +1 -1
- package/dist/http-routes.d.ts.map +1 -1
- package/dist/http-routes.js +5 -9
- package/dist/http-routes.js.map +1 -1
- package/dist/loader.d.ts +2 -4
- package/dist/loader.d.ts.map +1 -1
- package/dist/loader.js +6 -5
- package/dist/loader.js.map +1 -1
- package/dist/mcp-setup.d.ts +9 -9
- package/dist/mcp-setup.d.ts.map +1 -1
- package/dist/mcp-setup.js +39 -26
- package/dist/mcp-setup.js.map +1 -1
- package/dist/mcp-tool-dispatch.d.ts +11 -12
- package/dist/mcp-tool-dispatch.d.ts.map +1 -1
- package/dist/mcp-tool-dispatch.js +86 -125
- package/dist/mcp-tool-dispatch.js.map +1 -1
- package/dist/plugin-management.d.ts +0 -1
- package/dist/plugin-management.d.ts.map +1 -1
- package/dist/plugin-management.js +1 -2
- package/dist/plugin-management.js.map +1 -1
- package/dist/registry.d.ts +2 -4
- package/dist/registry.d.ts.map +1 -1
- package/dist/registry.js +1 -12
- package/dist/registry.js.map +1 -1
- package/dist/reload.d.ts.map +1 -1
- package/dist/reload.js +40 -35
- package/dist/reload.js.map +1 -1
- package/dist/state.d.ts +18 -44
- package/dist/state.d.ts.map +1 -1
- package/dist/state.js +14 -43
- package/dist/state.js.map +1 -1
- package/dist/version-check.d.ts.map +1 -1
- package/dist/version-check.js +1 -1
- package/dist/version-check.js.map +1 -1
- package/package.json +1 -1
package/dist/mcp-setup.d.ts
CHANGED
|
@@ -68,11 +68,11 @@ declare const createMcpServer: (state: ServerState) => Promise<McpServerInstance
|
|
|
68
68
|
*/
|
|
69
69
|
declare const notifyToolListChanged: (server: McpServerInstance) => void;
|
|
70
70
|
/**
|
|
71
|
-
* Returns
|
|
72
|
-
*
|
|
73
|
-
*
|
|
71
|
+
* Returns all tools for MCP tools/list responses regardless of permission state.
|
|
72
|
+
* Each tool's description is prefixed with its permission state indicator so that
|
|
73
|
+
* agents can see disabled tools and tell the user to enable them.
|
|
74
74
|
*/
|
|
75
|
-
export declare const
|
|
75
|
+
export declare const getAllToolsList: (state: ServerState) => Array<{
|
|
76
76
|
name: string;
|
|
77
77
|
description: string;
|
|
78
78
|
inputSchema: Record<string, unknown>;
|
|
@@ -91,13 +91,13 @@ export interface ToolCallableError {
|
|
|
91
91
|
/** Discriminated union returned by {@link checkToolCallable} indicating success or failure. */
|
|
92
92
|
export type ToolCallableResult = ToolCallableOk | ToolCallableError;
|
|
93
93
|
/**
|
|
94
|
-
* Check if a prefixed plugin tool name is callable: exists in the
|
|
95
|
-
*
|
|
96
|
-
* (before this check) in the tools/call handler.
|
|
94
|
+
* Check if a prefixed plugin tool name is callable: verifies it exists in the
|
|
95
|
+
* tool lookup. Permission checks happen at dispatch time, not here. Browser
|
|
96
|
+
* tools are handled separately (before this check) in the tools/call handler.
|
|
97
97
|
*
|
|
98
|
-
* @param state - Server state containing the plugin registry
|
|
98
|
+
* @param state - Server state containing the plugin registry
|
|
99
99
|
* @param prefixedToolName - Fully prefixed tool name (e.g., 'slack_send_message')
|
|
100
|
-
* @returns An ok result with pluginName/toolName if
|
|
100
|
+
* @returns An ok result with pluginName/toolName if found, or an error result with a message
|
|
101
101
|
*/
|
|
102
102
|
export declare const checkToolCallable: (state: ServerState, prefixedToolName: string) => ToolCallableResult;
|
|
103
103
|
export { sanitizeOutput } from './mcp-tool-dispatch.js';
|
package/dist/mcp-setup.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp-setup.d.ts","sourceRoot":"","sources":["../src/mcp-setup.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAKH,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"mcp-setup.d.ts","sourceRoot":"","sources":["../src/mcp-setup.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAKH,OAAO,KAAK,EAAqB,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAErF,OAAO,KAAK,EAAqB,WAAW,EAAmB,MAAM,YAAY,CAAC;AAwBlF,0DAA0D;AAC1D,UAAU,iBAAiB;IACzB,iBAAiB,EAAE,CACjB,MAAM,EAAE,OAAO,EACf,OAAO,EAAE,CACP,OAAO,EAAE;QAAE,MAAM,EAAE;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;YAAC,GAAG,CAAC,EAAE,MAAM,CAAA;SAAE,CAAA;KAAE,EACxF,KAAK,EAAE,mBAAmB,KACvB,OAAO,KACT,IAAI,CAAC;IACV,OAAO,EAAE,CAAC,SAAS,EAAE,OAAO,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC/C,mBAAmB,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IACzC,kBAAkB,EAAE,CAAC,MAAM,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,OAAO,CAAA;KAAE,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CACnG;AAgBD;;;;GAIG;AACH,QAAA,MAAM,yBAAyB,GAAI,OAAO,WAAW,KAAG,IAcvD,CAAC;AAEF;;;;;;;;;GASG;AACH,QAAA,MAAM,mBAAmB,GAAI,QAAQ,iBAAiB,EAAE,OAAO,WAAW,KAAG,IAwC5E,CAAC;AAEF;;;GAGG;AACH,QAAA,MAAM,eAAe,GAAU,OAAO,WAAW,KAAG,OAAO,CAAC,iBAAiB,CAe5E,CAAC;AAEF;;;;GAIG;AACH,QAAA,MAAM,qBAAqB,GAAI,QAAQ,iBAAiB,KAAG,IAI1D,CAAC;AAeF;;;;GAIG;AACH,eAAO,MAAM,eAAe,GAC1B,OAAO,WAAW,KACjB,KAAK,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAAE,CAkCnF,CAAC;AAEF,2DAA2D;AAC3D,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,IAAI,CAAC;IACT,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,wEAAwE;AACxE,MAAM,WAAW,iBAAiB;IAChC,EAAE,EAAE,KAAK,CAAC;IACV,KAAK,EAAE,MAAM,CAAC;CACf;AAED,+FAA+F;AAC/F,MAAM,MAAM,kBAAkB,GAAG,cAAc,GAAG,iBAAiB,CAAC;AAEpE;;;;;;;;GAQG;AACH,eAAO,MAAM,iBAAiB,GAAI,OAAO,WAAW,EAAE,kBAAkB,MAAM,KAAG,kBAIhF,CAAC;AAIF,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,YAAY,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,CAAC;AACvD,OAAO,EAAE,eAAe,EAAE,mBAAmB,EAAE,yBAAyB,EAAE,qBAAqB,EAAE,CAAC"}
|
package/dist/mcp-setup.js
CHANGED
|
@@ -24,8 +24,7 @@ import { CallToolRequestSchema, ListToolsRequestSchema } from '@modelcontextprot
|
|
|
24
24
|
import { z } from 'zod';
|
|
25
25
|
import { log } from './logger.js';
|
|
26
26
|
import { handleBrowserToolCall, handlePluginToolCall } from './mcp-tool-dispatch.js';
|
|
27
|
-
import {
|
|
28
|
-
import { isBrowserToolEnabled, isToolEnabled, prefixedToolName } from './state.js';
|
|
27
|
+
import { getToolPermission, prefixedToolName } from './state.js';
|
|
29
28
|
import { version } from './version.js';
|
|
30
29
|
/**
|
|
31
30
|
* Dynamically import the MCP SDK Server constructor.
|
|
@@ -52,7 +51,9 @@ const rebuildCachedBrowserTools = (state) => {
|
|
|
52
51
|
return {
|
|
53
52
|
name: bt.name,
|
|
54
53
|
description: bt.description,
|
|
54
|
+
...(bt.summary ? { summary: bt.summary } : {}),
|
|
55
55
|
...(bt.icon ? { icon: bt.icon } : {}),
|
|
56
|
+
...(bt.group ? { group: bt.group } : {}),
|
|
56
57
|
inputSchema: schema,
|
|
57
58
|
tool: bt,
|
|
58
59
|
};
|
|
@@ -69,11 +70,13 @@ const rebuildCachedBrowserTools = (state) => {
|
|
|
69
70
|
* 2. Hot reload sequence in reload.ts — for existing sessions
|
|
70
71
|
*/
|
|
71
72
|
const registerMcpHandlers = (server, state) => {
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
73
|
+
const dispatchCallbacks = {
|
|
74
|
+
onToolConfigChanged: () => notifyToolListChanged(server),
|
|
75
|
+
};
|
|
76
|
+
// Handler: tools/list — return all plugin tools + browser tools with
|
|
77
|
+
// description prefixes indicating their permission state.
|
|
75
78
|
server.setRequestHandler(ListToolsRequestSchema, () => ({
|
|
76
|
-
tools:
|
|
79
|
+
tools: getAllToolsList(state),
|
|
77
80
|
}));
|
|
78
81
|
// Handler: tools/call — dispatch to extension or handle browser tool locally.
|
|
79
82
|
// Delegates to handleBrowserToolCall or handlePluginToolCall for the actual logic.
|
|
@@ -84,9 +87,9 @@ const registerMcpHandlers = (server, state) => {
|
|
|
84
87
|
// Browser tools are few and fixed.
|
|
85
88
|
const cachedBt = state.cachedBrowserTools.find(c => c.name === toolName);
|
|
86
89
|
if (cachedBt) {
|
|
87
|
-
return handleBrowserToolCall(state, toolName, args, cachedBt, extra);
|
|
90
|
+
return handleBrowserToolCall(state, toolName, args, cachedBt, extra, dispatchCallbacks);
|
|
88
91
|
}
|
|
89
|
-
// O(1) plugin tool lookup
|
|
92
|
+
// O(1) plugin tool lookup via pre-built map
|
|
90
93
|
const callableCheck = checkToolCallable(state, toolName);
|
|
91
94
|
if (!callableCheck.ok) {
|
|
92
95
|
return {
|
|
@@ -98,7 +101,7 @@ const registerMcpHandlers = (server, state) => {
|
|
|
98
101
|
log.debug('tool.call:', toolName, '→', `${foundPlugin}/${foundTool}`);
|
|
99
102
|
// Safe to assert: checkToolCallable verified the tool exists in registry.toolLookup
|
|
100
103
|
const lookup = state.registry.toolLookup.get(toolName);
|
|
101
|
-
return handlePluginToolCall(state, toolName, args, foundPlugin, foundTool, lookup, extra);
|
|
104
|
+
return handlePluginToolCall(state, toolName, args, foundPlugin, foundTool, lookup, extra, dispatchCallbacks);
|
|
102
105
|
});
|
|
103
106
|
};
|
|
104
107
|
/**
|
|
@@ -127,17 +130,30 @@ const notifyToolListChanged = (server) => {
|
|
|
127
130
|
});
|
|
128
131
|
};
|
|
129
132
|
/**
|
|
130
|
-
* Returns the
|
|
131
|
-
*
|
|
132
|
-
*
|
|
133
|
+
* Returns the prefix to prepend to a tool's description based on its permission state.
|
|
134
|
+
* - 'off' → '[Disabled] '
|
|
135
|
+
* - 'ask' → '[Requires approval] '
|
|
136
|
+
* - 'auto' → '' (no prefix)
|
|
133
137
|
*/
|
|
134
|
-
|
|
138
|
+
const descriptionPrefix = (state, pluginName, toolName) => {
|
|
139
|
+
const permission = getToolPermission(state, pluginName, toolName);
|
|
140
|
+
if (permission === 'off')
|
|
141
|
+
return '[Disabled] ';
|
|
142
|
+
if (permission === 'ask')
|
|
143
|
+
return '[Requires approval] ';
|
|
144
|
+
return '';
|
|
145
|
+
};
|
|
146
|
+
/**
|
|
147
|
+
* Returns all tools for MCP tools/list responses regardless of permission state.
|
|
148
|
+
* Each tool's description is prefixed with its permission state indicator so that
|
|
149
|
+
* agents can see disabled tools and tell the user to enable them.
|
|
150
|
+
*/
|
|
151
|
+
export const getAllToolsList = (state) => {
|
|
135
152
|
const tools = [];
|
|
136
153
|
for (const plugin of state.registry.plugins.values()) {
|
|
137
154
|
for (const toolDef of plugin.tools) {
|
|
138
155
|
const prefixed = prefixedToolName(plugin.name, toolDef.name);
|
|
139
|
-
|
|
140
|
-
continue;
|
|
156
|
+
const prefix = descriptionPrefix(state, plugin.name, toolDef.name);
|
|
141
157
|
const clonedSchema = structuredClone(toolDef.input_schema);
|
|
142
158
|
const properties = (clonedSchema.properties ?? {});
|
|
143
159
|
properties.tabId = {
|
|
@@ -148,37 +164,34 @@ export const getEnabledToolsList = (state) => {
|
|
|
148
164
|
clonedSchema.properties = properties;
|
|
149
165
|
tools.push({
|
|
150
166
|
name: prefixed,
|
|
151
|
-
description:
|
|
167
|
+
description: `${prefix}${toolDef.description}`,
|
|
152
168
|
inputSchema: clonedSchema,
|
|
153
169
|
});
|
|
154
170
|
}
|
|
155
171
|
}
|
|
156
172
|
for (const cached of state.cachedBrowserTools) {
|
|
157
|
-
|
|
158
|
-
continue;
|
|
173
|
+
const prefix = descriptionPrefix(state, 'browser', cached.name);
|
|
159
174
|
tools.push({
|
|
160
175
|
name: cached.name,
|
|
161
|
-
description: cached.description
|
|
176
|
+
description: `${prefix}${cached.description}`,
|
|
162
177
|
inputSchema: cached.inputSchema,
|
|
163
178
|
});
|
|
164
179
|
}
|
|
165
180
|
return tools;
|
|
166
181
|
};
|
|
167
182
|
/**
|
|
168
|
-
* Check if a prefixed plugin tool name is callable: exists in the
|
|
169
|
-
*
|
|
170
|
-
* (before this check) in the tools/call handler.
|
|
183
|
+
* Check if a prefixed plugin tool name is callable: verifies it exists in the
|
|
184
|
+
* tool lookup. Permission checks happen at dispatch time, not here. Browser
|
|
185
|
+
* tools are handled separately (before this check) in the tools/call handler.
|
|
171
186
|
*
|
|
172
|
-
* @param state - Server state containing the plugin registry
|
|
187
|
+
* @param state - Server state containing the plugin registry
|
|
173
188
|
* @param prefixedToolName - Fully prefixed tool name (e.g., 'slack_send_message')
|
|
174
|
-
* @returns An ok result with pluginName/toolName if
|
|
189
|
+
* @returns An ok result with pluginName/toolName if found, or an error result with a message
|
|
175
190
|
*/
|
|
176
191
|
export const checkToolCallable = (state, prefixedToolName) => {
|
|
177
192
|
const lookup = state.registry.toolLookup.get(prefixedToolName);
|
|
178
193
|
if (!lookup)
|
|
179
194
|
return { ok: false, error: `Tool ${prefixedToolName} not found` };
|
|
180
|
-
if (!isToolEnabled(state, prefixedToolName))
|
|
181
|
-
return { ok: false, error: `Tool ${prefixedToolName} is disabled` };
|
|
182
195
|
return { ok: true, pluginName: lookup.pluginName, toolName: lookup.toolName };
|
|
183
196
|
};
|
|
184
197
|
// Re-export sanitizeOutput and RequestHandlerExtra so existing callers
|
package/dist/mcp-setup.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp-setup.js","sourceRoot":"","sources":["../src/mcp-setup.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,OAAO,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,MAAM,oCAAoC,CAAC;AACnG,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,GAAG,EAAE,MAAM,aAAa,CAAC;AAElC,OAAO,EAAE,qBAAqB,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"mcp-setup.js","sourceRoot":"","sources":["../src/mcp-setup.ts"],"names":[],"mappings":"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"}
|
|
@@ -12,11 +12,6 @@ import type { CachedBrowserTool, ServerState, ToolLookupEntry } from './state.js
|
|
|
12
12
|
* in MCP clients that use naive JSON deserialization.
|
|
13
13
|
*/
|
|
14
14
|
declare const sanitizeOutput: (obj: unknown, depth?: number) => unknown;
|
|
15
|
-
/**
|
|
16
|
-
* Truncate tool parameters into a short preview for the confirmation dialog.
|
|
17
|
-
* Shows the first ~200 characters of the JSON-stringified args.
|
|
18
|
-
*/
|
|
19
|
-
declare const truncateParamsPreview: (args: Record<string, unknown>) => string;
|
|
20
15
|
/**
|
|
21
16
|
* Format a structured error response for MCP clients.
|
|
22
17
|
*
|
|
@@ -47,18 +42,22 @@ interface RequestHandlerExtra {
|
|
|
47
42
|
params?: Record<string, unknown>;
|
|
48
43
|
}) => Promise<void>;
|
|
49
44
|
}
|
|
45
|
+
/** Callbacks from the MCP setup layer for persisting config changes */
|
|
46
|
+
interface DispatchCallbacks {
|
|
47
|
+
onToolConfigChanged: () => void;
|
|
48
|
+
}
|
|
50
49
|
/**
|
|
51
|
-
* Handle a browser tool call:
|
|
52
|
-
* confirmation flow, execution, output sanitization, and audit logging.
|
|
50
|
+
* Handle a browser tool call: permission check, Zod validation,
|
|
51
|
+
* confirmation flow (for 'ask'), execution, output sanitization, and audit logging.
|
|
53
52
|
*/
|
|
54
|
-
declare const handleBrowserToolCall: (state: ServerState, toolName: string, args: Record<string, unknown>, cachedBt: CachedBrowserTool, extra: RequestHandlerExtra) => Promise<ToolCallResult>;
|
|
53
|
+
declare const handleBrowserToolCall: (state: ServerState, toolName: string, args: Record<string, unknown>, cachedBt: CachedBrowserTool, extra: RequestHandlerExtra, callbacks: DispatchCallbacks) => Promise<ToolCallResult>;
|
|
55
54
|
/**
|
|
56
|
-
* Handle a plugin tool call: Ajv validation, concurrency limiting,
|
|
55
|
+
* Handle a plugin tool call: permission check, Ajv validation, concurrency limiting,
|
|
57
56
|
* dispatch to extension, error formatting, and audit logging.
|
|
58
57
|
*
|
|
59
58
|
* The caller must have already verified the tool is callable via checkToolCallable.
|
|
60
59
|
*/
|
|
61
|
-
declare const handlePluginToolCall: (state: ServerState, toolName: string, args: Record<string, unknown>, pluginName: string, toolBaseName: string, lookup: ToolLookupEntry, extra: RequestHandlerExtra) => Promise<ToolCallResult>;
|
|
62
|
-
export type { ToolCallResult, RequestHandlerExtra };
|
|
63
|
-
export { sanitizeOutput, formatStructuredError, formatZodError,
|
|
60
|
+
declare const handlePluginToolCall: (state: ServerState, toolName: string, args: Record<string, unknown>, pluginName: string, toolBaseName: string, lookup: ToolLookupEntry, extra: RequestHandlerExtra, callbacks: DispatchCallbacks) => Promise<ToolCallResult>;
|
|
61
|
+
export type { ToolCallResult, RequestHandlerExtra, DispatchCallbacks };
|
|
62
|
+
export { sanitizeOutput, formatStructuredError, formatZodError, handleBrowserToolCall, handlePluginToolCall };
|
|
64
63
|
//# sourceMappingURL=mcp-tool-dispatch.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp-tool-dispatch.d.ts","sourceRoot":"","sources":["../src/mcp-tool-dispatch.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;
|
|
1
|
+
{"version":3,"file":"mcp-tool-dispatch.d.ts","sourceRoot":"","sources":["../src/mcp-tool-dispatch.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAIH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,KAAK,CAAC;AAWpC,OAAO,KAAK,EAAc,iBAAiB,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAS9F;;;GAGG;AACH,QAAA,MAAM,cAAc,GAAI,KAAK,OAAO,EAAE,cAAS,KAAG,OASjD,CAAC;AAEF;;;;;;GAMG;AACH,QAAA,MAAM,qBAAqB,GAAI,MAAM,MAAM,EAAE,SAAS,MAAM,EAAE,OAAO,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAG,MAyB9F,CAAC;AAEF,sFAAsF;AACtF,QAAA,MAAM,cAAc,GAAI,KAAK,QAAQ,KAAG,MAMvC,CAAC;AAEF,mFAAmF;AACnF,UAAU,cAAc;IACtB,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC/C,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,8DAA8D;AAC9D,UAAU,mBAAmB;IAC3B,MAAM,EAAE,WAAW,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE;QAAE,aAAa,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAC;IAC5C,gBAAgB,EAAE,CAAC,YAAY,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAE,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CACzG;AAED,uEAAuE;AACvE,UAAU,iBAAiB;IACzB,mBAAmB,EAAE,MAAM,IAAI,CAAC;CACjC;AAmED;;;GAGG;AACH,QAAA,MAAM,qBAAqB,GACzB,OAAO,WAAW,EAClB,UAAU,MAAM,EAChB,MAAM,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,UAAU,iBAAiB,EAC3B,OAAO,mBAAmB,EAC1B,WAAW,iBAAiB,KAC3B,OAAO,CAAC,cAAc,CA4DxB,CAAC;AAEF;;;;;GAKG;AACH,QAAA,MAAM,oBAAoB,GACxB,OAAO,WAAW,EAClB,UAAU,MAAM,EAChB,MAAM,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,YAAY,MAAM,EAClB,cAAc,MAAM,EACpB,QAAQ,eAAe,EACvB,OAAO,mBAAmB,EAC1B,WAAW,iBAAiB,KAC3B,OAAO,CAAC,cAAc,CAkMxB,CAAC;AAEF,YAAY,EAAE,cAAc,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,CAAC;AACvE,OAAO,EAAE,cAAc,EAAE,qBAAqB,EAAE,cAAc,EAAE,qBAAqB,EAAE,oBAAoB,EAAE,CAAC"}
|
|
@@ -6,15 +6,13 @@
|
|
|
6
6
|
* mcp-setup.ts delegates to these functions after resolving the tool name.
|
|
7
7
|
*/
|
|
8
8
|
import { toErrorMessage } from '@opentabs-dev/shared';
|
|
9
|
+
import { savePluginPermissions } from './config.js';
|
|
9
10
|
import { dispatchToExtension, isDispatchError, sendConfirmationRequest, sendInvocationEnd, sendInvocationStart, } from './extension-protocol.js';
|
|
10
11
|
import { log } from './logger.js';
|
|
11
|
-
import { evaluatePermission } from './permissions.js';
|
|
12
12
|
import { sanitizeErrorMessage } from './sanitize-error.js';
|
|
13
|
-
import { appendAuditEntry,
|
|
13
|
+
import { appendAuditEntry, getToolPermission } from './state.js';
|
|
14
14
|
/** Maximum concurrent tool dispatches per plugin to prevent tab performance degradation */
|
|
15
15
|
const MAX_CONCURRENT_DISPATCHES_PER_PLUGIN = 5;
|
|
16
|
-
/** Short timeout for domain resolution — fail fast if the tab is unresponsive */
|
|
17
|
-
const DOMAIN_RESOLVE_TIMEOUT_MS = 5_000;
|
|
18
16
|
/** Keys that could trigger prototype pollution in JSON deserialization */
|
|
19
17
|
const DANGEROUS_KEYS = new Set(['__proto__', 'constructor', 'prototype']);
|
|
20
18
|
/**
|
|
@@ -35,52 +33,6 @@ const sanitizeOutput = (obj, depth = 0) => {
|
|
|
35
33
|
}
|
|
36
34
|
return result;
|
|
37
35
|
};
|
|
38
|
-
/**
|
|
39
|
-
* Extract the target domain hostname for a browser tool call.
|
|
40
|
-
*
|
|
41
|
-
* - Tools with a `url` param (get_cookies, set_cookie, delete_cookies, open_tab):
|
|
42
|
-
* parse the hostname from the URL
|
|
43
|
-
* - Tools with a `tabId` param: dispatch browser.getTabInfo to get the tab's URL,
|
|
44
|
-
* then parse the hostname
|
|
45
|
-
* - Tools with neither: return null (observe-tier tools, extension diagnostics)
|
|
46
|
-
*/
|
|
47
|
-
const resolveToolDomain = async (_toolName, args, state) => {
|
|
48
|
-
// URL-based tools: parse domain from the url parameter
|
|
49
|
-
const urlArg = args.url;
|
|
50
|
-
if (typeof urlArg === 'string' && urlArg !== '') {
|
|
51
|
-
try {
|
|
52
|
-
return new URL(urlArg).hostname;
|
|
53
|
-
}
|
|
54
|
-
catch {
|
|
55
|
-
return null;
|
|
56
|
-
}
|
|
57
|
-
}
|
|
58
|
-
// Tab-based tools: get the tab's URL via a lightweight dispatch
|
|
59
|
-
const tabIdArg = args.tabId;
|
|
60
|
-
if (typeof tabIdArg === 'number') {
|
|
61
|
-
try {
|
|
62
|
-
const tabInfo = (await dispatchToExtension(state, 'browser.getTabInfo', { tabId: tabIdArg }, { timeoutMs: DOMAIN_RESOLVE_TIMEOUT_MS }));
|
|
63
|
-
if (typeof tabInfo.url === 'string' && tabInfo.url !== '') {
|
|
64
|
-
return new URL(tabInfo.url).hostname;
|
|
65
|
-
}
|
|
66
|
-
}
|
|
67
|
-
catch {
|
|
68
|
-
// Tab may be closed or unreachable — domain resolution is best-effort
|
|
69
|
-
}
|
|
70
|
-
return null;
|
|
71
|
-
}
|
|
72
|
-
return null;
|
|
73
|
-
};
|
|
74
|
-
/**
|
|
75
|
-
* Truncate tool parameters into a short preview for the confirmation dialog.
|
|
76
|
-
* Shows the first ~200 characters of the JSON-stringified args.
|
|
77
|
-
*/
|
|
78
|
-
const truncateParamsPreview = (args) => {
|
|
79
|
-
const json = JSON.stringify(args, null, 2);
|
|
80
|
-
if (json.length <= 200)
|
|
81
|
-
return json;
|
|
82
|
-
return `${json.slice(0, 200)}…`;
|
|
83
|
-
};
|
|
84
36
|
/**
|
|
85
37
|
* Format a structured error response for MCP clients.
|
|
86
38
|
*
|
|
@@ -124,97 +76,88 @@ const formatZodError = (err) => {
|
|
|
124
76
|
return `Invalid arguments:\n${issues.join('\n')}`;
|
|
125
77
|
};
|
|
126
78
|
/**
|
|
127
|
-
*
|
|
128
|
-
* confirmation
|
|
79
|
+
* Run the 'ask' confirmation flow for a tool call.
|
|
80
|
+
* Sends a confirmation request to the extension, waits for the user's decision,
|
|
81
|
+
* and persists the permission change if alwaysAllow is selected.
|
|
82
|
+
*
|
|
83
|
+
* @returns 'allow' if the user approved, or a ToolCallResult error if denied/failed.
|
|
129
84
|
*/
|
|
130
|
-
const
|
|
131
|
-
|
|
85
|
+
const runAskFlow = async (state, pluginName, toolName, params, extra, callbacks) => {
|
|
86
|
+
// Send MCP progress notification to let the agent know we're waiting for approval
|
|
87
|
+
const progressToken = extra._meta?.progressToken;
|
|
88
|
+
if (progressToken !== undefined) {
|
|
89
|
+
extra
|
|
90
|
+
.sendNotification({
|
|
91
|
+
method: 'notifications/progress',
|
|
92
|
+
params: {
|
|
93
|
+
progressToken,
|
|
94
|
+
progress: 0,
|
|
95
|
+
total: 1,
|
|
96
|
+
message: 'Waiting for user approval in the OpenTabs side panel',
|
|
97
|
+
},
|
|
98
|
+
})
|
|
99
|
+
.catch(() => {
|
|
100
|
+
// Fire-and-forget
|
|
101
|
+
});
|
|
102
|
+
}
|
|
103
|
+
let decision;
|
|
104
|
+
try {
|
|
105
|
+
decision = await sendConfirmationRequest(state, toolName, pluginName, params);
|
|
106
|
+
}
|
|
107
|
+
catch {
|
|
132
108
|
return {
|
|
133
|
-
content: [
|
|
109
|
+
content: [
|
|
110
|
+
{ type: 'text', text: `Tool ${toolName} requires approval but the extension is not connected.` },
|
|
111
|
+
],
|
|
134
112
|
isError: true,
|
|
135
113
|
};
|
|
136
114
|
}
|
|
137
|
-
|
|
138
|
-
const parseResult = cachedBt.tool.input.safeParse(args);
|
|
139
|
-
if (!parseResult.success) {
|
|
115
|
+
if (decision.action === 'deny') {
|
|
140
116
|
return {
|
|
141
|
-
content: [{ type: 'text', text:
|
|
117
|
+
content: [{ type: 'text', text: `Tool ${toolName} was denied by the user.` }],
|
|
142
118
|
isError: true,
|
|
143
119
|
};
|
|
144
120
|
}
|
|
145
|
-
//
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
121
|
+
// User approved — persist to 'auto' if alwaysAllow was selected
|
|
122
|
+
if (decision.alwaysAllow) {
|
|
123
|
+
const existing = state.pluginPermissions[pluginName];
|
|
124
|
+
const toolOverrides = { ...(existing?.tools ?? {}), [toolName]: 'auto' };
|
|
125
|
+
const updatedConfig = { ...existing, tools: toolOverrides };
|
|
126
|
+
state.pluginPermissions[pluginName] = updatedConfig;
|
|
127
|
+
void savePluginPermissions(state, state.pluginPermissions);
|
|
128
|
+
callbacks.onToolConfigChanged();
|
|
129
|
+
}
|
|
130
|
+
return 'allow';
|
|
131
|
+
};
|
|
132
|
+
/**
|
|
133
|
+
* Handle a browser tool call: permission check, Zod validation,
|
|
134
|
+
* confirmation flow (for 'ask'), execution, output sanitization, and audit logging.
|
|
135
|
+
*/
|
|
136
|
+
const handleBrowserToolCall = async (state, toolName, args, cachedBt, extra, callbacks) => {
|
|
137
|
+
const permission = getToolPermission(state, 'browser', toolName);
|
|
138
|
+
if (permission === 'off') {
|
|
154
139
|
return {
|
|
155
140
|
content: [
|
|
156
141
|
{
|
|
157
142
|
type: 'text',
|
|
158
|
-
text: `
|
|
143
|
+
text: `Tool ${toolName} is currently disabled. Ask the user to enable it in the OpenTabs side panel.`,
|
|
159
144
|
},
|
|
160
145
|
],
|
|
161
146
|
isError: true,
|
|
162
147
|
};
|
|
163
148
|
}
|
|
164
149
|
if (permission === 'ask') {
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
},
|
|
177
|
-
})
|
|
178
|
-
.catch(() => {
|
|
179
|
-
// Fire-and-forget
|
|
180
|
-
});
|
|
181
|
-
}
|
|
182
|
-
try {
|
|
183
|
-
const paramsPreview = truncateParamsPreview(parsedArgs);
|
|
184
|
-
const tabIdArg = parsedArgs.tabId;
|
|
185
|
-
const decision = await sendConfirmationRequest(state, toolName, domain, typeof tabIdArg === 'number' ? tabIdArg : undefined, paramsPreview);
|
|
186
|
-
if (decision === 'deny') {
|
|
187
|
-
return {
|
|
188
|
-
content: [
|
|
189
|
-
{
|
|
190
|
-
type: 'text',
|
|
191
|
-
text: `PERMISSION_DENIED: The user denied "${toolName}"${domain ? ` on "${domain}"` : ''}. Inform the user that the operation was blocked by their decision.`,
|
|
192
|
-
},
|
|
193
|
-
],
|
|
194
|
-
isError: true,
|
|
195
|
-
};
|
|
196
|
-
}
|
|
197
|
-
// decision is 'allow_once' or 'allow_always' — proceed with dispatch
|
|
198
|
-
// (allow_always session rules are handled by handleConfirmationResponse in extension-protocol)
|
|
199
|
-
}
|
|
200
|
-
catch (err) {
|
|
201
|
-
const msg = toErrorMessage(err);
|
|
202
|
-
if (msg === 'CONFIRMATION_TIMEOUT') {
|
|
203
|
-
return {
|
|
204
|
-
content: [
|
|
205
|
-
{
|
|
206
|
-
type: 'text',
|
|
207
|
-
text: `CONFIRMATION_TIMEOUT: Human approval for "${toolName}"${domain ? ` on "${domain}"` : ''} timed out after 30 seconds. The user did not respond in the OpenTabs side panel. Ask the user to try again.`,
|
|
208
|
-
},
|
|
209
|
-
],
|
|
210
|
-
isError: true,
|
|
211
|
-
};
|
|
212
|
-
}
|
|
213
|
-
return {
|
|
214
|
-
content: [{ type: 'text', text: `Confirmation error: ${msg}` }],
|
|
215
|
-
isError: true,
|
|
216
|
-
};
|
|
217
|
-
}
|
|
150
|
+
const askResult = await runAskFlow(state, 'browser', toolName, args, extra, callbacks);
|
|
151
|
+
if (askResult !== 'allow')
|
|
152
|
+
return askResult;
|
|
153
|
+
}
|
|
154
|
+
// Validate args through the tool's Zod input schema
|
|
155
|
+
const parseResult = cachedBt.tool.input.safeParse(args);
|
|
156
|
+
if (!parseResult.success) {
|
|
157
|
+
return {
|
|
158
|
+
content: [{ type: 'text', text: formatZodError(parseResult.error) }],
|
|
159
|
+
isError: true,
|
|
160
|
+
};
|
|
218
161
|
}
|
|
219
162
|
// Send invocation start notification to extension (for side panel activity indicator)
|
|
220
163
|
sendInvocationStart(state, 'browser', toolName);
|
|
@@ -251,12 +194,30 @@ const handleBrowserToolCall = async (state, toolName, args, cachedBt, extra) =>
|
|
|
251
194
|
}
|
|
252
195
|
};
|
|
253
196
|
/**
|
|
254
|
-
* Handle a plugin tool call: Ajv validation, concurrency limiting,
|
|
197
|
+
* Handle a plugin tool call: permission check, Ajv validation, concurrency limiting,
|
|
255
198
|
* dispatch to extension, error formatting, and audit logging.
|
|
256
199
|
*
|
|
257
200
|
* The caller must have already verified the tool is callable via checkToolCallable.
|
|
258
201
|
*/
|
|
259
|
-
const handlePluginToolCall = async (state, toolName, args, pluginName, toolBaseName, lookup, extra) => {
|
|
202
|
+
const handlePluginToolCall = async (state, toolName, args, pluginName, toolBaseName, lookup, extra, callbacks) => {
|
|
203
|
+
// Permission check — applies to all plugin tools
|
|
204
|
+
const permission = getToolPermission(state, pluginName, toolBaseName);
|
|
205
|
+
if (permission === 'off') {
|
|
206
|
+
return {
|
|
207
|
+
content: [
|
|
208
|
+
{
|
|
209
|
+
type: 'text',
|
|
210
|
+
text: `Tool ${toolName} is currently disabled. Ask the user to enable it in the OpenTabs side panel.`,
|
|
211
|
+
},
|
|
212
|
+
],
|
|
213
|
+
isError: true,
|
|
214
|
+
};
|
|
215
|
+
}
|
|
216
|
+
if (permission === 'ask') {
|
|
217
|
+
const askResult = await runAskFlow(state, pluginName, toolBaseName, args, extra, callbacks);
|
|
218
|
+
if (askResult !== 'allow')
|
|
219
|
+
return askResult;
|
|
220
|
+
}
|
|
260
221
|
// Extract platform-injected tabId before validation — the plugin's own
|
|
261
222
|
// schema doesn't know about tabId, so it must be stripped before Ajv runs
|
|
262
223
|
// (otherwise plugins with additionalProperties: false would reject it).
|
|
@@ -418,5 +379,5 @@ const handlePluginToolCall = async (state, toolName, args, pluginName, toolBaseN
|
|
|
418
379
|
});
|
|
419
380
|
}
|
|
420
381
|
};
|
|
421
|
-
export { sanitizeOutput, formatStructuredError, formatZodError,
|
|
382
|
+
export { sanitizeOutput, formatStructuredError, formatZodError, handleBrowserToolCall, handlePluginToolCall };
|
|
422
383
|
//# sourceMappingURL=mcp-tool-dispatch.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp-tool-dispatch.js","sourceRoot":"","sources":["../src/mcp-tool-dispatch.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"mcp-tool-dispatch.js","sourceRoot":"","sources":["../src/mcp-tool-dispatch.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plugin-management.d.ts","sourceRoot":"","sources":["../src/plugin-management.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAMH,OAAO,EAIL,wBAAwB,EACxB,mBAAmB,
|
|
1
|
+
{"version":3,"file":"plugin-management.d.ts","sourceRoot":"","sources":["../src/plugin-management.ts"],"names":[],"mappings":"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"}
|