@opentabs-dev/mcp-server 0.0.63 → 0.0.65

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.
Files changed (100) hide show
  1. package/dist/browser-tools/click-element.js +3 -3
  2. package/dist/browser-tools/click-element.js.map +1 -1
  3. package/dist/browser-tools/press-key.js +5 -5
  4. package/dist/browser-tools/press-key.js.map +1 -1
  5. package/dist/dev-proxy.js +19 -7
  6. package/dist/dev-proxy.js.map +1 -1
  7. package/dist/extension-handlers.d.ts +11 -2
  8. package/dist/extension-handlers.d.ts.map +1 -1
  9. package/dist/extension-handlers.js +73 -7
  10. package/dist/extension-handlers.js.map +1 -1
  11. package/dist/extension-protocol.d.ts.map +1 -1
  12. package/dist/extension-protocol.js +10 -1
  13. package/dist/extension-protocol.js.map +1 -1
  14. package/dist/http-routes.d.ts.map +1 -1
  15. package/dist/http-routes.js +56 -0
  16. package/dist/http-routes.js.map +1 -1
  17. package/dist/loader.d.ts +2 -0
  18. package/dist/loader.d.ts.map +1 -1
  19. package/dist/loader.js +9 -0
  20. package/dist/loader.js.map +1 -1
  21. package/dist/mcp-prompts.d.ts +71 -0
  22. package/dist/mcp-prompts.d.ts.map +1 -0
  23. package/dist/mcp-prompts.js +248 -0
  24. package/dist/mcp-prompts.js.map +1 -0
  25. package/dist/mcp-resources.d.ts +53 -0
  26. package/dist/mcp-resources.d.ts.map +1 -0
  27. package/dist/mcp-resources.js +139 -0
  28. package/dist/mcp-resources.js.map +1 -0
  29. package/dist/mcp-setup.d.ts +13 -1
  30. package/dist/mcp-setup.d.ts.map +1 -1
  31. package/dist/mcp-setup.js +166 -2
  32. package/dist/mcp-setup.js.map +1 -1
  33. package/dist/plugin-management.d.ts +14 -1
  34. package/dist/plugin-management.d.ts.map +1 -1
  35. package/dist/plugin-management.js +55 -1
  36. package/dist/plugin-management.js.map +1 -1
  37. package/dist/prompts/audit-ai-docs.d.ts +6 -0
  38. package/dist/prompts/audit-ai-docs.d.ts.map +1 -0
  39. package/dist/prompts/audit-ai-docs.js +155 -0
  40. package/dist/prompts/audit-ai-docs.js.map +1 -0
  41. package/dist/prompts/build-plugin.d.ts +3 -0
  42. package/dist/prompts/build-plugin.d.ts.map +1 -0
  43. package/dist/prompts/build-plugin.js +455 -0
  44. package/dist/prompts/build-plugin.js.map +1 -0
  45. package/dist/prompts/contribute-learnings.d.ts +12 -0
  46. package/dist/prompts/contribute-learnings.d.ts.map +1 -0
  47. package/dist/prompts/contribute-learnings.js +107 -0
  48. package/dist/prompts/contribute-learnings.js.map +1 -0
  49. package/dist/prompts/plugin-icon.d.ts +5 -0
  50. package/dist/prompts/plugin-icon.d.ts.map +1 -0
  51. package/dist/prompts/plugin-icon.js +147 -0
  52. package/dist/prompts/plugin-icon.js.map +1 -0
  53. package/dist/prompts/setup-plugin.d.ts +3 -0
  54. package/dist/prompts/setup-plugin.d.ts.map +1 -0
  55. package/dist/prompts/setup-plugin.js +197 -0
  56. package/dist/prompts/setup-plugin.js.map +1 -0
  57. package/dist/prompts/troubleshoot.d.ts +3 -0
  58. package/dist/prompts/troubleshoot.d.ts.map +1 -0
  59. package/dist/prompts/troubleshoot.js +191 -0
  60. package/dist/prompts/troubleshoot.js.map +1 -0
  61. package/dist/reload.d.ts.map +1 -1
  62. package/dist/reload.js +9 -6
  63. package/dist/reload.js.map +1 -1
  64. package/dist/resources/browser-tools.d.ts +3 -0
  65. package/dist/resources/browser-tools.d.ts.map +1 -0
  66. package/dist/resources/browser-tools.js +100 -0
  67. package/dist/resources/browser-tools.js.map +1 -0
  68. package/dist/resources/cli.d.ts +3 -0
  69. package/dist/resources/cli.d.ts.map +1 -0
  70. package/dist/resources/cli.js +217 -0
  71. package/dist/resources/cli.js.map +1 -0
  72. package/dist/resources/plugin-development.d.ts +3 -0
  73. package/dist/resources/plugin-development.d.ts.map +1 -0
  74. package/dist/resources/plugin-development.js +596 -0
  75. package/dist/resources/plugin-development.js.map +1 -0
  76. package/dist/resources/quick-start.d.ts +3 -0
  77. package/dist/resources/quick-start.d.ts.map +1 -0
  78. package/dist/resources/quick-start.js +210 -0
  79. package/dist/resources/quick-start.js.map +1 -0
  80. package/dist/resources/sdk-api.d.ts +3 -0
  81. package/dist/resources/sdk-api.d.ts.map +1 -0
  82. package/dist/resources/sdk-api.js +199 -0
  83. package/dist/resources/sdk-api.js.map +1 -0
  84. package/dist/resources/self-improvement.d.ts +10 -0
  85. package/dist/resources/self-improvement.d.ts.map +1 -0
  86. package/dist/resources/self-improvement.js +91 -0
  87. package/dist/resources/self-improvement.js.map +1 -0
  88. package/dist/resources/status.d.ts +5 -0
  89. package/dist/resources/status.d.ts.map +1 -0
  90. package/dist/resources/status.js +27 -0
  91. package/dist/resources/status.js.map +1 -0
  92. package/dist/resources/troubleshooting.d.ts +3 -0
  93. package/dist/resources/troubleshooting.d.ts.map +1 -0
  94. package/dist/resources/troubleshooting.js +167 -0
  95. package/dist/resources/troubleshooting.js.map +1 -0
  96. package/dist/state.d.ts +6 -0
  97. package/dist/state.d.ts.map +1 -1
  98. package/dist/state.js +9 -3
  99. package/dist/state.js.map +1 -1
  100. package/package.json +1 -1
@@ -0,0 +1,167 @@
1
+ /** Troubleshooting Guide resource content. */
2
+ export const TROUBLESHOOTING_CONTENT = `# Troubleshooting Guide
3
+
4
+ Common errors when using OpenTabs, their causes, and resolution steps.
5
+
6
+ ## Quick Diagnosis
7
+
8
+ Before diving into specific errors, run these diagnostic commands:
9
+
10
+ \`\`\`bash
11
+ opentabs status # Server, extension, and plugin state
12
+ opentabs doctor # Comprehensive setup diagnostics
13
+ \`\`\`
14
+
15
+ From your AI client:
16
+ - Call \`extension_get_state\` — extension health and WebSocket status
17
+ - Call \`plugin_list_tabs\` — per-plugin tab readiness
18
+ - Fetch \`opentabs://status\` — full server state snapshot
19
+
20
+ ## Error Reference
21
+
22
+ ### Extension Not Connected
23
+
24
+ **Error:** \`Extension not connected. Please ensure the OpenTabs Chrome extension is running.\`
25
+
26
+ **Cause:** The Chrome extension WebSocket connection to the MCP server is not active.
27
+
28
+ **Resolution:**
29
+ 1. Verify server is running: \`opentabs status\`
30
+ 2. Check extension is loaded: open \`chrome://extensions\`, verify OpenTabs is enabled
31
+ 3. Reload extension: click the refresh icon on the OpenTabs card in \`chrome://extensions\`
32
+ 4. Close and reopen the side panel
33
+ 5. If still failing, run \`opentabs doctor\` for full diagnostics
34
+ 6. Check for stale auth secret: \`opentabs config rotate-secret --confirm\`, then reload extension
35
+
36
+ ### Tab Closed
37
+
38
+ **Error:** \`Tab closed: <message>\`
39
+
40
+ **Cause:** No browser tab matches the plugin's URL patterns, or the matching tab was closed during dispatch.
41
+
42
+ **Resolution:**
43
+ 1. Open the target web application in Chrome
44
+ 2. Verify the URL matches the plugin's \`urlPatterns\` (\`opentabs status\` shows patterns)
45
+ 3. Call \`plugin_list_tabs\` to verify the tab is detected
46
+ 4. Retry the tool call
47
+
48
+ ### Tab Unavailable
49
+
50
+ **Error:** \`Tab unavailable: <message>\`
51
+
52
+ **Cause:** A tab matches the plugin's URL patterns but \`isReady()\` returns false. The user is likely not logged in.
53
+
54
+ **Resolution:**
55
+ 1. Log into the web application in the matching browser tab
56
+ 2. Refresh the tab (Ctrl+R / Cmd+R)
57
+ 3. Wait 5 seconds for the readiness probe to complete
58
+ 4. Call \`plugin_list_tabs\` to check the \`ready\` field
59
+ 5. Retry the tool call
60
+
61
+ ### Plugin Not Reviewed
62
+
63
+ **Error:** \`Plugin "<name>" (v<version>) has not been reviewed yet.\`
64
+
65
+ **Cause:** New plugins start with permission \`'off'\` and require a security review before use.
66
+
67
+ **Resolution (AI client flow):**
68
+ 1. Call \`plugin_inspect({"plugin": "<name>"})\` — retrieves adapter source code + review token
69
+ 2. Review the code for security concerns (data exfiltration, credential access, suspicious network requests)
70
+ 3. Share findings with the user
71
+ 4. If approved, call \`plugin_mark_reviewed({"plugin": "<name>", "version": "<ver>", "reviewToken": "<token>", "permission": "auto"})\`
72
+
73
+ **Resolution (side panel):** Open the side panel, click the shield icon on the plugin card, and confirm.
74
+
75
+ ### Plugin Updated — Re-Review Required
76
+
77
+ **Error:** \`Plugin "<name>" has been updated from v<old> to v<new> and needs re-review.\`
78
+
79
+ **Cause:** Plugin version changed since last review. Permission resets to \`'off'\` on version change.
80
+
81
+ **Resolution:** Same as "Plugin Not Reviewed" above — call \`plugin_inspect\` and re-review.
82
+
83
+ ### Tool Disabled
84
+
85
+ **Error:** \`Tool "<name>" is currently disabled. Ask the user to enable it in the OpenTabs side panel.\`
86
+
87
+ **Cause:** The tool's permission is set to \`'off'\`.
88
+
89
+ **Resolution:**
90
+ - User enables in side panel, OR
91
+ - \`opentabs config set tool-permission.<plugin>.<tool> ask\`
92
+ - \`opentabs config set plugin-permission.<plugin> ask\`
93
+
94
+ ### Permission Denied by User
95
+
96
+ **Error:** \`Tool "<name>" was denied by the user.\`
97
+
98
+ **Cause:** Tool permission is \`'ask'\` and the user clicked "Deny" in the approval dialog.
99
+
100
+ **Resolution:** Do NOT retry immediately. Ask the user if they want to approve the action. To skip future prompts: \`opentabs config set tool-permission.<plugin>.<tool> auto\`
101
+
102
+ ### Too Many Concurrent Dispatches
103
+
104
+ **Error:** \`Too many concurrent dispatches for plugin "<name>" (limit: 5). Wait for in-flight requests to complete.\`
105
+
106
+ **Cause:** More than 5 simultaneous tool calls to the same plugin.
107
+
108
+ **Resolution:** Wait 100-500ms for in-flight dispatches to complete, then retry.
109
+
110
+ ### Dispatch Timeout
111
+
112
+ **Error:** \`Dispatch <label> timed out after <ms>ms\`
113
+
114
+ **Cause:** Tool handler did not respond within 30 seconds (or 5 minutes with progress reporting).
115
+
116
+ **Resolution:**
117
+ 1. Check if the tab is responsive (take a screenshot, check console logs)
118
+ 2. Refresh the target tab if unresponsive
119
+ 3. For legitimately long operations, the plugin should use \`context.reportProgress()\` to extend the timeout
120
+ 4. Break long operations into multiple tool calls
121
+
122
+ **Timeout rules:**
123
+ - Default: 30s per dispatch
124
+ - Progress resets the timer: each \`reportProgress()\` call extends by 30s
125
+ - Absolute ceiling: 5 minutes regardless of progress
126
+
127
+ ### Schema Validation Error
128
+
129
+ **Error:** \`Invalid arguments for tool "<name>": - <field>: <issue>\`
130
+
131
+ **Cause:** Tool arguments don't match the JSON Schema defined by the plugin.
132
+
133
+ **Resolution:** Check the tool's input schema via \`tools/list\` and ensure all required fields are provided with correct types.
134
+
135
+ ### Tool Not Found
136
+
137
+ **Error:** \`Tool <name> not found\`
138
+
139
+ **Cause:** The prefixed tool name doesn't exist in the registry. Plugin may not be installed.
140
+
141
+ **Resolution:**
142
+ 1. Run \`opentabs status\` to verify the plugin is installed
143
+ 2. Check the tool name (format: \`<plugin>_<tool>\`, e.g., \`slack_send_message\`)
144
+ 3. Reinstall: \`opentabs plugin install <name>\`
145
+
146
+ ### Rate Limited
147
+
148
+ **Error:** Tool response includes \`retryable: true\` and \`retryAfterMs\`.
149
+
150
+ **Cause:** The target web application's API returned HTTP 429.
151
+
152
+ **Resolution:** Wait the specified \`retryAfterMs\` before retrying. The \`ToolError.rateLimited\` metadata includes the exact delay.
153
+
154
+ ## Diagnostic Tools Reference
155
+
156
+ | Tool | What it checks |
157
+ |------|---------------|
158
+ | \`extension_get_state\` | WebSocket status, registered plugins, active captures |
159
+ | \`extension_get_logs\` | Extension background script logs, injection warnings |
160
+ | \`extension_check_adapter({"plugin": "<name>"})\` | Adapter injection status, hash match, isReady() result |
161
+ | \`plugin_list_tabs\` | Per-plugin tab matching and readiness |
162
+ | \`browser_get_console_logs\` | Browser console errors (requires network capture) |
163
+ | \`opentabs status\` | Server uptime, extension connection, plugin states |
164
+ | \`opentabs doctor\` | Full setup diagnostics with fix suggestions |
165
+ | \`opentabs logs --plugin <name>\` | Server-side plugin-specific logs |
166
+ `;
167
+ //# sourceMappingURL=troubleshooting.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"troubleshooting.js","sourceRoot":"","sources":["../../src/resources/troubleshooting.ts"],"names":[],"mappings":"AAAA,8CAA8C;AAE9C,MAAM,CAAC,MAAM,uBAAuB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAoKtC,CAAC"}
package/dist/state.d.ts CHANGED
@@ -59,6 +59,8 @@ export interface RegisteredPlugin {
59
59
  version: string;
60
60
  displayName: string;
61
61
  urlPatterns: string[];
62
+ excludePatterns: string[];
63
+ homepage?: string;
62
64
  iife: string;
63
65
  tools: ManifestTool[];
64
66
  /** How this plugin was discovered: 'npm' (global auto-discovery) or 'local' (config localPlugins) */
@@ -273,6 +275,10 @@ export declare const createState: () => ServerState;
273
275
  export declare const getNextRequestId: () => string;
274
276
  /** Get the prefixed tool name: plugin_tool */
275
277
  export declare const prefixedToolName: (plugin: string, tool: string) => string;
278
+ /** Resolve the configured permission for a tool (ignoring skipPermissions).
279
+ * Resolution order: per-tool override → plugin default → 'off'.
280
+ * Used by the side panel to display what the user actually configured. */
281
+ export declare const getConfiguredToolPermission: (state: ServerState, pluginName: string, toolName: string) => ToolPermission;
276
282
  /** Resolve the effective permission for a tool.
277
283
  * Resolution order: per-tool override → plugin default → 'off', then skipPermissions converts 'ask' to 'auto'. */
278
284
  export declare const getToolPermission: (state: ServerState, pluginName: string, toolName: string) => ToolPermission;
@@ -1 +1 @@
1
- {"version":3,"file":"state.d.ts","sourceRoot":"","sources":["../src/state.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"state.d.ts","sourceRoot":"","sources":["../src/state.ts"],"names":[],"mappings":"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"}
package/dist/state.js CHANGED
@@ -93,7 +93,7 @@ export const createState = () => ({
93
93
  startedAt: Date.now(),
94
94
  discoveryErrors: [],
95
95
  auditLog: [],
96
- skipPermissions: false,
96
+ skipPermissions: process.env.OPENTABS_DANGEROUSLY_SKIP_PERMISSIONS === '1',
97
97
  pluginPermissions: {},
98
98
  pendingConfirmations: new Map(),
99
99
  pendingExtensionReload: false,
@@ -106,11 +106,17 @@ export const createState = () => ({
106
106
  export const getNextRequestId = () => crypto.randomUUID();
107
107
  /** Get the prefixed tool name: plugin_tool */
108
108
  export const prefixedToolName = (plugin, tool) => `${plugin}_${tool}`;
109
+ /** Resolve the configured permission for a tool (ignoring skipPermissions).
110
+ * Resolution order: per-tool override → plugin default → 'off'.
111
+ * Used by the side panel to display what the user actually configured. */
112
+ export const getConfiguredToolPermission = (state, pluginName, toolName) => {
113
+ const pluginConfig = state.pluginPermissions[pluginName];
114
+ return pluginConfig ? (pluginConfig.tools?.[toolName] ?? pluginConfig.permission ?? 'off') : 'off';
115
+ };
109
116
  /** Resolve the effective permission for a tool.
110
117
  * Resolution order: per-tool override → plugin default → 'off', then skipPermissions converts 'ask' to 'auto'. */
111
118
  export const getToolPermission = (state, pluginName, toolName) => {
112
- const pluginConfig = state.pluginPermissions[pluginName];
113
- const resolved = pluginConfig ? (pluginConfig.tools?.[toolName] ?? pluginConfig.permission ?? 'off') : 'off';
119
+ const resolved = getConfiguredToolPermission(state, pluginName, toolName);
114
120
  if (state.skipPermissions && resolved === 'ask')
115
121
  return 'auto';
116
122
  return resolved;
package/dist/state.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"state.js","sourceRoot":"","sources":["../src/state.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"state.js","sourceRoot":"","sources":["../src/state.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@opentabs-dev/mcp-server",
3
- "version": "0.0.63",
3
+ "version": "0.0.65",
4
4
  "engines": {
5
5
  "node": ">= 22.0.0"
6
6
  },