Chrome DevTools MCP: evidencia real, alcance explícito y verificación
Por qué desaparecía false: leer el reenvío de argumentos de Chrome DevTools CLI
Traza la comparación con valores predeterminados, la corrección de start y la diferencia entre argv y un comando escapado.
Qué aprenderás
- Comparar con otros valores cambia el significado
- Leer la salida real de serializeArgs
- Una regresión aislada delimita la prueba
Antes de empezar
- Consola y red del navegador básicas
- Argumentos CLI y configuración de clientes locales
Planificar una investigación acotada y separar valores de interfaz, éxito operativo y aceptación integral.
Conclusiones clave
- Serializa con valores del modo que recibirá los argumentos.
- False explícito puede necesitar reenvío aunque otro modo use false.
- Un array argv no es una cadena shell escapada.
Comparar con otros valores cambia el significado
En esta revisión, start serializa con getCliOptions en vez de las definiciones MCP. El CLI establece headless true; la configuración del servidor usa false. Por tanto, una elección false debe reenviarse respecto al true del modo CLI.
Si se compara con el false del servidor, se omite. El daemon vuelve a interpretar en modo CLI y recupera true. El valor se había analizado correctamente y se perdió entre procesos: es un desacuerdo de valores predeterminados, no prueba de que Chrome ignore la opción.
Leer la salida real de serializeArgs
La función recorre claves conocidas, omite undefined, null y valores idénticos al predeterminado, y convierte camelCase a guiones. True se emite como flag; false con prefijo no; arrays como asignaciones repetidas; escalares como una asignación.
La comparación de arrays usa identidad: omite el objeto predeterminado reutilizado, pero reenvía otro array con igual contenido. Devuelve elementos argv, no una cadena escapada para shell. Unirlos y ejecutarlos como comando sería otra operación que requiere revisión.
Una regresión aislada delimita la prueba
Catorce casos ejecutan la función upstream seleccionada por AST y transpilada, con definiciones sintéticas. Cubren ausencias, false explícito, reproducción con valor equivocado, nombres, arrays, cero, claves desconocidas, espacios y preservación. No ejecutan funciones importadas de procesos o sockets.
Esto verifica serialización pura, no el parser completo, reinicio del daemon ni ventana Chrome real. El uso de opciones CLI en start se inspeccionó en fuente. No repetimos la prueba end-to-end upstream ni atribuimos su resultado a nuestra ejecución.
Cómo elegir
| Criterio | Opción A | Opción B |
|---|---|---|
| Best when | You need predictable behavior and easy auditing | You need adaptive optimization and have reliable telemetry |
| Main risk | May leave performance on the table | Can become difficult to explain or debug |
Pasos de implementación
- 1
Traza valor y ambos conjuntos predeterminados.
- 2
Inspecciona condiciones de omisión.
- 3
Prueba la regresión false aislada.
- 4
Verifica procesos completos por separado y con autoridad.
Ejemplo para copiar
{
"regresion": true,
"valorUsuario": false,
"predeterminadoCli": true,
"predeterminadoMcp": false,
"argumentosCorrectos": [
"--no-headless"
],
"argumentosIncorrectos": [],
"navegadorIniciado": false
}Preguntas frecuentes
¿Cómo puede false convertirse después en true?
Puede omitirse contra el predeterminado incorrecto y reinterpretarse con valores CLI.
¿Se probaron lanzamientos reales?
No. Se ejecutaron catorce casos del serializador sin daemon ni navegador.
Fuentes
- Chrome DevTools MCP / src/bin/chrome-devtools.tsFuente verificada 2026-09-14
- Chrome DevTools MCP / src/config/mcp-options.tsFuente verificada 2026-09-14
- Chrome DevTools MCP / src/daemon/utils.tsFuente verificada 2026-09-14
- Chrome DevTools MCP / docs/configuration.mdFuente verificada 2026-09-14