auto-chrome-mcp-shared 1.2.0 → 1.3.0

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/index.d.mts CHANGED
@@ -202,6 +202,10 @@ declare const TOOL_NAMES: {
202
202
  WAIT_FOR: string;
203
203
  SCROLL_COLLECT: string;
204
204
  EXTRACT: string;
205
+ FIND: string;
206
+ SHORTCUT: string;
207
+ LIST_BROWSERS: string;
208
+ USE_BROWSER: string;
205
209
  };
206
210
  RECORD_REPLAY: {
207
211
  FLOW_RUN: string;
package/dist/index.d.ts CHANGED
@@ -202,6 +202,10 @@ declare const TOOL_NAMES: {
202
202
  WAIT_FOR: string;
203
203
  SCROLL_COLLECT: string;
204
204
  EXTRACT: string;
205
+ FIND: string;
206
+ SHORTCUT: string;
207
+ LIST_BROWSERS: string;
208
+ USE_BROWSER: string;
205
209
  };
206
210
  RECORD_REPLAY: {
207
211
  FLOW_RUN: string;
package/dist/index.js CHANGED
@@ -116,7 +116,12 @@ var TOOL_NAMES = {
116
116
  SET_WORK_TAB: "chrome_set_work_tab",
117
117
  WAIT_FOR: "chrome_wait_for",
118
118
  SCROLL_COLLECT: "chrome_scroll_collect",
119
- EXTRACT: "chrome_extract"
119
+ EXTRACT: "chrome_extract",
120
+ FIND: "chrome_find",
121
+ SHORTCUT: "chrome_shortcut",
122
+ // stdio 프록시 전용 (extension 으로 forward 되지 않음 — mcp-server-stdio.ts 가 가로챔)
123
+ LIST_BROWSERS: "chrome_list_browsers",
124
+ USE_BROWSER: "chrome_use_browser"
120
125
  },
121
126
  RECORD_REPLAY: {
122
127
  FLOW_RUN: "record_replay_flow_run",
@@ -150,6 +155,62 @@ var TOOL_SCHEMAS = [
150
155
  required: ["steps"]
151
156
  }
152
157
  },
158
+ {
159
+ name: TOOL_NAMES.BROWSER.FIND,
160
+ description: 'Find elements on the page using natural language (Korean or English), e.g. "\uB85C\uADF8\uC778 \uBC84\uD2BC", "search input", "\uC7A5\uBC14\uAD6C\uB2C8 \uC544\uC774\uCF58". Matches element names/roles/placeholder/text via synonym + fuzzy scoring over the accessibility tree and returns ranked candidates with ref (usable directly in chrome_click_element / chrome_fill_or_select), role, name, coordinates, and frameId. Cheaper and more direct than reading the whole page when you know what you are looking for.',
161
+ inputSchema: {
162
+ type: "object",
163
+ properties: {
164
+ query: {
165
+ type: "string",
166
+ description: "Natural language description of the element (Korean/English)"
167
+ },
168
+ tabId: {
169
+ type: "number",
170
+ description: "Optional target tab id. Defaults to the MCP work tab (background work mode) or the active tab."
171
+ },
172
+ maxResults: { type: "number", description: "Max candidates to return (default 5, max 20)" },
173
+ allFrames: {
174
+ type: "boolean",
175
+ description: "Also search inside iframes (default true)"
176
+ }
177
+ },
178
+ required: ["query"]
179
+ }
180
+ },
181
+ {
182
+ name: TOOL_NAMES.BROWSER.SHORTCUT,
183
+ description: 'Save and run named multi-step shortcuts (macro = a chrome_batch step list stored under a name). action="save" stores {name, steps, description}; "run" executes a saved shortcut through the normal tool pipeline; "list" shows saved shortcuts; "delete" removes one. Useful for workflows you repeat across sessions (login flows, routine collection).',
184
+ inputSchema: {
185
+ type: "object",
186
+ properties: {
187
+ action: {
188
+ type: "string",
189
+ enum: ["save", "run", "list", "delete"],
190
+ description: "What to do"
191
+ },
192
+ name: { type: "string", description: "Shortcut name (save/run/delete)" },
193
+ steps: {
194
+ type: "array",
195
+ description: 'For action="save": steps in chrome_batch format, max 20. Each: { tool: string, args?: object }',
196
+ items: {
197
+ type: "object",
198
+ properties: {
199
+ tool: { type: "string" },
200
+ args: { type: "object" }
201
+ },
202
+ required: ["tool"]
203
+ }
204
+ },
205
+ description: { type: "string", description: 'For action="save": what this shortcut does' },
206
+ continueOnError: {
207
+ type: "boolean",
208
+ description: 'For action="run": keep running steps after a failure (default false)'
209
+ }
210
+ },
211
+ required: ["action"]
212
+ }
213
+ },
153
214
  {
154
215
  name: TOOL_NAMES.BROWSER.EXTRACT,
155
216
  description: "Extract ONLY the fields you need from the page via CSS selectors \u2014 far cheaper than reading the whole page when you know what you want (e.g. price, title, links). Deterministic and precise. Prefer this over chrome_get_web_content/chrome_read_page for targeted scraping.",
package/dist/index.mjs CHANGED
@@ -71,7 +71,12 @@ var TOOL_NAMES = {
71
71
  SET_WORK_TAB: "chrome_set_work_tab",
72
72
  WAIT_FOR: "chrome_wait_for",
73
73
  SCROLL_COLLECT: "chrome_scroll_collect",
74
- EXTRACT: "chrome_extract"
74
+ EXTRACT: "chrome_extract",
75
+ FIND: "chrome_find",
76
+ SHORTCUT: "chrome_shortcut",
77
+ // stdio 프록시 전용 (extension 으로 forward 되지 않음 — mcp-server-stdio.ts 가 가로챔)
78
+ LIST_BROWSERS: "chrome_list_browsers",
79
+ USE_BROWSER: "chrome_use_browser"
75
80
  },
76
81
  RECORD_REPLAY: {
77
82
  FLOW_RUN: "record_replay_flow_run",
@@ -105,6 +110,62 @@ var TOOL_SCHEMAS = [
105
110
  required: ["steps"]
106
111
  }
107
112
  },
113
+ {
114
+ name: TOOL_NAMES.BROWSER.FIND,
115
+ description: 'Find elements on the page using natural language (Korean or English), e.g. "\uB85C\uADF8\uC778 \uBC84\uD2BC", "search input", "\uC7A5\uBC14\uAD6C\uB2C8 \uC544\uC774\uCF58". Matches element names/roles/placeholder/text via synonym + fuzzy scoring over the accessibility tree and returns ranked candidates with ref (usable directly in chrome_click_element / chrome_fill_or_select), role, name, coordinates, and frameId. Cheaper and more direct than reading the whole page when you know what you are looking for.',
116
+ inputSchema: {
117
+ type: "object",
118
+ properties: {
119
+ query: {
120
+ type: "string",
121
+ description: "Natural language description of the element (Korean/English)"
122
+ },
123
+ tabId: {
124
+ type: "number",
125
+ description: "Optional target tab id. Defaults to the MCP work tab (background work mode) or the active tab."
126
+ },
127
+ maxResults: { type: "number", description: "Max candidates to return (default 5, max 20)" },
128
+ allFrames: {
129
+ type: "boolean",
130
+ description: "Also search inside iframes (default true)"
131
+ }
132
+ },
133
+ required: ["query"]
134
+ }
135
+ },
136
+ {
137
+ name: TOOL_NAMES.BROWSER.SHORTCUT,
138
+ description: 'Save and run named multi-step shortcuts (macro = a chrome_batch step list stored under a name). action="save" stores {name, steps, description}; "run" executes a saved shortcut through the normal tool pipeline; "list" shows saved shortcuts; "delete" removes one. Useful for workflows you repeat across sessions (login flows, routine collection).',
139
+ inputSchema: {
140
+ type: "object",
141
+ properties: {
142
+ action: {
143
+ type: "string",
144
+ enum: ["save", "run", "list", "delete"],
145
+ description: "What to do"
146
+ },
147
+ name: { type: "string", description: "Shortcut name (save/run/delete)" },
148
+ steps: {
149
+ type: "array",
150
+ description: 'For action="save": steps in chrome_batch format, max 20. Each: { tool: string, args?: object }',
151
+ items: {
152
+ type: "object",
153
+ properties: {
154
+ tool: { type: "string" },
155
+ args: { type: "object" }
156
+ },
157
+ required: ["tool"]
158
+ }
159
+ },
160
+ description: { type: "string", description: 'For action="save": what this shortcut does' },
161
+ continueOnError: {
162
+ type: "boolean",
163
+ description: 'For action="run": keep running steps after a failure (default false)'
164
+ }
165
+ },
166
+ required: ["action"]
167
+ }
168
+ },
108
169
  {
109
170
  name: TOOL_NAMES.BROWSER.EXTRACT,
110
171
  description: "Extract ONLY the fields you need from the page via CSS selectors \u2014 far cheaper than reading the whole page when you know what you want (e.g. price, title, links). Deterministic and precise. Prefer this over chrome_get_web_content/chrome_read_page for targeted scraping.",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "auto-chrome-mcp-shared",
3
- "version": "1.2.0",
3
+ "version": "1.3.0",
4
4
  "author": "hangye (upstream), scalemaker-ship-it (scalemaker fork)",
5
5
  "main": "dist/index.js",
6
6
  "module": "./dist/index.mjs",