WebMCP

WebMCP permite que una página web exponga herramientas estructuradas a un agente de IA en el navegador. Descubra en qué se diferencia de MCP, qué admite Chrome, los riesgos de seguridad y cuándo conviene esperar.

Publicado por primera vez: 17 jul 2026 · Última actualización: 30 jul 2026 · Avanzado
Idiomas
1 señal de evidencia en esta página

WebMCP es una API de navegador experimental que permite a una página web abierta ofrecer herramientas estructuradas a un agente de IA. Es útil para acciones acotadas dentro de la página, no para el descubrimiento web ni el posicionamiento. Al 17 de julio de 2026 es un borrador de Community Group y un origin trial de Chrome 149; los ejemplos actuales de Chrome usan document.modelContext, mientras que navigator.modelContext queda obsoleto en Chrome 150.

TL;DR — WebMCP expone herramientas propiedad de la página desde document.modelContext a un agente del contexto de navegación activo. La API imperativa registra un nombre, una descripción, una entrada con JSON Schema, anotaciones y una función de retorno asíncrona; las herramientas pueden depender del estado y darse de baja con un AbortSignal. Chrome documenta además una capa declarativa basada en formularios, pero el borrador de Community Group del 10 de julio de 2026 sigue marcando su sección declarativa como TODO. La función está en un origin trial de Chrome 149, no en una base estable multinavegador. Trátela como mejora progresiva, no como infraestructura de SEO, y protéjala como una superficie de aplicación autenticada.

Evidence for this claim Chrome documents declarative form annotations such as toolname and tooldescription, but the declarative section of the July 10, 2026 Community Group draft is still marked TODO. Scope: secure browser context Confidence: high · Verified: WebMCP Draft Community Group Report

Cómo funciona WebMCP en el navegador

Un ciclo de vida útil de WebMCP empieza y termina en la página. La página registra únicamente las acciones válidas en su estado actual; un agente que ya opera en ese contexto de navegación descubre una e invoca; la página ejecuta su lógica de aplicación normal, actualiza la interfaz visible para las personas y devuelve un resultado acotado. Cuando cambia el estado, la página elimina las herramientas que ya no aplican. Evidence for this claim The imperative API registers named, described, schema-constrained callbacks and supports state-aware cleanup with AbortSignal plus tool-set change notifications. Scope: Current draft and Chrome experiment; API details may change before stable release. Confidence: high · Verified: WebMCP ModelContext API Chrome: WebMCP Imperative API

Las herramientas WebMCP deben seguir el estado real de la página: registrar una acción válida, ejecutar la misma lógica que la interfaz y eliminarla cuando la acción deja de estar disponible. Fuente: Patrick Stox — WebMCP

Cinco pasos numerados avanzan de izquierda a derecha. Primero, la página registra un nombre, una descripción, un esquema de entrada y una función de retorno (callback). Segundo, un agente que ya está en el contexto de la página la descubre. Tercero, el agente la invoca con argumentos estructurados y validados. Cuarto, la página reutiliza su lógica de aplicación normal y actualiza la interfaz visible. Quinto, devuelve un resultado acotado o un error seguro. Una rama que sale de la ejecución muestra que los cambios de estado o la navegación deben anular el registro de la herramienta con AbortSignal y notificar a los observadores mediante toolchange.

© Patrick Stox LLC · CC BY 4.0 ·

Este ciclo de vida con estado es una de las razones por las que WebMCP no debería convertirse en un volcado estático de todas las funciones de un bundle de JavaScript. Una herramienta que resulta imposible en la interfaz visible normalmente tampoco debería estar disponible para el agente.

WebMCP frente a MCP: dos fronteras de ejecución distintas

Los nombres invitan a la confusión, pero la frontera operativa es distinta. WebMCP vive en el bucle de eventos de un documento y en la sesión de navegador actual. MCP remoto vive en la frontera de integración de la aplicación de IA y suele llegar a un servidor backend persistente. Evidence for this claim WebMCP is designed for tools owned by an active page and its browser context, while remote MCP commonly connects an AI application to a persistent backend server. Scope: Architecture-selection guidance, not a rule that prevents an application from using both technologies. Confidence: high · Verified: Chrome: When to use WebMCP and MCP

WebMCP se encarga de las acciones en el contexto de la página; el MCP remoto se encarga de las integraciones duraderas entre aplicación y servidor. Muchos productos usarán ambos. Fuente: WebMCP

El carril izquierdo muestra WebMCP: un agente de navegador interactúa con una página web abierta, que es la propietaria de una herramienta de JavaScript y del estado de sesión visible en ese momento. La página debe estar abierta para que esas herramientas existan. El carril derecho muestra el MCP remoto: una aplicación de IA se conecta, a través de un cliente MCP, a un servidor MCP persistente que puede seguir disponible fuera de una pestaña del navegador. Los dos carriles son complementarios y no sustitutos el uno del otro.

© Patrick Stox LLC · CC BY 4.0 ·

InterfazDónde viveCuándo se descubre¿La página debe estar abierta?Mejor encaje
WebMCPDocumento activo del navegadorDespués de que el cliente visite la páginaEstado actual de la interfaz y acciones de la página
MCP remotoCliente de IA y un servidor MCPMediante configuración o descubrimiento cliente/servidorNoHerramientas, datos y flujos de backend persistentes
Endpoint web/APIBackend de la aplicaciónMediante una integración específica de la aplicaciónNoAcceso programático estable para consumidores conocidos
Datos estructuradosMarcado de la páginaDurante el procesamiento de la páginaNormalmente se obtiene como contenidoDescribir entidades y el significado de la página, no ejecutar acciones
llms.txtArchivo de texto estáticoCuando un cliente decide solicitarloNo requiere una pestaña activaGuía de contenido propuesta; no es una superficie de herramientas invocables
Automatización de navegadorAgente o controlador que interpreta la interfazDespués de cargar e inspeccionar la páginaAlternativa cuando no existe una herramienta de página explícita

No elija por las siglas. Elija por quién es el dueño de la acción. Si la acción necesita el DOM, la selección, el carrito o el estado de interfaz actuales, WebMCP puede encajar. Si debe ejecutarse en segundo plano, en muchos sitios o sin una pestaña abierta, use una API o MCP remoto.

La API imperativa

La API imperativa registra una herramienta mediante document.modelContext.registerTool(). La herramienta incluye un nombre único, una descripción, una entrada con JSON Schema, una función de retorno execute y anotaciones opcionales. Chrome documenta también getTools(), executeTool() para pruebas y un evento toolchange. Evidence for this claim Current Chrome documentation uses document.modelContext and says navigator.modelContext is deprecated beginning in Chrome 150. Scope: Chrome implementation guidance checked July 17, 2026; version and API-name claims expire quickly. Confidence: high · Verified: Chrome: WebMCP Imperative API

Este candidato ilustrativo muestra la forma prevista para un futuro piloto del Schema Validator. No está funcionando en este sitio y la API puede cambiar antes de una versión estable:

if (document.modelContext) {
  const registration = new AbortController();

  await document.modelContext.registerTool({
    name: 'validate_schema',
    description: 'Validate pasted JSON-LD and return bounded issues.',
    inputSchema: {
      type: 'object',
      properties: {
        markup: {
          type: 'string',
          description: 'JSON-LD markup to validate.',
          maxLength: 50000
        }
      },
      required: ['markup'],
      additionalProperties: false
    },
    annotations: {
      readOnlyHint: true,
      untrustedContentHint: true
    },
    execute: async ({ markup }) => {
      const result = await validateWithTheSameEngineAsTheUI(markup);
      renderResultInTheVisibleUI(result);
      return minimizeValidationResult(result);
    }
  }, { signal: registration.signal });

  // When this page state no longer supports validation:
  // registration.abort();
}

La arquitectura importante no es el envoltorio. Lo importante es que la función de retorno llama al mismo validador que la interfaz visible, que siguen aplicándose los límites y la autorización del servidor, y que la respuesta se minimiza deliberadamente. La detección de características preserva el flujo humano completo en los navegadores no compatibles.

Use document.modelContext, no ejemplos obsoletos construidos en torno a navigator.modelContext; Chrome marca este último como obsoleto a partir de Chrome 150. Feche ese consejo, porque la función sigue siendo experimental.

Evidence for this claim Current Chrome documentation uses document.modelContext; navigator.modelContext is deprecated in Chrome 150. Scope: browser document Confidence: high · Verified: WebMCP Imperative API

La API declarativa presenta un desajuste con el estándar

Chrome documenta un enfoque declarativo que anota formularios normales con atributos como toolname, tooldescription y toolparamdescription. También documenta el atributo opcional toolautosubmit; de lo contrario, es el usuario quien pulsa Submit. SubmitEvent.agentInvoked identifica un envío activado por un agente. Evidence for this claim Chrome documents declarative WebMCP form annotations, but the July 10, 2026 Community Group draft says its Declarative WebMCP section is entirely TODO. Scope: A direct comparison between Chrome implementation documentation and the current draft; it does not imply Chrome's experimental implementation is unavailable. Confidence: high · Verified: Chrome: WebMCP Declarative API WebMCP: Declarative WebMCP

Sin embargo, el Community Group Report del 10 de julio dice que su sección Declarative WebMCP es «entirely a TODO» (traducción) «enteramente un TODO», y deja sin definir el algoritmo que convierte un formulario en JSON Schema. Eso no significa que el experimento de Chrome sea imaginario. Significa que la documentación de implementación va por delante del borrador normativo. Trate el marcado declarativo como una superficie experimental de Chrome, no como HTML consolidado y multinavegador.

Evidence for this claim Chrome documents declarative WebMCP form annotations, but the July 10, 2026 Community Group draft says its Declarative WebMCP section is entirely TODO. Scope: A direct comparison between Chrome implementation documentation and the current draft; it does not imply Chrome's experimental implementation is unavailable. Confidence: high · Verified: Chrome: WebMCP Declarative API WebMCP: Declarative WebMCP

Por ahora, los formularios semánticos ordinarios siguen siendo la base duradera. Una capa de anotación experimental debe mejorarlos, nunca sustituir las etiquetas, la validación, la accesibilidad, la confirmación ni la autorización del lado del servidor.

Descubrimiento de herramientas, ciclo de vida y fronteras entre orígenes

La API actual tiene varias fronteras que conviene diseñar de forma explícita:

  • Contexto de navegación: el experimento de Chrome requiere un contexto de navegador. El cliente visita el sitio antes de descubrir las herramientas del sitio.
  • Disponibilidad dinámica: registre las herramientas cuando sean válidas y cancele su registro cuando el estado o la navegación las invaliden. Los observadores pueden escuchar el evento toolchange.
  • Mismo origen de forma predeterminada: la Permissions Policy tools tiene el valor predeterminado 'self'. Los iframes de otro origen necesitan una delegación explícita como allow="tools".
  • Consentimiento bilateral entre orígenes: una herramienta puede usar exposedTo para enumerar los orígenes seguros permitidos, mientras que quien la invoca solicita herramientas de orígenes concretos con fromOrigins. Que solo una de las partes lo acepte no basta.
  • Mejora progresiva: si WebMCP no está disponible o está desactivado, la página normal debe seguir siendo plenamente utilizable.
Evidence for this claim WebMCP tool exposure is origin-isolated and controlled by the tools Permissions Policy; cross-origin iframes require explicit delegation. Scope: browser document Confidence: high · Verified: WebMCP Imperative API

Son controles de plataforma útiles, pero no convierten una acción de aplicación arriesgada en una segura.

Seguridad: la sesión del navegador eleva lo que está en juego

Un agente de navegador puede operar dentro de la sesión autenticada del usuario. Eso puede ser la ventaja—acceso al carrito, la cuenta o el espacio de trabajo actuales—y también el peligro. Chrome y el borrador tratan la inyección de prompts, los metadatos engañosos de herramientas, la salida contaminada de herramientas, los parámetros demasiado amplios, la fuga de privacidad, la exposición entre orígenes y el uso indebido de la autoridad de la sesión iniciada. Evidence for this claim WebMCP tool hints can communicate read-only and untrusted-output intent, but they do not eliminate prompt injection, misleading metadata, privacy leakage, cross-origin risk, or misuse of authenticated browser authority. Scope: Threat-model and defensive guidance; application authorization and confirmation remain implementation responsibilities. Confidence: high · Verified: WebMCP security and privacy considerations Chrome: WebMCP tool security Chrome: Agent security considerations

Trate cada herramienta como un endpoint de aplicación público con un invocador poco habitual:

  1. Mantenga la herramienta acotada. Un solo cometido, entradas explícitas, enumeraciones y longitudes ajustadas, sin ningún parámetro oculto de «hacer cualquier cosa».
  2. Aplique la autorización en la lógica de aplicación. El agente no obtiene más autoridad que la del usuario con sesión iniciada, y una pista no es un permiso.
  3. Separe las lecturas de las escrituras. readOnlyHint y untrustedContentHint comunican riesgo; no lo imponen.
  4. Exija confirmación visible cuando haya consecuencias. Las compras, los envíos, las eliminaciones, los mensajes y los cambios de cuenta necesitan un punto de control comprensible para una persona.
  5. Minimice la salida. Devuelva solo lo que la tarea necesita; nunca filtre datos de sesión, cabeceras en bruto, secretos ni registros no relacionados.
  6. Trate la salida como no confiable. Una cadena devuelta por una herramienta puede convertirse en entrada del razonamiento posterior del modelo. No permita que cuele instrucciones ni autoridad.
  7. Registre la frontera. Anote la herramienta, la clase de entrada, la decisión de autorización, la confirmación, la clase de resultado, el error, el origen y el ciclo de vida, sin registrar secretos.

La pregunta segura no es «¿Puede un agente invocar esto?». Es «¿Expondría esto como un endpoint revisado ante un invocador capaz de malinterpretar instrucciones y de retransmitir texto no confiable?».

Pruebe por separado los contratos y el comportamiento del agente

Las recomendaciones de evaluación de Chrome separan las pruebas deterministas de producto de las pruebas probabilísticas de agentes. Evidence for this claim WebMCP testing should combine deterministic contract and UI-state tests with probabilistic evaluation of agent tool selection and use. Scope: Chrome's evaluation guidance; teams must define product-specific tasks, models, risks, and thresholds. Confidence: high · Verified: Chrome: Evals for WebMCP Ambas importan:

Las pruebas deterministas deben verificar el registro, el rechazo por esquema, las entradas válidas e inválidas, la autorización, los límites de frecuencia, los efectos secundarios, la forma de los errores, la minimización de la salida, la paridad con la interfaz, el comportamiento al dar de baja la herramienta y el respaldo en navegadores no compatibles.

Las evaluaciones probabilísticas deben medir si los agentes representativos descubren la herramienta correcta, evitan las herramientas irrelevantes, eligen los parámetros correctos, piden aclaraciones cuando es necesario, respetan las confirmaciones, se detienen tras el éxito y resisten descripciones o salidas adversarias.

No use un único prompt de demostración como criterio de publicación. Una función de retorno que se ejecuta correctamente demuestra que el código funcionó; no demuestra que los modelos la seleccionen de forma fiable ni que la acción sea segura.

Cloudflare Browser Run: un laboratorio útil, no una activación

Cloudflare documenta compatibilidad con WebMCP en el pool de laboratorio experimental de Browser Run y afirma que las sesiones de laboratorio no deben usarse para cargas de trabajo de producción. Su página del 23 de abril también contiene nombres de pruebas de una etapa anterior de Chrome, así que use esa página como evidencia de la oferta de producto actual de Cloudflare, no como autoridad sobre la forma más reciente de la API de WebMCP. Evidence for this claim Cloudflare Browser Run offers experimental lab sessions that can consume and test page-provided WebMCP tools, but the page still owns tool registration and Cloudflare says lab sessions are not for production workloads. Scope: Cloudflare product documentation last updated April 23, 2026; its example API names lag current Chrome documentation and should not be used as the API authority. Confidence: high · Verified: Cloudflare Browser Run: WebMCP

Cloudflare puede aportar una sesión de navegador y una vía de agente que consume herramientas. No puede deducir el contrato seguro de su aplicación ni registrar herramientas propias de la página que usted no haya creado.

Piloto propuesto en patrickstox.com: Schema Validator

El Schema Markup Validator es un buen candidato para un futuro piloto, no una implementación de WebMCP en funcionamiento. Ya cuenta con una entrada pegada y acotada, lógica determinista, incidencias estructuradas y un resultado visible. Una futura herramienta validate_schema podría reutilizar el mismo motor de validación que la interfaz y que la suite de herramientas MCP remotas existente.

El piloto debería esperar a que la API del navegador llegue a una versión estable y no experimental y a que supere una nueva revisión de seguridad. La primera versión debería ser de solo lectura, con detección de características, con límites de entrada, con respuesta minimizada y no disponible en superficies de vista previa, de administración o exclusivas del propietario. Este sitio no afirma actualmente ser compatible con WebMCP.

Decisión: construir, experimentar, esperar u omitir

SituaciónDecisión
Un flujo de trabajo de cliente exige compatibilidad estable en el navegadorEspere y mantenga completa la interfaz/API normal
Tiene una acción acotada de solo lectura y puede montar un laboratorio privadoExperimente, con detección de características y sin dependencia en producción
La tarea necesita ejecución en segundo plano o headlessUse una API o MCP remoto
La página solo publica contenidoOmita WebMCP; mejore el HTML semántico y accesible
La acción escribe, compra, envía, elimina o expone datos privadosNo haga un piloto a la ligera; exija un modelo de amenazas y un diseño de confirmación aparte
Se publica una implementación estable y se superan todas las pruebas de contrato, seguridad y paridadValore un piloto progresivo en producción

Add an expert note

Pin an expert quote

New person? Create their unclaimed profile at /admin/experts/ → Pin a quote first.