safari-devtools-mcp 1.2.0 → 1.2.1
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/build/src/index.d.ts.map +1 -1
- package/build/src/index.js +30 -79
- package/build/src/index.js.map +1 -1
- package/build/src/tools/console.d.ts +1 -13
- package/build/src/tools/console.d.ts.map +1 -1
- package/build/src/tools/console.js +82 -67
- package/build/src/tools/console.js.map +1 -1
- package/build/src/tools/cookies.d.ts +1 -20
- package/build/src/tools/cookies.d.ts.map +1 -1
- package/build/src/tools/cookies.js +126 -111
- package/build/src/tools/cookies.js.map +1 -1
- package/build/src/tools/css.d.ts +1 -6
- package/build/src/tools/css.d.ts.map +1 -1
- package/build/src/tools/css.js +51 -45
- package/build/src/tools/css.js.map +1 -1
- package/build/src/tools/input.d.ts +1 -63
- package/build/src/tools/input.d.ts.map +1 -1
- package/build/src/tools/input.js +300 -253
- package/build/src/tools/input.js.map +1 -1
- package/build/src/tools/network.d.ts +1 -13
- package/build/src/tools/network.d.ts.map +1 -1
- package/build/src/tools/network.js +82 -67
- package/build/src/tools/network.js.map +1 -1
- package/build/src/tools/page-content.d.ts +1 -11
- package/build/src/tools/page-content.d.ts.map +1 -1
- package/build/src/tools/page-content.js +100 -83
- package/build/src/tools/page-content.js.map +1 -1
- package/build/src/tools/pages.d.ts +1 -30
- package/build/src/tools/pages.d.ts.map +1 -1
- package/build/src/tools/pages.js +237 -202
- package/build/src/tools/pages.js.map +1 -1
- package/build/src/tools/screenshot.d.ts +1 -6
- package/build/src/tools/screenshot.d.ts.map +1 -1
- package/build/src/tools/screenshot.js +72 -65
- package/build/src/tools/screenshot.js.map +1 -1
- package/build/src/tools/script.d.ts +1 -6
- package/build/src/tools/script.d.ts.map +1 -1
- package/build/src/tools/script.js +40 -33
- package/build/src/tools/script.js.map +1 -1
- package/build/src/tools/scroll.d.ts +1 -10
- package/build/src/tools/scroll.d.ts.map +1 -1
- package/build/src/tools/scroll.js +48 -40
- package/build/src/tools/scroll.js.map +1 -1
- package/build/src/tools/snapshot.d.ts +1 -11
- package/build/src/tools/snapshot.d.ts.map +1 -1
- package/build/src/tools/snapshot.js +77 -68
- package/build/src/tools/snapshot.js.map +1 -1
- package/build/src/tools/storage.d.ts +1 -17
- package/build/src/tools/storage.d.ts.map +1 -1
- package/build/src/tools/storage.js +113 -98
- package/build/src/tools/storage.js.map +1 -1
- package/build/src/tools/types.d.ts +9 -1
- package/build/src/tools/types.d.ts.map +1 -1
- package/build/src/tools/types.js +3 -1
- package/build/src/tools/types.js.map +1 -1
- package/package.json +7 -8
package/build/src/tools/pages.js
CHANGED
|
@@ -3,233 +3,268 @@
|
|
|
3
3
|
* Mirrors chrome-devtools-mcp tool names: list_pages, select_page, close_page, new_page, navigate_page, resize_page
|
|
4
4
|
*/
|
|
5
5
|
import { z } from 'zod';
|
|
6
|
-
|
|
7
|
-
export const
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
};
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
return {
|
|
59
|
-
content: [
|
|
60
|
-
{
|
|
61
|
-
type: 'text',
|
|
62
|
-
text: error instanceof Error ? error.message : String(error),
|
|
63
|
-
},
|
|
64
|
-
],
|
|
65
|
-
isError: true,
|
|
66
|
-
};
|
|
67
|
-
}
|
|
68
|
-
};
|
|
69
|
-
// ---- new_page ----
|
|
70
|
-
export const newPageSchema = {
|
|
71
|
-
url: z.string().describe('URL to load in a new page.'),
|
|
72
|
-
};
|
|
73
|
-
export const newPage = async (params, driver) => {
|
|
74
|
-
const result = await driver.newPage(params.url);
|
|
75
|
-
let text = `Opened new page with URL: ${params.url}`;
|
|
76
|
-
if (result.warning) {
|
|
77
|
-
text += `\n\n⚠️ ${result.warning}`;
|
|
78
|
-
}
|
|
79
|
-
return {
|
|
80
|
-
content: [{ type: 'text', text }],
|
|
81
|
-
};
|
|
82
|
-
};
|
|
83
|
-
// ---- navigate_page ----
|
|
84
|
-
export const navigatePageSchema = {
|
|
85
|
-
type: z
|
|
86
|
-
.enum(['url', 'back', 'forward', 'reload'])
|
|
87
|
-
.optional()
|
|
88
|
-
.describe('Navigate the page by URL, back or forward in history, or reload.'),
|
|
89
|
-
url: z.string().optional().describe('Target URL (only type=url)'),
|
|
90
|
-
};
|
|
91
|
-
export const navigatePage = async (params, driver) => {
|
|
92
|
-
const type = params.type || (params.url ? 'url' : undefined);
|
|
93
|
-
if (!type && !params.url) {
|
|
94
|
-
return {
|
|
95
|
-
content: [
|
|
96
|
-
{ type: 'text', text: 'Either URL or a type is required.' },
|
|
97
|
-
],
|
|
98
|
-
isError: true,
|
|
99
|
-
};
|
|
100
|
-
}
|
|
101
|
-
try {
|
|
102
|
-
switch (type || 'url') {
|
|
103
|
-
case 'url':
|
|
104
|
-
if (!params.url) {
|
|
105
|
-
return {
|
|
106
|
-
content: [
|
|
107
|
-
{
|
|
108
|
-
type: 'text',
|
|
109
|
-
text: 'A URL is required for navigation of type=url.',
|
|
110
|
-
},
|
|
111
|
-
],
|
|
112
|
-
isError: true,
|
|
113
|
-
};
|
|
114
|
-
}
|
|
115
|
-
await driver.navigate(params.url);
|
|
116
|
-
return {
|
|
117
|
-
content: [
|
|
118
|
-
{
|
|
119
|
-
type: 'text',
|
|
120
|
-
text: `Successfully navigated to ${params.url}.`,
|
|
121
|
-
},
|
|
122
|
-
],
|
|
123
|
-
};
|
|
124
|
-
case 'back':
|
|
125
|
-
await driver.goBack();
|
|
6
|
+
import { defineTool } from './types.js';
|
|
7
|
+
export const tools = [
|
|
8
|
+
defineTool({
|
|
9
|
+
name: 'list_pages',
|
|
10
|
+
description: 'Get a list of pages (tabs) open in Safari.',
|
|
11
|
+
schema: {},
|
|
12
|
+
handler: async (_params, driver) => {
|
|
13
|
+
const pages = await driver.listPages();
|
|
14
|
+
const lines = pages.map(p => ` pageId=${p.pageId} ${p.isSelected ? '* ' : ' '}${p.title} (${p.url})`);
|
|
15
|
+
let text = `Open pages (* = selected):\n${lines.join('\n')}`;
|
|
16
|
+
const warnings = pages.filter(p => p.warning).map(p => p.warning);
|
|
17
|
+
if (warnings.length > 0) {
|
|
18
|
+
text += `\n\n⚠️ ${warnings.join('\n')}`;
|
|
19
|
+
}
|
|
20
|
+
return {
|
|
21
|
+
content: [{ type: 'text', text }],
|
|
22
|
+
};
|
|
23
|
+
},
|
|
24
|
+
}),
|
|
25
|
+
defineTool({
|
|
26
|
+
name: 'select_page',
|
|
27
|
+
description: 'Select a page as context for future tool calls.',
|
|
28
|
+
schema: {
|
|
29
|
+
pageId: z
|
|
30
|
+
.number()
|
|
31
|
+
.describe('The ID of the page to select. Call list_pages to get available pages.'),
|
|
32
|
+
},
|
|
33
|
+
handler: async (params, driver) => {
|
|
34
|
+
await driver.selectPage(params.pageId);
|
|
35
|
+
const pages = await driver.listPages();
|
|
36
|
+
const lines = pages.map(p => ` pageId=${p.pageId} ${p.isSelected ? '* ' : ' '}${p.title} (${p.url})`);
|
|
37
|
+
return {
|
|
38
|
+
content: [
|
|
39
|
+
{
|
|
40
|
+
type: 'text',
|
|
41
|
+
text: `Selected page ${params.pageId}.\n\nOpen pages (* = selected):\n${lines.join('\n')}`,
|
|
42
|
+
},
|
|
43
|
+
],
|
|
44
|
+
};
|
|
45
|
+
},
|
|
46
|
+
}),
|
|
47
|
+
defineTool({
|
|
48
|
+
name: 'close_page',
|
|
49
|
+
description: 'Closes a page by its ID. The last open page cannot be closed.',
|
|
50
|
+
schema: {
|
|
51
|
+
pageId: z
|
|
52
|
+
.number()
|
|
53
|
+
.describe('The ID of the page to close. Call list_pages to list pages.'),
|
|
54
|
+
},
|
|
55
|
+
handler: async (params, driver) => {
|
|
56
|
+
try {
|
|
57
|
+
await driver.closePage(params.pageId);
|
|
126
58
|
return {
|
|
127
59
|
content: [
|
|
128
60
|
{
|
|
129
61
|
type: 'text',
|
|
130
|
-
text: `
|
|
62
|
+
text: `Closed page ${params.pageId}.`,
|
|
131
63
|
},
|
|
132
64
|
],
|
|
133
65
|
};
|
|
134
|
-
|
|
135
|
-
|
|
66
|
+
}
|
|
67
|
+
catch (error) {
|
|
136
68
|
return {
|
|
137
69
|
content: [
|
|
138
70
|
{
|
|
139
71
|
type: 'text',
|
|
140
|
-
text:
|
|
72
|
+
text: error instanceof Error ? error.message : String(error),
|
|
141
73
|
},
|
|
142
74
|
],
|
|
75
|
+
isError: true,
|
|
143
76
|
};
|
|
144
|
-
|
|
145
|
-
|
|
77
|
+
}
|
|
78
|
+
},
|
|
79
|
+
}),
|
|
80
|
+
defineTool({
|
|
81
|
+
name: 'new_page',
|
|
82
|
+
description: 'Open a new tab and load a URL.',
|
|
83
|
+
schema: {
|
|
84
|
+
url: z.string().describe('URL to load in a new page.'),
|
|
85
|
+
},
|
|
86
|
+
handler: async (params, driver) => {
|
|
87
|
+
const result = await driver.newPage(params.url);
|
|
88
|
+
let text = `Opened new page with URL: ${params.url}`;
|
|
89
|
+
if (result.warning) {
|
|
90
|
+
text += `\n\n⚠️ ${result.warning}`;
|
|
91
|
+
}
|
|
92
|
+
return {
|
|
93
|
+
content: [{ type: 'text', text }],
|
|
94
|
+
};
|
|
95
|
+
},
|
|
96
|
+
}),
|
|
97
|
+
defineTool({
|
|
98
|
+
name: 'navigate_page',
|
|
99
|
+
description: 'Go to a URL, or back, forward, or reload.',
|
|
100
|
+
schema: {
|
|
101
|
+
type: z
|
|
102
|
+
.enum(['url', 'back', 'forward', 'reload'])
|
|
103
|
+
.optional()
|
|
104
|
+
.describe('Navigate the page by URL, back or forward in history, or reload.'),
|
|
105
|
+
url: z.string().optional().describe('Target URL (only type=url)'),
|
|
106
|
+
},
|
|
107
|
+
handler: async (params, driver) => {
|
|
108
|
+
const type = params.type || (params.url ? 'url' : undefined);
|
|
109
|
+
if (!type && !params.url) {
|
|
146
110
|
return {
|
|
147
111
|
content: [
|
|
148
|
-
{ type: 'text', text: '
|
|
112
|
+
{ type: 'text', text: 'Either URL or a type is required.' },
|
|
149
113
|
],
|
|
114
|
+
isError: true,
|
|
150
115
|
};
|
|
151
|
-
|
|
116
|
+
}
|
|
117
|
+
try {
|
|
118
|
+
switch (type || 'url') {
|
|
119
|
+
case 'url':
|
|
120
|
+
if (!params.url) {
|
|
121
|
+
return {
|
|
122
|
+
content: [
|
|
123
|
+
{
|
|
124
|
+
type: 'text',
|
|
125
|
+
text: 'A URL is required for navigation of type=url.',
|
|
126
|
+
},
|
|
127
|
+
],
|
|
128
|
+
isError: true,
|
|
129
|
+
};
|
|
130
|
+
}
|
|
131
|
+
await driver.navigate(params.url);
|
|
132
|
+
return {
|
|
133
|
+
content: [
|
|
134
|
+
{
|
|
135
|
+
type: 'text',
|
|
136
|
+
text: `Successfully navigated to ${params.url}.`,
|
|
137
|
+
},
|
|
138
|
+
],
|
|
139
|
+
};
|
|
140
|
+
case 'back':
|
|
141
|
+
await driver.goBack();
|
|
142
|
+
return {
|
|
143
|
+
content: [
|
|
144
|
+
{
|
|
145
|
+
type: 'text',
|
|
146
|
+
text: `Successfully navigated back to ${await driver.getCurrentUrl()}.`,
|
|
147
|
+
},
|
|
148
|
+
],
|
|
149
|
+
};
|
|
150
|
+
case 'forward':
|
|
151
|
+
await driver.goForward();
|
|
152
|
+
return {
|
|
153
|
+
content: [
|
|
154
|
+
{
|
|
155
|
+
type: 'text',
|
|
156
|
+
text: `Successfully navigated forward to ${await driver.getCurrentUrl()}.`,
|
|
157
|
+
},
|
|
158
|
+
],
|
|
159
|
+
};
|
|
160
|
+
case 'reload':
|
|
161
|
+
await driver.reload();
|
|
162
|
+
return {
|
|
163
|
+
content: [
|
|
164
|
+
{
|
|
165
|
+
type: 'text',
|
|
166
|
+
text: 'Successfully reloaded the page.',
|
|
167
|
+
},
|
|
168
|
+
],
|
|
169
|
+
};
|
|
170
|
+
default:
|
|
171
|
+
return {
|
|
172
|
+
content: [
|
|
173
|
+
{
|
|
174
|
+
type: 'text',
|
|
175
|
+
text: `Unknown navigation type: ${type}`,
|
|
176
|
+
},
|
|
177
|
+
],
|
|
178
|
+
isError: true,
|
|
179
|
+
};
|
|
180
|
+
}
|
|
181
|
+
}
|
|
182
|
+
catch (error) {
|
|
152
183
|
return {
|
|
153
184
|
content: [
|
|
154
|
-
{
|
|
185
|
+
{
|
|
186
|
+
type: 'text',
|
|
187
|
+
text: `Navigation failed: ${error instanceof Error ? error.message : String(error)}`,
|
|
188
|
+
},
|
|
155
189
|
],
|
|
156
190
|
isError: true,
|
|
157
191
|
};
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
}
|
|
171
|
-
};
|
|
172
|
-
// ---- resize_page ----
|
|
173
|
-
export const resizePageSchema = {
|
|
174
|
-
width: z.number().describe('Page width'),
|
|
175
|
-
height: z.number().describe('Page height'),
|
|
176
|
-
};
|
|
177
|
-
export const resizePage = async (params, driver) => {
|
|
178
|
-
await driver.resizePage(params.width, params.height);
|
|
179
|
-
return {
|
|
180
|
-
content: [
|
|
181
|
-
{
|
|
182
|
-
type: 'text',
|
|
183
|
-
text: `Resized page to ${params.width}x${params.height}.`,
|
|
184
|
-
},
|
|
185
|
-
],
|
|
186
|
-
};
|
|
187
|
-
};
|
|
188
|
-
// ---- handle_dialog ----
|
|
189
|
-
export const handleDialogSchema = {
|
|
190
|
-
action: z
|
|
191
|
-
.enum(['accept', 'dismiss'])
|
|
192
|
-
.describe('Whether to dismiss or accept the dialog'),
|
|
193
|
-
promptText: z
|
|
194
|
-
.string()
|
|
195
|
-
.optional()
|
|
196
|
-
.describe('Optional prompt text to enter into the dialog.'),
|
|
197
|
-
};
|
|
198
|
-
export const handleDialog = async (params, driver) => {
|
|
199
|
-
// Safari WebDriver handles alerts via the driver's switchTo().alert() API
|
|
200
|
-
try {
|
|
201
|
-
const d = await driver.ensureDriver();
|
|
202
|
-
const alert = await d.switchTo().alert();
|
|
203
|
-
if (params.promptText) {
|
|
204
|
-
await alert.sendKeys(params.promptText);
|
|
205
|
-
}
|
|
206
|
-
if (params.action === 'accept') {
|
|
207
|
-
await alert.accept();
|
|
192
|
+
}
|
|
193
|
+
},
|
|
194
|
+
}),
|
|
195
|
+
defineTool({
|
|
196
|
+
name: 'resize_page',
|
|
197
|
+
description: "Resizes the selected page's window so that the page has specified dimensions.",
|
|
198
|
+
schema: {
|
|
199
|
+
width: z.number().describe('Page width'),
|
|
200
|
+
height: z.number().describe('Page height'),
|
|
201
|
+
},
|
|
202
|
+
handler: async (params, driver) => {
|
|
203
|
+
await driver.resizePage(params.width, params.height);
|
|
208
204
|
return {
|
|
209
205
|
content: [
|
|
210
|
-
{
|
|
206
|
+
{
|
|
207
|
+
type: 'text',
|
|
208
|
+
text: `Resized page to ${params.width}x${params.height}.`,
|
|
209
|
+
},
|
|
211
210
|
],
|
|
212
211
|
};
|
|
213
|
-
}
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
212
|
+
},
|
|
213
|
+
}),
|
|
214
|
+
defineTool({
|
|
215
|
+
name: 'handle_dialog',
|
|
216
|
+
description: 'If a browser dialog was opened, use this command to handle it.',
|
|
217
|
+
schema: {
|
|
218
|
+
action: z
|
|
219
|
+
.enum(['accept', 'dismiss'])
|
|
220
|
+
.describe('Whether to dismiss or accept the dialog'),
|
|
221
|
+
promptText: z
|
|
222
|
+
.string()
|
|
223
|
+
.optional()
|
|
224
|
+
.describe('Optional prompt text to enter into the dialog.'),
|
|
225
|
+
},
|
|
226
|
+
handler: async (params, driver) => {
|
|
227
|
+
try {
|
|
228
|
+
const d = await driver.ensureDriver();
|
|
229
|
+
const alert = await d.switchTo().alert();
|
|
230
|
+
if (params.promptText) {
|
|
231
|
+
await alert.sendKeys(params.promptText);
|
|
232
|
+
}
|
|
233
|
+
if (params.action === 'accept') {
|
|
234
|
+
await alert.accept();
|
|
235
|
+
return {
|
|
236
|
+
content: [
|
|
237
|
+
{
|
|
238
|
+
type: 'text',
|
|
239
|
+
text: 'Successfully accepted the dialog.',
|
|
240
|
+
},
|
|
241
|
+
],
|
|
242
|
+
};
|
|
243
|
+
}
|
|
244
|
+
else {
|
|
245
|
+
await alert.dismiss();
|
|
246
|
+
return {
|
|
247
|
+
content: [
|
|
248
|
+
{
|
|
249
|
+
type: 'text',
|
|
250
|
+
text: 'Successfully dismissed the dialog.',
|
|
251
|
+
},
|
|
252
|
+
],
|
|
253
|
+
};
|
|
254
|
+
}
|
|
255
|
+
}
|
|
256
|
+
catch (error) {
|
|
257
|
+
return {
|
|
258
|
+
content: [
|
|
259
|
+
{
|
|
260
|
+
type: 'text',
|
|
261
|
+
text: `No open dialog found or error handling dialog: ${error instanceof Error ? error.message : String(error)}`,
|
|
262
|
+
},
|
|
263
|
+
],
|
|
264
|
+
isError: true,
|
|
265
|
+
};
|
|
266
|
+
}
|
|
267
|
+
},
|
|
268
|
+
}),
|
|
269
|
+
];
|
|
235
270
|
//# sourceMappingURL=pages.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pages.js","sourceRoot":"","sources":["../../../src/tools/pages.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAC,CAAC,EAAC,MAAM,KAAK,CAAC;
|
|
1
|
+
{"version":3,"file":"pages.js","sourceRoot":"","sources":["../../../src/tools/pages.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,10 +6,5 @@
|
|
|
6
6
|
* fullPage screenshots natively. Element screenshots are supported via UIDs.
|
|
7
7
|
*/
|
|
8
8
|
import { z } from 'zod';
|
|
9
|
-
|
|
10
|
-
export declare const takeScreenshotSchema: {
|
|
11
|
-
uid: z.ZodOptional<z.ZodString>;
|
|
12
|
-
filePath: z.ZodOptional<z.ZodString>;
|
|
13
|
-
};
|
|
14
|
-
export declare const takeScreenshot: ToolHandler;
|
|
9
|
+
export declare const tools: import("./types.js").ToolDef<z.ZodRawShape>[];
|
|
15
10
|
//# sourceMappingURL=screenshot.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"screenshot.d.ts","sourceRoot":"","sources":["../../../src/tools/screenshot.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAC,CAAC,EAAC,MAAM,KAAK,CAAC;
|
|
1
|
+
{"version":3,"file":"screenshot.d.ts","sourceRoot":"","sources":["../../../src/tools/screenshot.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAC,CAAC,EAAC,MAAM,KAAK,CAAC;AAItB,eAAO,MAAM,KAAK,+CA6EjB,CAAC"}
|