@eddym06/custom-chrome-mcp 1.0.3 → 1.0.8
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/chrome-connector.d.ts +21 -4
- package/dist/chrome-connector.d.ts.map +1 -1
- package/dist/chrome-connector.js +368 -52
- package/dist/chrome-connector.js.map +1 -1
- package/dist/index.js +47 -11
- package/dist/index.js.map +1 -1
- package/dist/tools/anti-detection.d.ts.map +1 -1
- package/dist/tools/anti-detection.js +8 -3
- package/dist/tools/anti-detection.js.map +1 -1
- package/dist/tools/capture.d.ts +8 -8
- package/dist/tools/capture.d.ts.map +1 -1
- package/dist/tools/capture.js +13 -8
- package/dist/tools/capture.js.map +1 -1
- package/dist/tools/interaction.d.ts +8 -48
- package/dist/tools/interaction.d.ts.map +1 -1
- package/dist/tools/interaction.js +29 -17
- package/dist/tools/interaction.js.map +1 -1
- package/dist/tools/navigation.d.ts.map +1 -1
- package/dist/tools/navigation.js +35 -9
- package/dist/tools/navigation.js.map +1 -1
- package/dist/tools/playwright-launcher.d.ts +1 -1
- package/dist/tools/playwright-launcher.js +2 -2
- package/dist/tools/playwright-launcher.js.map +1 -1
- package/dist/tools/service-worker.d.ts +2 -2
- package/dist/tools/service-worker.d.ts.map +1 -1
- package/dist/tools/service-worker.js +12 -2
- package/dist/tools/service-worker.js.map +1 -1
- package/dist/tools/session.d.ts.map +1 -1
- package/dist/tools/session.js +14 -5
- package/dist/tools/session.js.map +1 -1
- package/dist/tools/system.d.ts +2 -2
- package/dist/tools/system.d.ts.map +1 -1
- package/dist/tools/system.js +6 -2
- package/dist/tools/system.js.map +1 -1
- package/dist/utils/helpers.d.ts +4 -0
- package/dist/utils/helpers.d.ts.map +1 -1
- package/dist/utils/helpers.js +20 -0
- package/dist/utils/helpers.js.map +1 -1
- package/package.json +4 -1
- package/.npmrc.example +0 -2
- package/test-playwright.js +0 -57
package/dist/index.js
CHANGED
|
@@ -48,18 +48,36 @@ function zodTypeToJsonSchema(schema) {
|
|
|
48
48
|
if (!schema)
|
|
49
49
|
return { type: 'string' };
|
|
50
50
|
let current = schema;
|
|
51
|
-
let
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
current
|
|
51
|
+
let description = current.description;
|
|
52
|
+
let defaultValue = undefined;
|
|
53
|
+
// Unwrap Optional/Default/Effects wrappers and collect metadata
|
|
54
|
+
while (current._def.typeName === 'ZodOptional' ||
|
|
55
|
+
current._def.typeName === 'ZodDefault' ||
|
|
56
|
+
current._def.typeName === 'ZodEffects') {
|
|
57
|
+
if (current.description)
|
|
58
|
+
description = current.description;
|
|
59
|
+
if (current._def.typeName === 'ZodDefault') {
|
|
60
|
+
defaultValue = current._def.defaultValue();
|
|
61
|
+
}
|
|
62
|
+
if (current._def.typeName === 'ZodEffects') {
|
|
63
|
+
current = current._def.schema;
|
|
64
|
+
}
|
|
65
|
+
else {
|
|
66
|
+
current = current._def.innerType;
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
// If we still haven't found a description on the wrappers, check the inner type
|
|
70
|
+
if (!description && current.description) {
|
|
71
|
+
description = current.description;
|
|
57
72
|
}
|
|
58
73
|
const def = current._def;
|
|
59
74
|
let type = 'string'; // Default fallback
|
|
60
75
|
const jsonSchema = {};
|
|
61
|
-
if (
|
|
62
|
-
jsonSchema.description =
|
|
76
|
+
if (description) {
|
|
77
|
+
jsonSchema.description = description;
|
|
78
|
+
}
|
|
79
|
+
if (defaultValue !== undefined) {
|
|
80
|
+
jsonSchema.default = defaultValue;
|
|
63
81
|
}
|
|
64
82
|
switch (def.typeName) {
|
|
65
83
|
case 'ZodString':
|
|
@@ -75,6 +93,15 @@ function zodTypeToJsonSchema(schema) {
|
|
|
75
93
|
type = 'string';
|
|
76
94
|
jsonSchema.enum = def.values;
|
|
77
95
|
break;
|
|
96
|
+
case 'ZodArray':
|
|
97
|
+
type = 'array';
|
|
98
|
+
jsonSchema.items = zodTypeToJsonSchema(def.type);
|
|
99
|
+
break;
|
|
100
|
+
case 'ZodNativeEnum':
|
|
101
|
+
type = 'string';
|
|
102
|
+
// Basic support for numeric enums or string enums
|
|
103
|
+
jsonSchema.enum = Object.values(def.values);
|
|
104
|
+
break;
|
|
78
105
|
}
|
|
79
106
|
jsonSchema.type = type;
|
|
80
107
|
return jsonSchema;
|
|
@@ -94,10 +121,19 @@ server.setRequestHandler(ListToolsRequestSchema, async () => {
|
|
|
94
121
|
// Check if required
|
|
95
122
|
let isOptional = false;
|
|
96
123
|
let current = zodSchema;
|
|
97
|
-
|
|
98
|
-
|
|
124
|
+
// Unwrap to check strict optionality
|
|
125
|
+
while (current._def.typeName === 'ZodOptional' ||
|
|
126
|
+
current._def.typeName === 'ZodDefault' ||
|
|
127
|
+
current._def.typeName === 'ZodEffects') {
|
|
128
|
+
if (current._def.typeName === 'ZodOptional' || current._def.typeName === 'ZodDefault') {
|
|
99
129
|
isOptional = true;
|
|
100
|
-
|
|
130
|
+
}
|
|
131
|
+
if (current._def.typeName === 'ZodEffects') {
|
|
132
|
+
current = current._def.schema;
|
|
133
|
+
}
|
|
134
|
+
else {
|
|
135
|
+
current = current._def.innerType;
|
|
136
|
+
}
|
|
101
137
|
}
|
|
102
138
|
if (!isOptional) {
|
|
103
139
|
required.push(key);
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAEA;;;GAGG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AACnE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AACjF,OAAO,EACL,qBAAqB,EACrB,sBAAsB,GACvB,MAAM,oCAAoC,CAAC;AAE5C,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAC9D,OAAO,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AAChE,OAAO,EAAE,wBAAwB,EAAE,MAAM,2BAA2B,CAAC;AACrE,OAAO,EAAE,wBAAwB,EAAE,MAAM,2BAA2B,CAAC;AACrE,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,EAAE,6BAA6B,EAAE,MAAM,gCAAgC,CAAC;AAE/E,+BAA+B;AAC/B,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;AACnC,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC;AAC5D,MAAM,IAAI,GAAG,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;AAE9D,8BAA8B;AAC9B,MAAM,SAAS,GAAG,IAAI,eAAe,CAAC,IAAI,CAAC,CAAC;AAE5C,oBAAoB;AACpB,MAAM,MAAM,GAAG,IAAI,MAAM,CACvB;IACE,IAAI,EAAE,mBAAmB;IACzB,OAAO,EAAE,OAAO;CACjB,EACD;IACE,YAAY,EAAE;QACZ,KAAK,EAAE,EAAE;KACV;CACF,CACF,CAAC;AAEF,oBAAoB;AACpB,MAAM,QAAQ,GAAG;IACf,GAAG,6BAA6B,CAAC,SAAS,CAAC,EAAG,uCAAuC;IACrF,GAAG,qBAAqB,CAAC,SAAS,CAAC;IACnC,GAAG,sBAAsB,CAAC,SAAS,CAAC;IACpC,GAAG,wBAAwB,CAAC,SAAS,CAAC;IACtC,GAAG,wBAAwB,CAAC,SAAS,CAAC;IACtC,GAAG,kBAAkB,CAAC,SAAS,CAAC;IAChC,GAAG,kBAAkB,CAAC,SAAS,CAAC;IAChC,GAAG,iBAAiB,CAAC,SAAS,CAAC;CAChC,CAAC;AAEF,mCAAmC;AACnC,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;AAEjE,uDAAuD;AACvD,SAAS,mBAAmB,CAAC,MAAW;IACtC,IAAI,CAAC,MAAM;QAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;IAEvC,IAAI,OAAO,GAAG,MAAM,CAAC;IACrB,IAAI,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"anti-detection.d.ts","sourceRoot":"","sources":["../../src/tools/anti-detection.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAE9D,wBAAgB,wBAAwB,CAAC,SAAS,EAAE,eAAe;;;;;;;;;;yBASlC,GAAG;;;;
|
|
1
|
+
{"version":3,"file":"anti-detection.d.ts","sourceRoot":"","sources":["../../src/tools/anti-detection.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAE9D,wBAAgB,wBAAwB,CAAC,SAAS,EAAE,eAAe;;;;;;;;;;yBASlC,GAAG;;;;IAoOnC"}
|
|
@@ -13,6 +13,7 @@ export function createAntiDetectionTools(connector) {
|
|
|
13
13
|
tabId: z.string().optional().describe('Tab ID (optional)')
|
|
14
14
|
}),
|
|
15
15
|
handler: async ({ tabId }) => {
|
|
16
|
+
await connector.verifyConnection();
|
|
16
17
|
const client = await connector.getTabClient(tabId);
|
|
17
18
|
const { Runtime, Page } = client;
|
|
18
19
|
await Runtime.enable();
|
|
@@ -125,6 +126,7 @@ export function createAntiDetectionTools(connector) {
|
|
|
125
126
|
tabId: z.string().optional().describe('Tab ID (optional)')
|
|
126
127
|
}),
|
|
127
128
|
handler: async ({ userAgent, tabId }) => {
|
|
129
|
+
await connector.verifyConnection();
|
|
128
130
|
const client = await connector.getTabClient(tabId);
|
|
129
131
|
const { Network } = client;
|
|
130
132
|
await Network.enable();
|
|
@@ -149,11 +151,12 @@ export function createAntiDetectionTools(connector) {
|
|
|
149
151
|
inputSchema: z.object({
|
|
150
152
|
width: z.number().describe('Viewport width'),
|
|
151
153
|
height: z.number().describe('Viewport height'),
|
|
152
|
-
deviceScaleFactor: z.number().
|
|
153
|
-
mobile: z.boolean().
|
|
154
|
+
deviceScaleFactor: z.number().default(1).describe('Device scale factor'),
|
|
155
|
+
mobile: z.boolean().default(false).describe('Emulate mobile device'),
|
|
154
156
|
tabId: z.string().optional().describe('Tab ID (optional)')
|
|
155
157
|
}),
|
|
156
158
|
handler: async ({ width, height, deviceScaleFactor, mobile, tabId }) => {
|
|
159
|
+
await connector.verifyConnection();
|
|
157
160
|
const client = await connector.getTabClient(tabId);
|
|
158
161
|
const { Emulation } = client;
|
|
159
162
|
await Emulation.setDeviceMetricsOverride({
|
|
@@ -176,10 +179,11 @@ export function createAntiDetectionTools(connector) {
|
|
|
176
179
|
inputSchema: z.object({
|
|
177
180
|
latitude: z.number().describe('Latitude'),
|
|
178
181
|
longitude: z.number().describe('Longitude'),
|
|
179
|
-
accuracy: z.number().
|
|
182
|
+
accuracy: z.number().default(100).describe('Accuracy in meters'),
|
|
180
183
|
tabId: z.string().optional().describe('Tab ID (optional)')
|
|
181
184
|
}),
|
|
182
185
|
handler: async ({ latitude, longitude, accuracy, tabId }) => {
|
|
186
|
+
await connector.verifyConnection();
|
|
183
187
|
const client = await connector.getTabClient(tabId);
|
|
184
188
|
const { Emulation } = client;
|
|
185
189
|
await Emulation.setGeolocationOverride({
|
|
@@ -203,6 +207,7 @@ export function createAntiDetectionTools(connector) {
|
|
|
203
207
|
tabId: z.string().optional().describe('Tab ID (optional)')
|
|
204
208
|
}),
|
|
205
209
|
handler: async ({ timezoneId, tabId }) => {
|
|
210
|
+
await connector.verifyConnection();
|
|
206
211
|
const client = await connector.getTabClient(tabId);
|
|
207
212
|
const { Emulation } = client;
|
|
208
213
|
await Emulation.setTimezoneOverride({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"anti-detection.js","sourceRoot":"","sources":["../../src/tools/anti-detection.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,MAAM,UAAU,wBAAwB,CAAC,SAA0B;IACjE,OAAO;QACL,qBAAqB;QACrB;YACE,IAAI,EAAE,qBAAqB;YAC3B,WAAW,EAAE,kEAAkE;YAC/E,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;gBACpB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,mBAAmB,CAAC;aAC3D,CAAC;YACF,OAAO,EAAE,KAAK,EAAE,EAAE,KAAK,EAAO,EAAE,EAAE;gBAChC,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;gBACnD,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,MAAM,CAAC;gBAEjC,MAAM,OAAO,CAAC,MAAM,EAAE,CAAC;gBACvB,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC;gBAEpB,gCAAgC;gBAChC,MAAM,aAAa,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;SAoFrB,CAAC;gBAEF,MAAM,IAAI,CAAC,gCAAgC,CAAC;oBAC1C,MAAM,EAAE,aAAa;iBACtB,CAAC,CAAC;gBAEH,6BAA6B;gBAC7B,MAAM,OAAO,CAAC,QAAQ,CAAC;oBACrB,UAAU,EAAE,aAAa;iBAC1B,CAAC,CAAC;gBAEH,OAAO;oBACL,OAAO,EAAE,IAAI;oBACb,OAAO,EAAE,+GAA+G;iBACzH,CAAC;YACJ,CAAC;SACF;QAED,uBAAuB;QACvB;YACE,IAAI,EAAE,gBAAgB;YACtB,WAAW,EAAE,gCAAgC;YAC7C,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;gBACpB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,sEAAsE,CAAC;gBACjH,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,mBAAmB,CAAC;aAC3D,CAAC;YACF,OAAO,EAAE,KAAK,EAAE,EAAE,SAAS,EAAE,KAAK,EAAO,EAAE,EAAE;gBAC3C,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;gBACnD,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,CAAC;gBAE3B,MAAM,OAAO,CAAC,MAAM,EAAE,CAAC;gBAEvB,MAAM,EAAE,GAAG,SAAS;oBAClB,iHAAiH,CAAC;gBAEpH,MAAM,OAAO,CAAC,oBAAoB,CAAC;oBACjC,SAAS,EAAE,EAAE;oBACb,cAAc,EAAE,gBAAgB;oBAChC,QAAQ,EAAE,OAAO;iBAClB,CAAC,CAAC;gBAEH,OAAO;oBACL,OAAO,EAAE,IAAI;oBACb,SAAS,EAAE,EAAE;oBACb,OAAO,EAAE,oBAAoB;iBAC9B,CAAC;YACJ,CAAC;SACF;QAED,eAAe;QACf;YACE,IAAI,EAAE,cAAc;YACpB,WAAW,EAAE,2BAA2B;YACxC,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;gBACpB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,gBAAgB,CAAC;gBAC5C,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,iBAAiB,CAAC;gBAC9C,iBAAiB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,
|
|
1
|
+
{"version":3,"file":"anti-detection.js","sourceRoot":"","sources":["../../src/tools/anti-detection.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,MAAM,UAAU,wBAAwB,CAAC,SAA0B;IACjE,OAAO;QACL,qBAAqB;QACrB;YACE,IAAI,EAAE,qBAAqB;YAC3B,WAAW,EAAE,kEAAkE;YAC/E,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;gBACpB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,mBAAmB,CAAC;aAC3D,CAAC;YACF,OAAO,EAAE,KAAK,EAAE,EAAE,KAAK,EAAO,EAAE,EAAE;gBAChC,MAAM,SAAS,CAAC,gBAAgB,EAAE,CAAC;gBACnC,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;gBACnD,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,MAAM,CAAC;gBAEjC,MAAM,OAAO,CAAC,MAAM,EAAE,CAAC;gBACvB,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC;gBAEpB,gCAAgC;gBAChC,MAAM,aAAa,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;SAoFrB,CAAC;gBAEF,MAAM,IAAI,CAAC,gCAAgC,CAAC;oBAC1C,MAAM,EAAE,aAAa;iBACtB,CAAC,CAAC;gBAEH,6BAA6B;gBAC7B,MAAM,OAAO,CAAC,QAAQ,CAAC;oBACrB,UAAU,EAAE,aAAa;iBAC1B,CAAC,CAAC;gBAEH,OAAO;oBACL,OAAO,EAAE,IAAI;oBACb,OAAO,EAAE,+GAA+G;iBACzH,CAAC;YACJ,CAAC;SACF;QAED,uBAAuB;QACvB;YACE,IAAI,EAAE,gBAAgB;YACtB,WAAW,EAAE,gCAAgC;YAC7C,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;gBACpB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,sEAAsE,CAAC;gBACjH,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,mBAAmB,CAAC;aAC3D,CAAC;YACF,OAAO,EAAE,KAAK,EAAE,EAAE,SAAS,EAAE,KAAK,EAAO,EAAE,EAAE;gBAC3C,MAAM,SAAS,CAAC,gBAAgB,EAAE,CAAC;gBACnC,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;gBACnD,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,CAAC;gBAE3B,MAAM,OAAO,CAAC,MAAM,EAAE,CAAC;gBAEvB,MAAM,EAAE,GAAG,SAAS;oBAClB,iHAAiH,CAAC;gBAEpH,MAAM,OAAO,CAAC,oBAAoB,CAAC;oBACjC,SAAS,EAAE,EAAE;oBACb,cAAc,EAAE,gBAAgB;oBAChC,QAAQ,EAAE,OAAO;iBAClB,CAAC,CAAC;gBAEH,OAAO;oBACL,OAAO,EAAE,IAAI;oBACb,SAAS,EAAE,EAAE;oBACb,OAAO,EAAE,oBAAoB;iBAC9B,CAAC;YACJ,CAAC;SACF;QAED,eAAe;QACf;YACE,IAAI,EAAE,cAAc;YACpB,WAAW,EAAE,2BAA2B;YACxC,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;gBACpB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,gBAAgB,CAAC;gBAC5C,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,iBAAiB,CAAC;gBAC9C,iBAAiB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,qBAAqB,CAAC;gBACxE,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,uBAAuB,CAAC;gBACpE,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,mBAAmB,CAAC;aAC3D,CAAC;YACF,OAAO,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM,EAAE,KAAK,EAAO,EAAE,EAAE;gBAC1E,MAAM,SAAS,CAAC,gBAAgB,EAAE,CAAC;gBACnC,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;gBACnD,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,CAAC;gBAE7B,MAAM,SAAS,CAAC,wBAAwB,CAAC;oBACvC,KAAK;oBACL,MAAM;oBACN,iBAAiB;oBACjB,MAAM;iBACP,CAAC,CAAC;gBAEH,OAAO;oBACL,OAAO,EAAE,IAAI;oBACb,QAAQ,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM,EAAE;oBACtD,OAAO,EAAE,mBAAmB,KAAK,IAAI,MAAM,EAAE;iBAC9C,CAAC;YACJ,CAAC;SACF;QAED,sBAAsB;QACtB;YACE,IAAI,EAAE,iBAAiB;YACvB,WAAW,EAAE,6BAA6B;YAC1C,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;gBACpB,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC;gBACzC,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,WAAW,CAAC;gBAC3C,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,oBAAoB,CAAC;gBAChE,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,mBAAmB,CAAC;aAC3D,CAAC;YACF,OAAO,EAAE,KAAK,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE,KAAK,EAAO,EAAE,EAAE;gBAC/D,MAAM,SAAS,CAAC,gBAAgB,EAAE,CAAC;gBACnC,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;gBACnD,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,CAAC;gBAE7B,MAAM,SAAS,CAAC,sBAAsB,CAAC;oBACrC,QAAQ;oBACR,SAAS;oBACT,QAAQ;iBACT,CAAC,CAAC;gBAEH,OAAO;oBACL,OAAO,EAAE,IAAI;oBACb,QAAQ,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE;oBAC3C,OAAO,EAAE,sBAAsB,QAAQ,KAAK,SAAS,EAAE;iBACxD,CAAC;YACJ,CAAC;SACF;QAED,eAAe;QACf;YACE,IAAI,EAAE,cAAc;YACpB,WAAW,EAAE,8BAA8B;YAC3C,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;gBACpB,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,wCAAwC,CAAC;gBACzE,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,mBAAmB,CAAC;aAC3D,CAAC;YACF,OAAO,EAAE,KAAK,EAAE,EAAE,UAAU,EAAE,KAAK,EAAO,EAAE,EAAE;gBAC5C,MAAM,SAAS,CAAC,gBAAgB,EAAE,CAAC;gBACnC,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;gBACnD,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,CAAC;gBAE7B,MAAM,SAAS,CAAC,mBAAmB,CAAC;oBAClC,UAAU;iBACX,CAAC,CAAC;gBAEH,OAAO;oBACL,OAAO,EAAE,IAAI;oBACb,QAAQ,EAAE,UAAU;oBACpB,OAAO,EAAE,mBAAmB,UAAU,EAAE;iBACzC,CAAC;YACJ,CAAC;SACF;KACF,CAAC;AACJ,CAAC"}
|
package/dist/tools/capture.d.ts
CHANGED
|
@@ -7,9 +7,9 @@ export declare function createCaptureTools(connector: ChromeConnector): ({
|
|
|
7
7
|
name: string;
|
|
8
8
|
description: string;
|
|
9
9
|
inputSchema: z.ZodObject<{
|
|
10
|
-
format: z.ZodDefault<z.
|
|
11
|
-
quality: z.ZodDefault<z.
|
|
12
|
-
fullPage: z.ZodDefault<z.
|
|
10
|
+
format: z.ZodDefault<z.ZodEnum<["png", "jpeg"]>>;
|
|
11
|
+
quality: z.ZodDefault<z.ZodNumber>;
|
|
12
|
+
fullPage: z.ZodDefault<z.ZodBoolean>;
|
|
13
13
|
clipX: z.ZodOptional<z.ZodNumber>;
|
|
14
14
|
clipY: z.ZodOptional<z.ZodNumber>;
|
|
15
15
|
clipWidth: z.ZodOptional<z.ZodNumber>;
|
|
@@ -46,7 +46,7 @@ export declare function createCaptureTools(connector: ChromeConnector): ({
|
|
|
46
46
|
description: string;
|
|
47
47
|
inputSchema: z.ZodObject<{
|
|
48
48
|
tabId: z.ZodOptional<z.ZodString>;
|
|
49
|
-
outerHTML: z.ZodDefault<z.
|
|
49
|
+
outerHTML: z.ZodDefault<z.ZodBoolean>;
|
|
50
50
|
}, "strip", z.ZodTypeAny, {
|
|
51
51
|
outerHTML: boolean;
|
|
52
52
|
tabId?: string | undefined;
|
|
@@ -63,10 +63,10 @@ export declare function createCaptureTools(connector: ChromeConnector): ({
|
|
|
63
63
|
name: string;
|
|
64
64
|
description: string;
|
|
65
65
|
inputSchema: z.ZodObject<{
|
|
66
|
-
landscape: z.ZodDefault<z.
|
|
67
|
-
displayHeaderFooter: z.ZodDefault<z.
|
|
68
|
-
printBackground: z.ZodDefault<z.
|
|
69
|
-
scale: z.ZodDefault<z.
|
|
66
|
+
landscape: z.ZodDefault<z.ZodBoolean>;
|
|
67
|
+
displayHeaderFooter: z.ZodDefault<z.ZodBoolean>;
|
|
68
|
+
printBackground: z.ZodDefault<z.ZodBoolean>;
|
|
69
|
+
scale: z.ZodDefault<z.ZodNumber>;
|
|
70
70
|
paperWidth: z.ZodOptional<z.ZodNumber>;
|
|
71
71
|
paperHeight: z.ZodOptional<z.ZodNumber>;
|
|
72
72
|
tabId: z.ZodOptional<z.ZodString>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"capture.d.ts","sourceRoot":"","sources":["../../src/tools/capture.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAE9D,wBAAgB,kBAAkB,CAAC,SAAS,EAAE,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;yFAgBoC,GAAG;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"capture.d.ts","sourceRoot":"","sources":["../../src/tools/capture.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAE9D,wBAAgB,kBAAkB,CAAC,SAAS,EAAE,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;yFAgBoC,GAAG;;;;;;;;;;;;;;;;;;;;oCAoDxD,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;0GAqCmE,GAAG;;;;;;;;;;;;;;;;yBAmCpF,GAAG;;;;;;;;;;;;;;;;;;yBA2BH,GAAG;;;;;KAiBnC"}
|
package/dist/tools/capture.js
CHANGED
|
@@ -9,9 +9,9 @@ export function createCaptureTools(connector) {
|
|
|
9
9
|
name: 'screenshot',
|
|
10
10
|
description: 'Take a screenshot of the current page or a specific area',
|
|
11
11
|
inputSchema: z.object({
|
|
12
|
-
format: z.enum(['png', 'jpeg']).
|
|
13
|
-
quality: z.number().min(0).max(100).
|
|
14
|
-
fullPage: z.boolean().
|
|
12
|
+
format: z.enum(['png', 'jpeg']).default('png').describe('Image format'),
|
|
13
|
+
quality: z.number().min(0).max(100).default(90).describe('JPEG quality (0-100)'),
|
|
14
|
+
fullPage: z.boolean().default(false).describe('Capture full page'),
|
|
15
15
|
clipX: z.number().optional().describe('Clip area X coordinate'),
|
|
16
16
|
clipY: z.number().optional().describe('Clip area Y coordinate'),
|
|
17
17
|
clipWidth: z.number().optional().describe('Clip area width'),
|
|
@@ -19,6 +19,7 @@ export function createCaptureTools(connector) {
|
|
|
19
19
|
tabId: z.string().optional().describe('Tab ID (optional)')
|
|
20
20
|
}),
|
|
21
21
|
handler: async ({ format, quality, fullPage, clipX, clipY, clipWidth, clipHeight, tabId }) => {
|
|
22
|
+
await connector.verifyConnection();
|
|
22
23
|
const client = await connector.getTabClient(tabId);
|
|
23
24
|
const { Page } = client;
|
|
24
25
|
await Page.enable();
|
|
@@ -62,9 +63,10 @@ export function createCaptureTools(connector) {
|
|
|
62
63
|
description: 'Get the HTML content of the current page',
|
|
63
64
|
inputSchema: z.object({
|
|
64
65
|
tabId: z.string().optional().describe('Tab ID (optional)'),
|
|
65
|
-
outerHTML: z.boolean().
|
|
66
|
+
outerHTML: z.boolean().default(true).describe('Get outer HTML (includes <html> tag)')
|
|
66
67
|
}),
|
|
67
68
|
handler: async ({ tabId, outerHTML }) => {
|
|
69
|
+
await connector.verifyConnection();
|
|
68
70
|
const client = await connector.getTabClient(tabId);
|
|
69
71
|
const { Runtime } = client;
|
|
70
72
|
await Runtime.enable();
|
|
@@ -87,15 +89,16 @@ export function createCaptureTools(connector) {
|
|
|
87
89
|
name: 'print_to_pdf',
|
|
88
90
|
description: 'Print the current page to PDF',
|
|
89
91
|
inputSchema: z.object({
|
|
90
|
-
landscape: z.boolean().
|
|
91
|
-
displayHeaderFooter: z.boolean().
|
|
92
|
-
printBackground: z.boolean().
|
|
93
|
-
scale: z.number().min(0.1).max(2).
|
|
92
|
+
landscape: z.boolean().default(false).describe('Landscape orientation'),
|
|
93
|
+
displayHeaderFooter: z.boolean().default(false).describe('Display header/footer'),
|
|
94
|
+
printBackground: z.boolean().default(true).describe('Print background graphics'),
|
|
95
|
+
scale: z.number().min(0.1).max(2).default(1).describe('Scale (0.1-2)'),
|
|
94
96
|
paperWidth: z.number().optional().describe('Paper width in inches'),
|
|
95
97
|
paperHeight: z.number().optional().describe('Paper height in inches'),
|
|
96
98
|
tabId: z.string().optional().describe('Tab ID (optional)')
|
|
97
99
|
}),
|
|
98
100
|
handler: async ({ landscape, displayHeaderFooter, printBackground, scale, paperWidth, paperHeight, tabId }) => {
|
|
101
|
+
await connector.verifyConnection();
|
|
99
102
|
const client = await connector.getTabClient(tabId);
|
|
100
103
|
const { Page } = client;
|
|
101
104
|
await Page.enable();
|
|
@@ -126,6 +129,7 @@ export function createCaptureTools(connector) {
|
|
|
126
129
|
tabId: z.string().optional().describe('Tab ID (optional)')
|
|
127
130
|
}),
|
|
128
131
|
handler: async ({ tabId }) => {
|
|
132
|
+
await connector.verifyConnection();
|
|
129
133
|
const client = await connector.getTabClient(tabId);
|
|
130
134
|
const { Page } = client;
|
|
131
135
|
await Page.enable();
|
|
@@ -148,6 +152,7 @@ export function createCaptureTools(connector) {
|
|
|
148
152
|
tabId: z.string().optional().describe('Tab ID (optional)')
|
|
149
153
|
}),
|
|
150
154
|
handler: async ({ tabId }) => {
|
|
155
|
+
await connector.verifyConnection();
|
|
151
156
|
const client = await connector.getTabClient(tabId);
|
|
152
157
|
const { Accessibility } = client;
|
|
153
158
|
await Accessibility.enable();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"capture.js","sourceRoot":"","sources":["../../src/tools/capture.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,MAAM,UAAU,kBAAkB,CAAC,SAA0B;IAC3D,OAAO;QACL,kBAAkB;QAClB;YACE,IAAI,EAAE,YAAY;YAClB,WAAW,EAAE,0DAA0D;YACvE,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;gBACpB,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,
|
|
1
|
+
{"version":3,"file":"capture.js","sourceRoot":"","sources":["../../src/tools/capture.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,49 +4,6 @@
|
|
|
4
4
|
import { z } from 'zod';
|
|
5
5
|
import type { ChromeConnector } from '../chrome-connector.js';
|
|
6
6
|
export declare function createInteractionTools(connector: ChromeConnector): ({
|
|
7
|
-
name: string;
|
|
8
|
-
description: string;
|
|
9
|
-
inputSchema: z.ZodObject<{
|
|
10
|
-
selector: z.ZodString;
|
|
11
|
-
tabId: z.ZodOptional<z.ZodString>;
|
|
12
|
-
waitForSelector: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
13
|
-
}, "strip", z.ZodTypeAny, {
|
|
14
|
-
selector: string;
|
|
15
|
-
waitForSelector: boolean;
|
|
16
|
-
tabId?: string | undefined;
|
|
17
|
-
}, {
|
|
18
|
-
selector: string;
|
|
19
|
-
tabId?: string | undefined;
|
|
20
|
-
waitForSelector?: boolean | undefined;
|
|
21
|
-
}>;
|
|
22
|
-
handler: ({ selector, tabId, waitForSelector }: any) => Promise<{
|
|
23
|
-
success: boolean;
|
|
24
|
-
message: string;
|
|
25
|
-
}>;
|
|
26
|
-
} | {
|
|
27
|
-
name: string;
|
|
28
|
-
description: string;
|
|
29
|
-
inputSchema: z.ZodObject<{
|
|
30
|
-
selector: z.ZodString;
|
|
31
|
-
text: z.ZodString;
|
|
32
|
-
tabId: z.ZodOptional<z.ZodString>;
|
|
33
|
-
clearFirst: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
34
|
-
}, "strip", z.ZodTypeAny, {
|
|
35
|
-
selector: string;
|
|
36
|
-
text: string;
|
|
37
|
-
clearFirst: boolean;
|
|
38
|
-
tabId?: string | undefined;
|
|
39
|
-
}, {
|
|
40
|
-
selector: string;
|
|
41
|
-
text: string;
|
|
42
|
-
tabId?: string | undefined;
|
|
43
|
-
clearFirst?: boolean | undefined;
|
|
44
|
-
}>;
|
|
45
|
-
handler: ({ selector, text, tabId, clearFirst }: any) => Promise<{
|
|
46
|
-
success: boolean;
|
|
47
|
-
message: string;
|
|
48
|
-
}>;
|
|
49
|
-
} | {
|
|
50
7
|
name: string;
|
|
51
8
|
description: string;
|
|
52
9
|
inputSchema: z.ZodObject<{
|
|
@@ -92,17 +49,20 @@ export declare function createInteractionTools(connector: ChromeConnector): ({
|
|
|
92
49
|
inputSchema: z.ZodObject<{
|
|
93
50
|
script: z.ZodString;
|
|
94
51
|
tabId: z.ZodOptional<z.ZodString>;
|
|
95
|
-
awaitPromise: z.ZodDefault<z.
|
|
52
|
+
awaitPromise: z.ZodDefault<z.ZodBoolean>;
|
|
53
|
+
timeout: z.ZodDefault<z.ZodNumber>;
|
|
96
54
|
}, "strip", z.ZodTypeAny, {
|
|
55
|
+
timeout: number;
|
|
97
56
|
script: string;
|
|
98
57
|
awaitPromise: boolean;
|
|
99
58
|
tabId?: string | undefined;
|
|
100
59
|
}, {
|
|
101
60
|
script: string;
|
|
102
61
|
tabId?: string | undefined;
|
|
62
|
+
timeout?: number | undefined;
|
|
103
63
|
awaitPromise?: boolean | undefined;
|
|
104
64
|
}>;
|
|
105
|
-
handler: ({ script, tabId, awaitPromise }: any) => Promise<{
|
|
65
|
+
handler: ({ script, tabId, awaitPromise, timeout }: any) => Promise<{
|
|
106
66
|
success: boolean;
|
|
107
67
|
result: any;
|
|
108
68
|
}>;
|
|
@@ -110,7 +70,7 @@ export declare function createInteractionTools(connector: ChromeConnector): ({
|
|
|
110
70
|
name: string;
|
|
111
71
|
description: string;
|
|
112
72
|
inputSchema: z.ZodObject<{
|
|
113
|
-
x: z.ZodDefault<z.
|
|
73
|
+
x: z.ZodDefault<z.ZodNumber>;
|
|
114
74
|
y: z.ZodOptional<z.ZodNumber>;
|
|
115
75
|
selector: z.ZodOptional<z.ZodString>;
|
|
116
76
|
tabId: z.ZodOptional<z.ZodString>;
|
|
@@ -134,11 +94,11 @@ export declare function createInteractionTools(connector: ChromeConnector): ({
|
|
|
134
94
|
description: string;
|
|
135
95
|
inputSchema: z.ZodObject<{
|
|
136
96
|
selector: z.ZodString;
|
|
137
|
-
timeout: z.ZodDefault<z.
|
|
97
|
+
timeout: z.ZodDefault<z.ZodNumber>;
|
|
138
98
|
tabId: z.ZodOptional<z.ZodString>;
|
|
139
99
|
}, "strip", z.ZodTypeAny, {
|
|
140
|
-
selector: string;
|
|
141
100
|
timeout: number;
|
|
101
|
+
selector: string;
|
|
142
102
|
tabId?: string | undefined;
|
|
143
103
|
}, {
|
|
144
104
|
selector: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"interaction.d.ts","sourceRoot":"","sources":["../../src/tools/interaction.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAG9D,wBAAgB,sBAAsB,CAAC,SAAS,EAAE,eAAe
|
|
1
|
+
{"version":3,"file":"interaction.d.ts","sourceRoot":"","sources":["../../src/tools/interaction.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAG9D,wBAAgB,sBAAsB,CAAC,SAAS,EAAE,eAAe;;;;;;;;;;;;;mCAwHtB,GAAG;;;;;;;;;;;;;;;;;;;;;8CAsCQ,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;wDAoCe,GAAG;;;;;;;;;;;;;;;;;;;;;;;yCAkC1B,GAAG;;;;;;;;;;;;;;;;;;;;4CA8BA,GAAG;;;;;;;;;;;;;;;;;;;;0CAkCL,GAAG;;;;KA4BpD"}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* Page Interaction Tools
|
|
3
3
|
*/
|
|
4
4
|
import { z } from 'zod';
|
|
5
|
-
import { humanDelay, waitFor } from '../utils/helpers.js';
|
|
5
|
+
import { humanDelay, waitFor, withTimeout } from '../utils/helpers.js';
|
|
6
6
|
export function createInteractionTools(connector) {
|
|
7
7
|
return [
|
|
8
8
|
// Click element
|
|
@@ -12,9 +12,11 @@ export function createInteractionTools(connector) {
|
|
|
12
12
|
inputSchema: z.object({
|
|
13
13
|
selector: z.string().describe('CSS selector of element to click'),
|
|
14
14
|
tabId: z.string().optional().describe('Tab ID (optional)'),
|
|
15
|
-
waitForSelector: z.boolean().
|
|
15
|
+
waitForSelector: z.boolean().default(true).describe('Wait for selector to be visible'),
|
|
16
|
+
timeout: z.number().default(30000).describe('Timeout in milliseconds')
|
|
16
17
|
}),
|
|
17
|
-
handler: async ({ selector, tabId, waitForSelector }) => {
|
|
18
|
+
handler: async ({ selector, tabId, waitForSelector, timeout = 30000 }) => {
|
|
19
|
+
await connector.verifyConnection();
|
|
18
20
|
const client = await connector.getTabClient(tabId);
|
|
19
21
|
const { Runtime, DOM } = client;
|
|
20
22
|
await Runtime.enable();
|
|
@@ -26,15 +28,15 @@ export function createInteractionTools(connector) {
|
|
|
26
28
|
expression: `document.querySelector('${selector}') !== null`
|
|
27
29
|
});
|
|
28
30
|
return result.result.value === true;
|
|
29
|
-
},
|
|
31
|
+
}, timeout);
|
|
30
32
|
if (!found) {
|
|
31
|
-
throw new Error(`Selector not found: ${selector}`);
|
|
33
|
+
throw new Error(`Selector not found: ${selector} (timeout ${timeout}ms)`);
|
|
32
34
|
}
|
|
33
35
|
}
|
|
34
36
|
// Add human-like delay
|
|
35
37
|
await humanDelay(100, 300);
|
|
36
38
|
// Click the element
|
|
37
|
-
await Runtime.evaluate({
|
|
39
|
+
await withTimeout(Runtime.evaluate({
|
|
38
40
|
expression: `
|
|
39
41
|
(function() {
|
|
40
42
|
const el = document.querySelector('${selector}');
|
|
@@ -43,8 +45,9 @@ export function createInteractionTools(connector) {
|
|
|
43
45
|
el.click();
|
|
44
46
|
return true;
|
|
45
47
|
})()
|
|
46
|
-
|
|
47
|
-
|
|
48
|
+
`,
|
|
49
|
+
awaitPromise: true
|
|
50
|
+
}), timeout, 'Click action timed out');
|
|
48
51
|
await humanDelay();
|
|
49
52
|
return {
|
|
50
53
|
success: true,
|
|
@@ -60,9 +63,11 @@ export function createInteractionTools(connector) {
|
|
|
60
63
|
selector: z.string().describe('CSS selector of input element'),
|
|
61
64
|
text: z.string().describe('Text to type'),
|
|
62
65
|
tabId: z.string().optional().describe('Tab ID (optional)'),
|
|
63
|
-
clearFirst: z.boolean().
|
|
66
|
+
clearFirst: z.boolean().default(true).describe('Clear existing text first'),
|
|
67
|
+
timeout: z.number().default(30000).describe('Timeout in milliseconds')
|
|
64
68
|
}),
|
|
65
|
-
handler: async ({ selector, text, tabId, clearFirst }) => {
|
|
69
|
+
handler: async ({ selector, text, tabId, clearFirst, timeout = 30000 }) => {
|
|
70
|
+
await connector.verifyConnection();
|
|
66
71
|
const client = await connector.getTabClient(tabId);
|
|
67
72
|
const { Runtime } = client;
|
|
68
73
|
await Runtime.enable();
|
|
@@ -89,7 +94,7 @@ export function createInteractionTools(connector) {
|
|
|
89
94
|
return true;
|
|
90
95
|
})()
|
|
91
96
|
`;
|
|
92
|
-
await Runtime.evaluate({ expression: script, awaitPromise: true });
|
|
97
|
+
await withTimeout(Runtime.evaluate({ expression: script, awaitPromise: true }), timeout, 'Type action timed out');
|
|
93
98
|
await humanDelay();
|
|
94
99
|
return {
|
|
95
100
|
success: true,
|
|
@@ -106,6 +111,7 @@ export function createInteractionTools(connector) {
|
|
|
106
111
|
tabId: z.string().optional().describe('Tab ID (optional)')
|
|
107
112
|
}),
|
|
108
113
|
handler: async ({ selector, tabId }) => {
|
|
114
|
+
await connector.verifyConnection();
|
|
109
115
|
const client = await connector.getTabClient(tabId);
|
|
110
116
|
const { Runtime } = client;
|
|
111
117
|
await Runtime.enable();
|
|
@@ -138,6 +144,7 @@ export function createInteractionTools(connector) {
|
|
|
138
144
|
tabId: z.string().optional().describe('Tab ID (optional)')
|
|
139
145
|
}),
|
|
140
146
|
handler: async ({ selector, attribute, tabId }) => {
|
|
147
|
+
await connector.verifyConnection();
|
|
141
148
|
const client = await connector.getTabClient(tabId);
|
|
142
149
|
const { Runtime } = client;
|
|
143
150
|
await Runtime.enable();
|
|
@@ -165,17 +172,19 @@ export function createInteractionTools(connector) {
|
|
|
165
172
|
inputSchema: z.object({
|
|
166
173
|
script: z.string().describe('JavaScript code to execute'),
|
|
167
174
|
tabId: z.string().optional().describe('Tab ID (optional) - MUST be a Page/Tab ID, not a Service Worker ID'),
|
|
168
|
-
awaitPromise: z.boolean().
|
|
175
|
+
awaitPromise: z.boolean().default(false).describe('Wait for promise to resolve'),
|
|
176
|
+
timeout: z.number().default(30000).describe('Timeout in milliseconds')
|
|
169
177
|
}),
|
|
170
|
-
handler: async ({ script, tabId, awaitPromise }) => {
|
|
178
|
+
handler: async ({ script, tabId, awaitPromise, timeout = 30000 }) => {
|
|
179
|
+
await connector.verifyConnection();
|
|
171
180
|
const client = await connector.getTabClient(tabId);
|
|
172
181
|
const { Runtime } = client;
|
|
173
182
|
await Runtime.enable();
|
|
174
|
-
const result = await Runtime.evaluate({
|
|
183
|
+
const result = await withTimeout(Runtime.evaluate({
|
|
175
184
|
expression: script,
|
|
176
185
|
awaitPromise,
|
|
177
186
|
returnByValue: true
|
|
178
|
-
});
|
|
187
|
+
}), timeout, 'Script execution timed out');
|
|
179
188
|
if (result.exceptionDetails) {
|
|
180
189
|
throw new Error(`Script execution failed: ${result.exceptionDetails.text}`);
|
|
181
190
|
}
|
|
@@ -190,12 +199,13 @@ export function createInteractionTools(connector) {
|
|
|
190
199
|
name: 'scroll',
|
|
191
200
|
description: 'Scroll the page or an element',
|
|
192
201
|
inputSchema: z.object({
|
|
193
|
-
x: z.number().
|
|
202
|
+
x: z.number().default(0).describe('Horizontal scroll position'),
|
|
194
203
|
y: z.number().optional().describe('Vertical scroll position'),
|
|
195
204
|
selector: z.string().optional().describe('CSS selector to scroll (scrolls window if not provided)'),
|
|
196
205
|
tabId: z.string().optional().describe('Tab ID (optional)')
|
|
197
206
|
}),
|
|
198
207
|
handler: async ({ x, y, selector, tabId }) => {
|
|
208
|
+
await connector.verifyConnection();
|
|
199
209
|
const client = await connector.getTabClient(tabId);
|
|
200
210
|
const { Runtime } = client;
|
|
201
211
|
await Runtime.enable();
|
|
@@ -216,10 +226,11 @@ export function createInteractionTools(connector) {
|
|
|
216
226
|
description: 'Wait for an element to appear on the page',
|
|
217
227
|
inputSchema: z.object({
|
|
218
228
|
selector: z.string().describe('CSS selector to wait for'),
|
|
219
|
-
timeout: z.number().
|
|
229
|
+
timeout: z.number().default(30000).describe('Timeout in milliseconds'),
|
|
220
230
|
tabId: z.string().optional().describe('Tab ID (optional)')
|
|
221
231
|
}),
|
|
222
232
|
handler: async ({ selector, timeout, tabId }) => {
|
|
233
|
+
await connector.verifyConnection();
|
|
223
234
|
const client = await connector.getTabClient(tabId);
|
|
224
235
|
const { Runtime } = client;
|
|
225
236
|
await Runtime.enable();
|
|
@@ -248,6 +259,7 @@ export function createInteractionTools(connector) {
|
|
|
248
259
|
tabId: z.string().optional().describe('Tab ID (optional)')
|
|
249
260
|
}),
|
|
250
261
|
handler: async ({ selector, value, tabId }) => {
|
|
262
|
+
await connector.verifyConnection();
|
|
251
263
|
const client = await connector.getTabClient(tabId);
|
|
252
264
|
const { Runtime } = client;
|
|
253
265
|
await Runtime.enable();
|