AgentGrade
EnglishEspañol日本語中文
← Base de Conocimientos

WebMCP — Interacción de Agentes en el Navegador

¿Qué es WebMCP?

WebMCP es una propuesta borrador del Community Group de W3C que permite a los agentes de IA interactuar con sitios web a través del navegador del usuario en lugar de sobre una API separada. Los sitios anotan formularios HTML existentes con atributos que los declaran como herramientas invocables; el navegador expone esas herramientas a un agente vía una nueva API navigator.modelContext. La propuesta está respaldada por Google y Microsoft y está actualmente disponible detrás de una bandera experimental en Chrome Canary.

El nombre es un eco deliberado de MCP, el Model Context Protocol de Anthropic, pero los dos son especificaciones distintas que resuelven problemas distintos. MCP define un protocolo JSON-RPC para que un agente llame a herramientas en un servidor. WebMCP define una API del navegador para que un agente llame a herramientas que ya existen como formularios en una página.

Por qué importa WebMCP

La ruta tradicional para la integración agente-sitio web es: el sitio publica una API (OpenAPI) o un servidor MCP, el agente se autentica por separado y las llamadas corren sobre un canal trasero. Esto funciona para integraciones de agentes de primera parte pero se rompe para la larga cola de sitios web que tienen funcionalidad valiosa pero no tienen un equipo API para construir una superficie paralela.

WebMCP toma el enfoque inverso: el sitio ya tiene un formulario para hacer la cosa, el usuario ya está logueado, el navegador ya tiene la sesión. ¿Por qué construir una API paralela? Anota el formulario existente con unos pocos atributos, y un agente en el navegador puede llamarlo directamente — heredando la auth del usuario, las protecciones CSRF del sitio y el modelo de permisos del navegador gratis.

Cómo WebMCP difiere de MCP

MCPWebMCP
Quién llama a quiénAgente → servidorAgente → navegador → servidor
Dónde corre el agenteFuera del navegadorDentro o junto al navegador
AutenticaciónOAuth 2.1 / API keysLa sesión existente del navegador del usuario
TransporteJSON-RPC sobre HTTP/SSEAPI interna del navegador (navigator.modelContext)
Qué construyes en el sitioUn endpoint MCP dedicadoAnotaciones de atributo en formularios HTML existentes
Tiempo de vida de la conexiónPersistente entre sesionesTermina cuando la pestaña cierra
DescubrimientoRegistro MCP / well-knownEscaneo DOM + manifiesto /.well-known/webmcp.json

Las arquitecturas son casi opuestas. MCP da a agentes externos una interfaz backend estable; WebMCP da a agentes en navegador acceso al frontend existente.

Cómo funciona WebMCP

Hay dos piezas cooperando: anotaciones DOM (por página) y un manifiesto opcional (por sitio).

1. Formularios anotados. Un sitio marca cualquier formulario HTML como invocable por agente con tres atributos personalizados:

<form tool-name="search-products" tool-description="Search the catalog by keyword">
  <input type="text" name="q" tool-param-description="Search query, e.g. 'red shoes'">
  <button type="submit">Search</button>
</form>

El runtime WebMCP del lado del navegador escanea el DOM para elementos tool-name, construye una lista de herramientas y la expone al agente. Cuando el agente invoca search-products con q: "running shoes", el navegador rellena el formulario y lo envía a nombre del agente — a través de la sesión del usuario.

2. El manifiesto. Un sitio puede publicar /.well-known/webmcp.json declarando herramientas que pueden no ser visibles en cada página:

{
  "spec": "webmcp/0.1",
  "tools": [
    {
      "name": "search-products",
      "description": "Search the product catalog",
      "url": "/search",
      "method": "GET",
      "parameters": [
        {
          "name": "q",
          "type": "string",
          "description": "Search query"
        }
      ]
    }
  ]
}

El manifiesto da a los agentes una ruta de descubrimiento que no depende de scraping DOM.

WebMCP vs otras capas de interop de agentes

SpecDónde vive el agenteQué se exponeAuth
WebMCPEn el navegadorFormularios HTML anotadosSesión del usuario
MCPFuera del navegadorHerramientas JSON-RPC en un servidorOAuth / API keys
A2AEn cualquier lugarUn agente completo con skills nombradosAuth a nivel de agente
OpenAPIEn cualquier lugarEndpoints REST con schemasEsquema por endpoint
SKILL.mdEn cualquier lugarManual de juego prosaN/A

WebMCP es el único que corre dentro del navegador del usuario.

Estado actual

WebMCP es un Reporte Borrador del Community Group bajo el W3C Web Machine Learning Community Group. A mediados de 2026:

Los sitios que envían WebMCP hoy son tempranos — apuestan a que la spec se estabilice y los navegadores la envíen.

Quién respalda WebMCP

Cómo añadir WebMCP a tu sitio

  1. Elige los formularios que importan. No anotes cada formulario.
  2. Añade los atributos. tool-name, tool-description, tool-param-description.
  3. Usa nombres minúscula-guion. search-products, no searchProducts.
  4. Escribe descripciones para un agente, no un humano.
  5. Publica el manifiesto. /.well-known/webmcp.json.
  6. Prueba en Chrome Canary con la bandera experimental activada.

Errores comunes que detectan los escáneres

FAQ

¿WebMCP es un fork de MCP?

No. Son specs separadas de grupos de trabajo separados con arquitecturas separadas.

¿WebMCP de Chrome funcionará en Firefox o Safari?

No actualmente.

¿Debo añadir WebMCP si ya tengo MCP?

Sí si tu servicio tiene un sitio web con formularios que los usuarios rellenan hoy.

¿AgentGrade penaliza sitios sin WebMCP?

No.

¿WebMCP es seguro?

El modelo de seguridad hereda del navegador: enforcement de same-origin, la sesión existente del usuario, protección CSRF.

¿Qué reemplaza a /.well-known/webmcp.json si alojo mis formularios en un iframe?

Aplican reglas same-origin.

¿WebMCP funciona con SPAs?

Sí, pero los formularios deben estar presentes en el DOM cuando el agente escanea.

¿Cuándo enviará WebMCP a Chrome estable?

No hay calendario público.

Madurez de la especificación

Borrador, no enviado. WebMCP es un borrador del Community Group de W3C, disponible detrás de una bandera experimental solo en Chrome Canary.

Saber más