@@ -197,6 +197,7 @@ export class McpResponse implements Response {
197197 pagination ?: PaginationOptions ;
198198 types ?: string [ ] ;
199199 includePreservedMessages ?: boolean ;
200+ serviceWorkerId ?: string ;
200201 } ;
201202 #listExtensions?: boolean ;
202203 #listThirdPartyDeveloperTools?: boolean ;
@@ -289,6 +290,7 @@ export class McpResponse implements Response {
289290 options ?: PaginationOptions & {
290291 types ?: string [ ] ;
291292 includePreservedMessages ?: boolean ;
293+ serviceWorkerId ?: string ;
292294 } ,
293295 ) : void {
294296 if ( ! value ) {
@@ -307,6 +309,7 @@ export class McpResponse implements Response {
307309 : undefined ,
308310 types : options ?. types ,
309311 includePreservedMessages : options ?. includePreservedMessages ,
312+ serviceWorkerId : options ?. serviceWorkerId ,
310313 } ;
311314 }
312315
@@ -582,14 +585,23 @@ export class McpResponse implements Response {
582585
583586 let consoleMessages : Array < ConsoleFormatter | IssueFormatter > | undefined ;
584587 if ( this . #consoleDataOptions?. include ) {
585- if ( ! this . #page) {
586- throw new Error ( `Response must have an McpPage` ) ;
588+ let messages ;
589+ let page : McpPage | undefined ;
590+
591+ if ( this . #consoleDataOptions. serviceWorkerId ) {
592+ messages = context . getServiceWorkerConsoleData (
593+ this . #consoleDataOptions. serviceWorkerId ,
594+ ) ;
595+ } else {
596+ page = this . #page;
597+ if ( ! page ) {
598+ throw new Error ( `Response must have an McpPage` ) ;
599+ }
600+ messages = context . getConsoleData (
601+ page ,
602+ this . #consoleDataOptions. includePreservedMessages ,
603+ ) ;
587604 }
588- const page = this . #page;
589- let messages = context . getConsoleData (
590- this . #page,
591- this . #consoleDataOptions. includePreservedMessages ,
592- ) ;
593605
594606 if ( this . #consoleDataOptions. types ?. length ) {
595607 const normalizedTypes = new Set ( this . #consoleDataOptions. types ) ;
@@ -612,7 +624,9 @@ export class McpResponse implements Response {
612624 context . getConsoleMessageStableId ( item ) ;
613625 if ( 'args' in item || item instanceof UncaughtError ) {
614626 const consoleMessage = item as ConsoleMessage | UncaughtError ;
615- const devTools = context . getDevToolsUniverse ( page ) ;
627+ const devTools = page
628+ ? context . getDevToolsUniverse ( page )
629+ : null ;
616630 return await ConsoleFormatter . from ( consoleMessage , {
617631 id : consoleMessageStableId ,
618632 fetchDetailedData : false ,
0 commit comments