fastbrowser_cli 1.0.20 → 1.0.21
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/fastbrowser_mcp/fastbrowser_mcp.js +44 -0
- package/dist/fastbrowser_mcp/fastbrowser_mcp.js.map +1 -1
- package/dist/fastbrowser_mcp/libs/mcp_target_helper.d.ts +3 -1
- package/dist/fastbrowser_mcp/libs/mcp_target_helper.d.ts.map +1 -1
- package/dist/fastbrowser_mcp/libs/mcp_target_helper.js +41 -1
- package/dist/fastbrowser_mcp/libs/mcp_target_helper.js.map +1 -1
- package/dist/fastbrowser_mcp/libs/response_formatter.d.ts +2 -0
- package/dist/fastbrowser_mcp/libs/response_formatter.d.ts.map +1 -1
- package/dist/fastbrowser_mcp/libs/response_formatter.js +49 -0
- package/dist/fastbrowser_mcp/libs/response_formatter.js.map +1 -1
- package/docs/articles/ai_workflow_to_shell_scripts.md +21 -0
- package/package.json +4 -4
- package/src/fastbrowser_mcp/fastbrowser_mcp.ts +59 -0
- package/src/fastbrowser_mcp/libs/mcp_target_helper.ts +39 -1
- package/src/fastbrowser_mcp/libs/response_formatter.ts +52 -0
|
@@ -149,6 +149,50 @@ class MainHelper {
|
|
|
149
149
|
});
|
|
150
150
|
///////////////////////////////////////////////////////////////////////////////
|
|
151
151
|
///////////////////////////////////////////////////////////////////////////////
|
|
152
|
+
// new_page
|
|
153
|
+
///////////////////////////////////////////////////////////////////////////////
|
|
154
|
+
///////////////////////////////////////////////////////////////////////////////
|
|
155
|
+
mcpServer.registerTool(McpTargetHelper.EXTERNAL_TOOL_NAME.newPage, {
|
|
156
|
+
description: "Open a new browser page/tab at the given URL",
|
|
157
|
+
inputSchema: z.object({
|
|
158
|
+
url: z.string().describe("The URL to open in the new page"),
|
|
159
|
+
}),
|
|
160
|
+
}, async ({ url }) => {
|
|
161
|
+
// NOTE: when running on playwright MCP, we use the navigate_page tool instead of new_page, because
|
|
162
|
+
// playwright MCP's new_page tool open a new tab but not in the tag-group... so we cant controls it
|
|
163
|
+
// it is happening even when using playwright mcp directly
|
|
164
|
+
//
|
|
165
|
+
// const toolConfig = await McpTargetHelper.targetToolNewPage(mcpTarget, url);
|
|
166
|
+
// const callToolResult = await mcpClient.callTool(toolConfig.toolName, toolConfig.toolArgs);
|
|
167
|
+
// let outputStr = await ResponseFormatter.formatNewPage(mcpTarget, callToolResult, url);
|
|
168
|
+
// so working around this by calling the navigate_page tool instead of new_page when the target is playwright
|
|
169
|
+
const toolConfig = await McpTargetHelper.targetToolNavigatePage(mcpTarget, url);
|
|
170
|
+
const callToolResult = await mcpClient.callTool(toolConfig.toolName, toolConfig.toolArgs);
|
|
171
|
+
let outputStr = await ResponseFormatter.formatNavigatePage(mcpTarget, callToolResult);
|
|
172
|
+
return {
|
|
173
|
+
content: [{ type: "text", text: outputStr }],
|
|
174
|
+
};
|
|
175
|
+
});
|
|
176
|
+
///////////////////////////////////////////////////////////////////////////////
|
|
177
|
+
///////////////////////////////////////////////////////////////////////////////
|
|
178
|
+
// close_page
|
|
179
|
+
///////////////////////////////////////////////////////////////////////////////
|
|
180
|
+
///////////////////////////////////////////////////////////////////////////////
|
|
181
|
+
mcpServer.registerTool(McpTargetHelper.EXTERNAL_TOOL_NAME.closePage, {
|
|
182
|
+
description: "Close a browser page/tab by its id (as listed by list_pages)",
|
|
183
|
+
inputSchema: z.object({
|
|
184
|
+
pageId: z.number().describe("The id of the page to close"),
|
|
185
|
+
}),
|
|
186
|
+
}, async ({ pageId }) => {
|
|
187
|
+
const toolConfig = await McpTargetHelper.targetToolClosePage(mcpTarget, pageId);
|
|
188
|
+
const callToolResult = await mcpClient.callTool(toolConfig.toolName, toolConfig.toolArgs);
|
|
189
|
+
let outputStr = await ResponseFormatter.formatClosePage(mcpTarget, callToolResult, pageId);
|
|
190
|
+
return {
|
|
191
|
+
content: [{ type: "text", text: outputStr }],
|
|
192
|
+
};
|
|
193
|
+
});
|
|
194
|
+
///////////////////////////////////////////////////////////////////////////////
|
|
195
|
+
///////////////////////////////////////////////////////////////////////////////
|
|
152
196
|
// navigate_page
|
|
153
197
|
///////////////////////////////////////////////////////////////////////////////
|
|
154
198
|
///////////////////////////////////////////////////////////////////////////////
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fastbrowser_mcp.js","sourceRoot":"","sources":["../../src/fastbrowser_mcp/fastbrowser_mcp.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"fastbrowser_mcp.js","sourceRoot":"","sources":["../../src/fastbrowser_mcp/fastbrowser_mcp.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,8 +8,8 @@ export declare class McpTargetHelper {
|
|
|
8
8
|
listPages: string;
|
|
9
9
|
newPage: string;
|
|
10
10
|
closePage: string;
|
|
11
|
-
takeSnapshot: string;
|
|
12
11
|
navigatePage: string;
|
|
12
|
+
takeSnapshot: string;
|
|
13
13
|
querySelectorsAll: string;
|
|
14
14
|
querySelectors: string;
|
|
15
15
|
pressKeys: string;
|
|
@@ -23,6 +23,8 @@ export declare class McpTargetHelper {
|
|
|
23
23
|
};
|
|
24
24
|
static toolsToProxy(mcpTarget: FastBrowserMcpTarget): Promise<string[]>;
|
|
25
25
|
static targetToolListPages(mcpTarget: FastBrowserMcpTarget): Promise<TargetToolConfig>;
|
|
26
|
+
static targetToolNewPage(mcpTarget: FastBrowserMcpTarget, url: string): Promise<TargetToolConfig>;
|
|
27
|
+
static targetToolClosePage(mcpTarget: FastBrowserMcpTarget, pageId: number): Promise<TargetToolConfig>;
|
|
26
28
|
static targetToolNavigatePage(mcpTarget: FastBrowserMcpTarget, url: string): Promise<TargetToolConfig>;
|
|
27
29
|
static targetToolTakeSnapshot(mcpTarget: FastBrowserMcpTarget): Promise<TargetToolConfig>;
|
|
28
30
|
static targetToolPressKey(mcpTarget: FastBrowserMcpTarget, key: string): Promise<TargetToolConfig>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp_target_helper.d.ts","sourceRoot":"","sources":["../../../src/fastbrowser_mcp/libs/mcp_target_helper.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAE/D,MAAM,MAAM,gBAAgB,GAAG;IAC9B,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAClC,CAAC;AAEF,qBAAa,eAAe;IAC3B,MAAM,CAAC,kBAAkB;;;;;;;;;;;;MAYxB;IAQD,MAAM,CAAC,OAAO,CAAC,SAAS,EAAE,oBAAoB,GAAG;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,EAAE,CAAA;KAAE;WAsBvE,YAAY,CAAC,SAAS,EAAE,oBAAoB,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;WA6BhE,mBAAmB,CAAC,SAAS,EAAE,oBAAoB,GAAG,OAAO,CAAC,gBAAgB,CAAC;WAkB/E,sBAAsB,CAAC,SAAS,EAAE,oBAAoB,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC;WAkB/F,sBAAsB,CAAC,SAAS,EAAE,oBAAoB,GAAG,OAAO,CAAC,gBAAgB,CAAC;WAUlF,kBAAkB,CAAC,SAAS,EAAE,oBAAoB,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC;WAkB3F,eAAe,CAAC,SAAS,EAAE,oBAAoB,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC;WAUxF,kBAAkB,CAAC,SAAS,EAAE,oBAAoB,EAAE,QAAQ,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,EAAE,GAAG,OAAO,CAAC,gBAAgB,CAAC;CASvI"}
|
|
1
|
+
{"version":3,"file":"mcp_target_helper.d.ts","sourceRoot":"","sources":["../../../src/fastbrowser_mcp/libs/mcp_target_helper.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAE/D,MAAM,MAAM,gBAAgB,GAAG;IAC9B,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAClC,CAAC;AAEF,qBAAa,eAAe;IAC3B,MAAM,CAAC,kBAAkB;;;;;;;;;;;;MAYxB;IAQD,MAAM,CAAC,OAAO,CAAC,SAAS,EAAE,oBAAoB,GAAG;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,EAAE,CAAA;KAAE;WAsBvE,YAAY,CAAC,SAAS,EAAE,oBAAoB,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;WA6BhE,mBAAmB,CAAC,SAAS,EAAE,oBAAoB,GAAG,OAAO,CAAC,gBAAgB,CAAC;WAkB/E,iBAAiB,CAAC,SAAS,EAAE,oBAAoB,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC;WAmB1F,mBAAmB,CAAC,SAAS,EAAE,oBAAoB,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC;WAmB/F,sBAAsB,CAAC,SAAS,EAAE,oBAAoB,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC;WAkB/F,sBAAsB,CAAC,SAAS,EAAE,oBAAoB,GAAG,OAAO,CAAC,gBAAgB,CAAC;WAUlF,kBAAkB,CAAC,SAAS,EAAE,oBAAoB,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC;WAkB3F,eAAe,CAAC,SAAS,EAAE,oBAAoB,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC;WAUxF,kBAAkB,CAAC,SAAS,EAAE,oBAAoB,EAAE,QAAQ,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,EAAE,GAAG,OAAO,CAAC,gBAAgB,CAAC;CASvI"}
|
|
@@ -73,6 +73,46 @@ export class McpTargetHelper {
|
|
|
73
73
|
throw new Error(`Unsupported MCP target: ${mcpTarget}`);
|
|
74
74
|
}
|
|
75
75
|
}
|
|
76
|
+
static async targetToolNewPage(mcpTarget, url) {
|
|
77
|
+
if (mcpTarget === 'chrome_devtools') {
|
|
78
|
+
return {
|
|
79
|
+
toolName: 'new_page', toolArgs: {
|
|
80
|
+
url,
|
|
81
|
+
}
|
|
82
|
+
};
|
|
83
|
+
}
|
|
84
|
+
else if (mcpTarget === 'playwright') {
|
|
85
|
+
return {
|
|
86
|
+
toolName: 'browser_tabs', toolArgs: {
|
|
87
|
+
action: 'new',
|
|
88
|
+
url,
|
|
89
|
+
}
|
|
90
|
+
};
|
|
91
|
+
}
|
|
92
|
+
else {
|
|
93
|
+
throw new Error(`Unsupported MCP target: ${mcpTarget}`);
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
static async targetToolClosePage(mcpTarget, pageId) {
|
|
97
|
+
if (mcpTarget === 'chrome_devtools') {
|
|
98
|
+
return {
|
|
99
|
+
toolName: 'close_page', toolArgs: {
|
|
100
|
+
pageId,
|
|
101
|
+
}
|
|
102
|
+
};
|
|
103
|
+
}
|
|
104
|
+
else if (mcpTarget === 'playwright') {
|
|
105
|
+
return {
|
|
106
|
+
toolName: 'browser_tabs', toolArgs: {
|
|
107
|
+
action: 'close',
|
|
108
|
+
index: pageId,
|
|
109
|
+
}
|
|
110
|
+
};
|
|
111
|
+
}
|
|
112
|
+
else {
|
|
113
|
+
throw new Error(`Unsupported MCP target: ${mcpTarget}`);
|
|
114
|
+
}
|
|
115
|
+
}
|
|
76
116
|
static async targetToolNavigatePage(mcpTarget, url) {
|
|
77
117
|
if (mcpTarget === 'chrome_devtools') {
|
|
78
118
|
return {
|
|
@@ -149,8 +189,8 @@ McpTargetHelper.EXTERNAL_TOOL_NAME = {
|
|
|
149
189
|
listPages: "list_pages",
|
|
150
190
|
newPage: "new_page",
|
|
151
191
|
closePage: "close_page",
|
|
152
|
-
takeSnapshot: "take_snapshot",
|
|
153
192
|
navigatePage: "navigate_page",
|
|
193
|
+
takeSnapshot: "take_snapshot",
|
|
154
194
|
querySelectorsAll: "querySelectorsAll",
|
|
155
195
|
querySelectors: "querySelectors",
|
|
156
196
|
pressKeys: "pressKeys",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp_target_helper.js","sourceRoot":"","sources":["../../../src/fastbrowser_mcp/libs/mcp_target_helper.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"mcp_target_helper.js","sourceRoot":"","sources":["../../../src/fastbrowser_mcp/libs/mcp_target_helper.ts"],"names":[],"mappings":"AAQA,MAAM,OAAO,eAAe;IAe3B,+EAA+E;IAC/E,+EAA+E;IAC/E,oBAAoB;IACpB,+EAA+E;IAC/E,+EAA+E;IAE/E,MAAM,CAAC,OAAO,CAAC,SAA+B;QAC7C,IAAI,UAAkB,CAAC;QACvB,IAAI,OAAiB,CAAC;QACtB,IAAI,SAAS,KAAK,iBAAiB,EAAE,CAAC;YACrC,UAAU,GAAG,KAAK,CAAC;YACnB,OAAO,GAAG,CAAC,4BAA4B,EAAE,eAAe,EAAE,uBAAuB,EAAE,uBAAuB,CAAC,CAAC;QAC7G,CAAC;aAAM,IAAI,SAAS,KAAK,YAAY,EAAE,CAAC;YACvC,mDAAmD;YACnD,kEAAkE;YAClE,yCAAyC;YACzC,GAAG;YACH,2FAA2F;YAC3F,uEAAuE;YACvE,UAAU,GAAG,KAAK,CAAC;YACnB,OAAO,GAAG,CAAC,iBAAiB,EAAE,aAAa,CAAC,CAAC;QAC9C,CAAC;aAAM,CAAC;YACP,MAAM,IAAI,KAAK,CAAC,yBAAyB,SAAS,EAAE,CAAC,CAAC;QACvD,CAAC;QAED,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;IAC/C,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC,SAA+B;QACxD,MAAM,aAAa,GAAa,EAAE,CAAA;QAClC,IAAI,SAAS,KAAK,iBAAiB,EAAE,CAAC;YACrC,aAAa,CAAC,IAAI,CAAC,GAAG;YACrB,gBAAgB;YAChB,cAAc;YACd,gBAAgB;YAChB,mBAAmB;YACnB,mBAAmB;aACnB,CAAC,CAAA;QACH,CAAC;aAAM,IAAI,SAAS,KAAK,YAAY,EAAE,CAAC;YACvC,aAAa,CAAC,IAAI,CAAC,GAAG;YACrB,kBAAkB;YAClB,sBAAsB;YACtB,sBAAsB;aACtB,CAAC,CAAA;QACH,CAAC;aAAM,CAAC;YACP,MAAM,IAAI,KAAK,CAAC,yBAAyB,SAAS,EAAE,CAAC,CAAC;QACvD,CAAC;QACD,OAAO,aAAa,CAAC;IACtB,CAAC;IAED,+EAA+E;IAC/E,+EAA+E;IAC/E,uBAAuB;IACvB,+EAA+E;IAC/E,+EAA+E;IAG/E,MAAM,CAAC,KAAK,CAAC,mBAAmB,CAAC,SAA+B;QAC/D,IAAI,SAAS,KAAK,iBAAiB,EAAE,CAAC;YACrC,OAAO;gBACN,QAAQ,EAAE,YAAY,EAAE,QAAQ,EAAE;gBACjC,+DAA+D;iBAC/D;aACD,CAAC;QACH,CAAC;aAAM,IAAI,SAAS,KAAK,YAAY,EAAE,CAAC;YACvC,OAAO;gBACN,QAAQ,EAAE,cAAc,EAAE,QAAQ,EAAE;oBACnC,MAAM,EAAE,MAAM;iBACd;aACD,CAAC;QACH,CAAC;aAAM,CAAC;YACP,MAAM,IAAI,KAAK,CAAC,2BAA2B,SAAS,EAAE,CAAC,CAAC;QACzD,CAAC;IACF,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,iBAAiB,CAAC,SAA+B,EAAE,GAAW;QAC1E,IAAI,SAAS,KAAK,iBAAiB,EAAE,CAAC;YACrC,OAAO;gBACN,QAAQ,EAAE,UAAU,EAAE,QAAQ,EAAE;oBAC/B,GAAG;iBACH;aACD,CAAC;QACH,CAAC;aAAM,IAAI,SAAS,KAAK,YAAY,EAAE,CAAC;YACvC,OAAO;gBACN,QAAQ,EAAE,cAAc,EAAE,QAAQ,EAAE;oBACnC,MAAM,EAAE,KAAK;oBACb,GAAG;iBACH;aACD,CAAC;QACH,CAAC;aAAM,CAAC;YACP,MAAM,IAAI,KAAK,CAAC,2BAA2B,SAAS,EAAE,CAAC,CAAC;QACzD,CAAC;IACF,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,mBAAmB,CAAC,SAA+B,EAAE,MAAc;QAC/E,IAAI,SAAS,KAAK,iBAAiB,EAAE,CAAC;YACrC,OAAO;gBACN,QAAQ,EAAE,YAAY,EAAE,QAAQ,EAAE;oBACjC,MAAM;iBACN;aACD,CAAC;QACH,CAAC;aAAM,IAAI,SAAS,KAAK,YAAY,EAAE,CAAC;YACvC,OAAO;gBACN,QAAQ,EAAE,cAAc,EAAE,QAAQ,EAAE;oBACnC,MAAM,EAAE,OAAO;oBACf,KAAK,EAAE,MAAM;iBACb;aACD,CAAC;QACH,CAAC;aAAM,CAAC;YACP,MAAM,IAAI,KAAK,CAAC,2BAA2B,SAAS,EAAE,CAAC,CAAC;QACzD,CAAC;IACF,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,sBAAsB,CAAC,SAA+B,EAAE,GAAW;QAC/E,IAAI,SAAS,KAAK,iBAAiB,EAAE,CAAC;YACrC,OAAO;gBACN,QAAQ,EAAE,eAAe,EAAE,QAAQ,EAAE;oBACpC,GAAG;iBACH;aACD,CAAC;QACH,CAAC;aAAM,IAAI,SAAS,KAAK,YAAY,EAAE,CAAC;YACvC,OAAO;gBACN,QAAQ,EAAE,kBAAkB,EAAE,QAAQ,EAAE;oBACvC,GAAG;iBACH;aACD,CAAC;QACH,CAAC;aAAM,CAAC;YACP,MAAM,IAAI,KAAK,CAAC,2BAA2B,SAAS,EAAE,CAAC,CAAC;QACzD,CAAC;IACF,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,sBAAsB,CAAC,SAA+B;QAClE,IAAI,SAAS,KAAK,iBAAiB,EAAE,CAAC;YACrC,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;QACpD,CAAC;aAAM,IAAI,SAAS,KAAK,YAAY,EAAE,CAAC;YACvC,OAAO,EAAE,QAAQ,EAAE,kBAAkB,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;QACvD,CAAC;aAAM,CAAC;YACP,MAAM,IAAI,KAAK,CAAC,2BAA2B,SAAS,EAAE,CAAC,CAAC;QACzD,CAAC;IACF,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,kBAAkB,CAAC,SAA+B,EAAE,GAAW;QAC3E,IAAI,SAAS,KAAK,iBAAiB,EAAE,CAAC;YACrC,OAAO;gBACN,QAAQ,EAAE,WAAW,EAAE,QAAQ,EAAE;oBAChC,GAAG,EAAE,GAAG;iBACR;aACD,CAAC;QACH,CAAC;aAAM,IAAI,SAAS,KAAK,YAAY,EAAE,CAAC;YACvC,OAAO;gBACN,QAAQ,EAAE,mBAAmB,EAAE,QAAQ,EAAE;oBACxC,GAAG,EAAE,GAAG;iBACR;aACD,CAAC;QACH,CAAC;aAAM,CAAC;YACP,MAAM,IAAI,KAAK,CAAC,2BAA2B,SAAS,EAAE,CAAC,CAAC;QACzD,CAAC;IACF,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,eAAe,CAAC,SAA+B,EAAE,GAAW;QACxE,IAAI,SAAS,KAAK,iBAAiB,EAAE,CAAC;YACrC,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,GAAG,EAAE,EAAE,CAAC;QACjD,CAAC;aAAM,IAAI,SAAS,KAAK,YAAY,EAAE,CAAC;YACvC,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAE,QAAQ,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC;QAC9D,CAAC;aAAM,CAAC;YACP,MAAM,IAAI,KAAK,CAAC,2BAA2B,SAAS,EAAE,CAAC,CAAC;QACzD,CAAC;IACF,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,kBAAkB,CAAC,SAA+B,EAAE,QAA0C;QAC1G,IAAI,SAAS,KAAK,iBAAiB,EAAE,CAAC;YACrC,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,QAAQ,EAAE,EAAE,QAAQ,EAAE,EAAE,CAAC;QAC1D,CAAC;aAAM,IAAI,SAAS,KAAK,YAAY,EAAE,CAAC;YACvC,MAAM,IAAI,KAAK,CAAC,+DAA+D,CAAC,CAAC;QAClF,CAAC;aAAM,CAAC;YACP,MAAM,IAAI,KAAK,CAAC,2BAA2B,SAAS,EAAE,CAAC,CAAC;QACzD,CAAC;IACF,CAAC;;AA/LM,kCAAkB,GAAG;IAC3B,SAAS,EAAE,YAAY;IACvB,OAAO,EAAE,UAAU;IACnB,SAAS,EAAE,YAAY;IACvB,YAAY,EAAE,eAAe;IAC7B,YAAY,EAAE,eAAe;IAC7B,iBAAiB,EAAE,mBAAmB;IACtC,cAAc,EAAE,gBAAgB;IAChC,SAAS,EAAE,WAAW;IACtB,KAAK,EAAE,OAAO;IACd,QAAQ,EAAE,WAAW;IACrB,kBAAkB,EAAE,sBAAsB;CAC1C,CAAA"}
|
|
@@ -3,6 +3,8 @@ import { FastBrowserMcpTarget } from "../fastbrowser_types.js";
|
|
|
3
3
|
export declare class ResponseFormatter {
|
|
4
4
|
static formatListPages(mcpTarget: FastBrowserMcpTarget, callToolResult: CallToolResult): Promise<string>;
|
|
5
5
|
static formatNavigatePage(mcpTarget: FastBrowserMcpTarget, callToolResult: CallToolResult): Promise<string>;
|
|
6
|
+
static formatNewPage(mcpTarget: FastBrowserMcpTarget, callToolResult: CallToolResult, url: string): Promise<string>;
|
|
7
|
+
static formatClosePage(mcpTarget: FastBrowserMcpTarget, callToolResult: CallToolResult, pageId: number): Promise<string>;
|
|
6
8
|
static formatTakeSnapshot(mcpTarget: FastBrowserMcpTarget, callToolResult: CallToolResult): Promise<string>;
|
|
7
9
|
static formatPressKeys(mcpTarget: FastBrowserMcpTarget, keysToSend: string[]): Promise<string>;
|
|
8
10
|
static formatClick(mcpTarget: FastBrowserMcpTarget, callToolResult: CallToolResult): Promise<string>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"response_formatter.d.ts","sourceRoot":"","sources":["../../../src/fastbrowser_mcp/libs/response_formatter.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AAGjE,OAAO,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAG/D,qBAAa,iBAAiB;WAChB,eAAe,CAAC,SAAS,EAAE,oBAAoB,EAAE,cAAc,EAAE,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC;WA+CjG,kBAAkB,CAAC,SAAS,EAAE,oBAAoB,EAAE,cAAc,EAAE,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC;WA6CpG,kBAAkB,CAAC,SAAS,EAAE,oBAAoB,EAAE,cAAc,EAAE,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC;WAqBpG,eAAe,CAAC,SAAS,EAAE,oBAAoB,EAAE,UAAU,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC;WAKvF,WAAW,CAAC,SAAS,EAAE,oBAAoB,EAAE,cAAc,EAAE,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC;CAgC1G"}
|
|
1
|
+
{"version":3,"file":"response_formatter.d.ts","sourceRoot":"","sources":["../../../src/fastbrowser_mcp/libs/response_formatter.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AAGjE,OAAO,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAG/D,qBAAa,iBAAiB;WAChB,eAAe,CAAC,SAAS,EAAE,oBAAoB,EAAE,cAAc,EAAE,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC;WA+CjG,kBAAkB,CAAC,SAAS,EAAE,oBAAoB,EAAE,cAAc,EAAE,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC;WA6CpG,aAAa,CAAC,SAAS,EAAE,oBAAoB,EAAE,cAAc,EAAE,cAAc,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;WA2C5G,eAAe,CAAC,SAAS,EAAE,oBAAoB,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;WASjH,kBAAkB,CAAC,SAAS,EAAE,oBAAoB,EAAE,cAAc,EAAE,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC;WAqBpG,eAAe,CAAC,SAAS,EAAE,oBAAoB,EAAE,UAAU,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC;WAKvF,WAAW,CAAC,SAAS,EAAE,oBAAoB,EAAE,cAAc,EAAE,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC;CAgC1G"}
|
|
@@ -93,6 +93,55 @@ export class ResponseFormatter {
|
|
|
93
93
|
throw new Error(`Unsupported MCP target: ${mcpTarget}`);
|
|
94
94
|
}
|
|
95
95
|
}
|
|
96
|
+
static async formatNewPage(mcpTarget, callToolResult, url) {
|
|
97
|
+
const resultContent = callToolResult.content[0];
|
|
98
|
+
if (resultContent.type !== "text")
|
|
99
|
+
throw new Error("Unexpected content type");
|
|
100
|
+
const resultText = resultContent.text;
|
|
101
|
+
// Target format example:
|
|
102
|
+
// Successfully opened new page at https://example.com
|
|
103
|
+
if (mcpTarget === 'chrome_devtools') {
|
|
104
|
+
// EXAMPLE:
|
|
105
|
+
// # new_page response
|
|
106
|
+
// Opened new page <id> with URL: https://example.com
|
|
107
|
+
// ## Pages
|
|
108
|
+
// 0: about:blank
|
|
109
|
+
// 1: https://example.com/ [selected]
|
|
110
|
+
// Best-effort: extract URL from the first non-empty line; fall back to the requested URL.
|
|
111
|
+
const lines = resultText.split('\n').map(line => line.trim()).filter(line => line.length > 0);
|
|
112
|
+
const firstLine = lines.length > 0 ? lines[0] : '';
|
|
113
|
+
const urlMatch = firstLine.match(/(https?:\/\/\S+)/);
|
|
114
|
+
const extractedUrl = urlMatch !== null ? urlMatch[1] : url;
|
|
115
|
+
return `Successfully opened new page at ${extractedUrl}`;
|
|
116
|
+
}
|
|
117
|
+
else if (mcpTarget === 'playwright') {
|
|
118
|
+
// EXAMPLE:
|
|
119
|
+
// ### Ran Playwright code
|
|
120
|
+
// ```js
|
|
121
|
+
// await context.newPage();
|
|
122
|
+
// ```
|
|
123
|
+
// ### Page
|
|
124
|
+
// - Page URL: https://example.com/
|
|
125
|
+
// - Page Title: Example Domain
|
|
126
|
+
// ### Snapshot
|
|
127
|
+
// - [Snapshot](.playwright-mcp/page-...yml)
|
|
128
|
+
const lines = resultText.split('\n');
|
|
129
|
+
const pageUrlLine = lines.find(line => line.trim().startsWith('- Page URL:'));
|
|
130
|
+
const pageUrl = pageUrlLine !== undefined ? pageUrlLine.replace('- Page URL:', '').trim() : url;
|
|
131
|
+
return `Successfully opened new page at ${pageUrl}`;
|
|
132
|
+
}
|
|
133
|
+
else {
|
|
134
|
+
throw new Error(`Unsupported MCP target: ${mcpTarget}`);
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
static async formatClosePage(mcpTarget, callToolResult, pageId) {
|
|
138
|
+
const resultContent = callToolResult.content[0];
|
|
139
|
+
if (resultContent.type !== "text")
|
|
140
|
+
throw new Error("Unexpected content type");
|
|
141
|
+
// Target format example:
|
|
142
|
+
// Successfully closed page 1
|
|
143
|
+
return `Successfully closed page ${pageId}`;
|
|
144
|
+
}
|
|
96
145
|
static async formatTakeSnapshot(mcpTarget, callToolResult) {
|
|
97
146
|
// extract the snapshot text from the tool response, which has different formats for chrome_devtools and playwright MCP targets
|
|
98
147
|
if (mcpTarget === 'chrome_devtools') {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"response_formatter.js","sourceRoot":"","sources":["../../../src/fastbrowser_mcp/libs/response_formatter.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"response_formatter.js","sourceRoot":"","sources":["../../../src/fastbrowser_mcp/libs/response_formatter.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
# Ai Workflow to Shell Scripts
|
|
2
|
+
|
|
3
|
+
## Introduction
|
|
4
|
+
This document explains how to use SKILL.md files to create shell scripts from AI-assisted workflows.
|
|
5
|
+
|
|
6
|
+
### What SKILL.md files are
|
|
7
|
+
- SKILL.md files contain knowledge — that's why they're called *skills*.
|
|
8
|
+
- To interact with the outside world, a skill launches shell commands from the command line.
|
|
9
|
+
|
|
10
|
+
### The AI-to-script workflow
|
|
11
|
+
- You collaborate with an AI agent that uses a skill, which in turn runs a sequence of shell commands to accomplish a task.
|
|
12
|
+
- Once the workflow is proven, you ask the agent to extract those commands into a standalone shell script — a *recipe* that reproduces the same workflow without an agent in the loop.
|
|
13
|
+
|
|
14
|
+
### Why this matters
|
|
15
|
+
- **First run (with AI):** expensive and relatively slow, since every step goes through the agent.
|
|
16
|
+
- **Subsequent runs (script only):** faster and cheaper — no AI calls, just the recorded recipe doing the same work.
|
|
17
|
+
- **Reproducibility:** same input produces the same output every time; the run-to-run variance of an agent disappears.
|
|
18
|
+
- **Auditability:** the script is a plain, reviewable artifact — you can read it, diff it, and commit it, instead of trusting opaque agent reasoning.
|
|
19
|
+
- **Automation-friendly:** the recipe drops cleanly into cron, CI/CD, Makefiles, or other scripts — places where keeping an agent in the loop isn't practical.
|
|
20
|
+
- **Offline / air-gapped:** runs with no internet access and no API key, which matters for restricted or disconnected environments.
|
|
21
|
+
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "fastbrowser_cli",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.21",
|
|
4
4
|
"description": "",
|
|
5
5
|
"main": "dist/fastbrowser_cli/fastbrowser_cli.js",
|
|
6
6
|
"bin": {
|
|
@@ -8,9 +8,9 @@
|
|
|
8
8
|
"fastbrowser_mcp": "./dist/fastbrowser_mcp/fastbrowser_mcp.js"
|
|
9
9
|
},
|
|
10
10
|
"scripts": {
|
|
11
|
-
"
|
|
12
|
-
"
|
|
13
|
-
"
|
|
11
|
+
"dev:fastbrowser_mcp": "npx tsx ./src/fastbrowser_mcp/fastbrowser_mcp.ts",
|
|
12
|
+
"dev:httpd": "npx tsx ./src/fastbrowser_httpd/fastbrowser_httpd.ts",
|
|
13
|
+
"dev:cli": "npx tsx ./src/fastbrowser_cli/fastbrowser_cli.ts",
|
|
14
14
|
"inspect:fastbrowser_mcp:chrome_devtools": "npx @modelcontextprotocol/inspector npx tsx ./src/fastbrowser_mcp/fastbrowser_mcp.ts mcp_server --mcp_target chrome_devtools",
|
|
15
15
|
"inspect:fastbrowser_mcp:playwright": "npx @modelcontextprotocol/inspector npx tsx ./src/fastbrowser_mcp/fastbrowser_mcp.ts mcp_server -v --mcp_target playwright",
|
|
16
16
|
"inspect:chrome_devtools": "npx @modelcontextprotocol/inspector npx chrome-devtools-mcp@latest --autoconnect",
|
|
@@ -200,6 +200,65 @@ class MainHelper {
|
|
|
200
200
|
}
|
|
201
201
|
);
|
|
202
202
|
|
|
203
|
+
///////////////////////////////////////////////////////////////////////////////
|
|
204
|
+
///////////////////////////////////////////////////////////////////////////////
|
|
205
|
+
// new_page
|
|
206
|
+
///////////////////////////////////////////////////////////////////////////////
|
|
207
|
+
///////////////////////////////////////////////////////////////////////////////
|
|
208
|
+
|
|
209
|
+
mcpServer.registerTool(
|
|
210
|
+
McpTargetHelper.EXTERNAL_TOOL_NAME.newPage,
|
|
211
|
+
{
|
|
212
|
+
description: "Open a new browser page/tab at the given URL",
|
|
213
|
+
inputSchema: z.object({
|
|
214
|
+
url: z.string().describe("The URL to open in the new page"),
|
|
215
|
+
}),
|
|
216
|
+
},
|
|
217
|
+
async ({ url }: { url: string }) => {
|
|
218
|
+
// NOTE: when running on playwright MCP, we use the navigate_page tool instead of new_page, because
|
|
219
|
+
// playwright MCP's new_page tool open a new tab but not in the tag-group... so we cant controls it
|
|
220
|
+
// it is happening even when using playwright mcp directly
|
|
221
|
+
//
|
|
222
|
+
// const toolConfig = await McpTargetHelper.targetToolNewPage(mcpTarget, url);
|
|
223
|
+
// const callToolResult = await mcpClient.callTool(toolConfig.toolName, toolConfig.toolArgs);
|
|
224
|
+
// let outputStr = await ResponseFormatter.formatNewPage(mcpTarget, callToolResult, url);
|
|
225
|
+
|
|
226
|
+
// so working around this by calling the navigate_page tool instead of new_page when the target is playwright
|
|
227
|
+
const toolConfig = await McpTargetHelper.targetToolNavigatePage(mcpTarget, url);
|
|
228
|
+
const callToolResult = await mcpClient.callTool(toolConfig.toolName, toolConfig.toolArgs);
|
|
229
|
+
let outputStr = await ResponseFormatter.formatNavigatePage(mcpTarget, callToolResult);
|
|
230
|
+
|
|
231
|
+
return {
|
|
232
|
+
content: [{ type: "text", text: outputStr }],
|
|
233
|
+
};
|
|
234
|
+
}
|
|
235
|
+
);
|
|
236
|
+
|
|
237
|
+
///////////////////////////////////////////////////////////////////////////////
|
|
238
|
+
///////////////////////////////////////////////////////////////////////////////
|
|
239
|
+
// close_page
|
|
240
|
+
///////////////////////////////////////////////////////////////////////////////
|
|
241
|
+
///////////////////////////////////////////////////////////////////////////////
|
|
242
|
+
|
|
243
|
+
mcpServer.registerTool(
|
|
244
|
+
McpTargetHelper.EXTERNAL_TOOL_NAME.closePage,
|
|
245
|
+
{
|
|
246
|
+
description: "Close a browser page/tab by its id (as listed by list_pages)",
|
|
247
|
+
inputSchema: z.object({
|
|
248
|
+
pageId: z.number().describe("The id of the page to close"),
|
|
249
|
+
}),
|
|
250
|
+
},
|
|
251
|
+
async ({ pageId }: { pageId: number }) => {
|
|
252
|
+
const toolConfig = await McpTargetHelper.targetToolClosePage(mcpTarget, pageId);
|
|
253
|
+
const callToolResult = await mcpClient.callTool(toolConfig.toolName, toolConfig.toolArgs);
|
|
254
|
+
let outputStr = await ResponseFormatter.formatClosePage(mcpTarget, callToolResult, pageId);
|
|
255
|
+
|
|
256
|
+
return {
|
|
257
|
+
content: [{ type: "text", text: outputStr }],
|
|
258
|
+
};
|
|
259
|
+
}
|
|
260
|
+
);
|
|
261
|
+
|
|
203
262
|
///////////////////////////////////////////////////////////////////////////////
|
|
204
263
|
///////////////////////////////////////////////////////////////////////////////
|
|
205
264
|
// navigate_page
|
|
@@ -11,8 +11,8 @@ export class McpTargetHelper {
|
|
|
11
11
|
listPages: "list_pages",
|
|
12
12
|
newPage: "new_page",
|
|
13
13
|
closePage: "close_page",
|
|
14
|
-
takeSnapshot: "take_snapshot",
|
|
15
14
|
navigatePage: "navigate_page",
|
|
15
|
+
takeSnapshot: "take_snapshot",
|
|
16
16
|
querySelectorsAll: "querySelectorsAll",
|
|
17
17
|
querySelectors: "querySelectors",
|
|
18
18
|
pressKeys: "pressKeys",
|
|
@@ -96,6 +96,44 @@ export class McpTargetHelper {
|
|
|
96
96
|
}
|
|
97
97
|
}
|
|
98
98
|
|
|
99
|
+
static async targetToolNewPage(mcpTarget: FastBrowserMcpTarget, url: string): Promise<TargetToolConfig> {
|
|
100
|
+
if (mcpTarget === 'chrome_devtools') {
|
|
101
|
+
return {
|
|
102
|
+
toolName: 'new_page', toolArgs: {
|
|
103
|
+
url,
|
|
104
|
+
}
|
|
105
|
+
};
|
|
106
|
+
} else if (mcpTarget === 'playwright') {
|
|
107
|
+
return {
|
|
108
|
+
toolName: 'browser_tabs', toolArgs: {
|
|
109
|
+
action: 'new',
|
|
110
|
+
url,
|
|
111
|
+
}
|
|
112
|
+
};
|
|
113
|
+
} else {
|
|
114
|
+
throw new Error(`Unsupported MCP target: ${mcpTarget}`);
|
|
115
|
+
}
|
|
116
|
+
}
|
|
117
|
+
|
|
118
|
+
static async targetToolClosePage(mcpTarget: FastBrowserMcpTarget, pageId: number): Promise<TargetToolConfig> {
|
|
119
|
+
if (mcpTarget === 'chrome_devtools') {
|
|
120
|
+
return {
|
|
121
|
+
toolName: 'close_page', toolArgs: {
|
|
122
|
+
pageId,
|
|
123
|
+
}
|
|
124
|
+
};
|
|
125
|
+
} else if (mcpTarget === 'playwright') {
|
|
126
|
+
return {
|
|
127
|
+
toolName: 'browser_tabs', toolArgs: {
|
|
128
|
+
action: 'close',
|
|
129
|
+
index: pageId,
|
|
130
|
+
}
|
|
131
|
+
};
|
|
132
|
+
} else {
|
|
133
|
+
throw new Error(`Unsupported MCP target: ${mcpTarget}`);
|
|
134
|
+
}
|
|
135
|
+
}
|
|
136
|
+
|
|
99
137
|
static async targetToolNavigatePage(mcpTarget: FastBrowserMcpTarget, url: string): Promise<TargetToolConfig> {
|
|
100
138
|
if (mcpTarget === 'chrome_devtools') {
|
|
101
139
|
return {
|
|
@@ -101,6 +101,58 @@ export class ResponseFormatter {
|
|
|
101
101
|
}
|
|
102
102
|
}
|
|
103
103
|
|
|
104
|
+
static async formatNewPage(mcpTarget: FastBrowserMcpTarget, callToolResult: CallToolResult, url: string): Promise<string> {
|
|
105
|
+
const resultContent = callToolResult.content[0];
|
|
106
|
+
if (resultContent.type !== "text") throw new Error("Unexpected content type");
|
|
107
|
+
const resultText: string = resultContent.text;
|
|
108
|
+
|
|
109
|
+
// Target format example:
|
|
110
|
+
// Successfully opened new page at https://example.com
|
|
111
|
+
|
|
112
|
+
if (mcpTarget === 'chrome_devtools') {
|
|
113
|
+
// EXAMPLE:
|
|
114
|
+
// # new_page response
|
|
115
|
+
// Opened new page <id> with URL: https://example.com
|
|
116
|
+
// ## Pages
|
|
117
|
+
// 0: about:blank
|
|
118
|
+
// 1: https://example.com/ [selected]
|
|
119
|
+
|
|
120
|
+
// Best-effort: extract URL from the first non-empty line; fall back to the requested URL.
|
|
121
|
+
const lines = resultText.split('\n').map(line => line.trim()).filter(line => line.length > 0);
|
|
122
|
+
const firstLine = lines.length > 0 ? lines[0] : '';
|
|
123
|
+
const urlMatch = firstLine.match(/(https?:\/\/\S+)/);
|
|
124
|
+
const extractedUrl = urlMatch !== null ? urlMatch[1] : url;
|
|
125
|
+
return `Successfully opened new page at ${extractedUrl}`;
|
|
126
|
+
} else if (mcpTarget === 'playwright') {
|
|
127
|
+
// EXAMPLE:
|
|
128
|
+
// ### Ran Playwright code
|
|
129
|
+
// ```js
|
|
130
|
+
// await context.newPage();
|
|
131
|
+
// ```
|
|
132
|
+
// ### Page
|
|
133
|
+
// - Page URL: https://example.com/
|
|
134
|
+
// - Page Title: Example Domain
|
|
135
|
+
// ### Snapshot
|
|
136
|
+
// - [Snapshot](.playwright-mcp/page-...yml)
|
|
137
|
+
|
|
138
|
+
const lines = resultText.split('\n');
|
|
139
|
+
const pageUrlLine = lines.find(line => line.trim().startsWith('- Page URL:'));
|
|
140
|
+
const pageUrl = pageUrlLine !== undefined ? pageUrlLine.replace('- Page URL:', '').trim() : url;
|
|
141
|
+
return `Successfully opened new page at ${pageUrl}`;
|
|
142
|
+
} else {
|
|
143
|
+
throw new Error(`Unsupported MCP target: ${mcpTarget}`);
|
|
144
|
+
}
|
|
145
|
+
}
|
|
146
|
+
|
|
147
|
+
static async formatClosePage(mcpTarget: FastBrowserMcpTarget, callToolResult: CallToolResult, pageId: number): Promise<string> {
|
|
148
|
+
const resultContent = callToolResult.content[0];
|
|
149
|
+
if (resultContent.type !== "text") throw new Error("Unexpected content type");
|
|
150
|
+
|
|
151
|
+
// Target format example:
|
|
152
|
+
// Successfully closed page 1
|
|
153
|
+
return `Successfully closed page ${pageId}`;
|
|
154
|
+
}
|
|
155
|
+
|
|
104
156
|
static async formatTakeSnapshot(mcpTarget: FastBrowserMcpTarget, callToolResult: CallToolResult): Promise<string> {
|
|
105
157
|
// extract the snapshot text from the tool response, which has different formats for chrome_devtools and playwright MCP targets
|
|
106
158
|
if (mcpTarget === 'chrome_devtools') {
|