Lançamento do WebMCP (Web Model Context Protocol)
(developer.chrome.com)- O WebMCP é um padrão proposto projetado para que sites exponham diretamente ferramentas estruturadas a agentes de IA dentro do navegador
- Em vez de scraping de tela ou inferência do DOM, a web passa a fornecer por conta própria, na forma de um contrato explícito, quais "ações podem ser realizadas nesta página" e quais são suas entradas e saídas
- Suporta desde tarefas baseadas em formulários HTML até interações complexas em JavaScript por meio de APIs declarativas e imperativas
- Estrutura de contrato em que o agente pode descobrir (Discovery) as ferramentas da página, definir entradas e saídas com JSON Schema e compartilhar o estado (State) atual da página
- Incluído como versão em preview antecipado no Chrome 146. Para testar antecipadamente, é necessário entrar no Chrome built-in AI Early Preview Program
- Enquanto o MCP existente é um protocolo do lado do servidor, o WebMCP se diferencia por ser um protocolo para agentes de IA no navegador, do lado do cliente
Rascunho da especificação: WebMCP Early Preview
Contexto do surgimento do WebMCP
- Em ambientes web com agentes, a IA vem assumindo cada vez mais tarefas reais em nome do usuário, como reservas, envios, alterações de configuração e navegação
- A web tradicional foi desenhada tendo usuários humanos como premissa, então os agentes precisavam inferir o significado de botões e a estrutura dos formulários
- Isso causava repetidamente erros de entrada, mapeamento incorreto de campos e fragilidade diante de mudanças na UI
- Para resolver esse problema, o WebMCP introduz um contrato explícito de interação entre a web e o agente
- Em vez de o agente adivinhar o propósito de um botão ou a estrutura de um formulário, o site expõe explicitamente sua própria interface
- Esse contrato é composto por três elementos centrais:
- Discovery: o agente consulta, de forma padronizada, as ferramentas suportadas pela página (ex.:
checkout,filter_results) - JSON Schema: definição explícita das entradas e saídas esperadas, reduzindo alucinações e mal-entendidos
- State: entendimento compartilhado do contexto atual da página, permitindo ao agente identificar recursos disponíveis em tempo real
- Discovery: o agente consulta, de forma padronizada, as ferramentas suportadas pela página (ex.:
Conceitos centrais do WebMCP
-
Exposição de ferramentas estruturadas
- O site declara as funcionalidades que oferece na forma de ferramentas (tools)
- Cada ferramenta define claramente nome, descrição, esquema de entrada (JSON Schema) e resultado da execução
- O agente consegue saber com precisão “o que deve ser chamado” sem precisar interpretar o DOM
-
Contrato em vez de inferência
- Em vez de adivinhar o significado de botões ou analisar interfaces de calendário, a web expõe diretamente intenções e regras
- Como o formato de entrada e saída é fixo, há redução de alucinações e falhas de operação
- Mesmo com mudanças na UI, se o contrato da ferramenta for mantido, o comportamento do agente continua estável
Dois modelos de API
-
API declarativa (Declarative API)
- Elementos HTML
<form>podem ser transformados em ferramentas apenas com a adição de atributos - Os atributos
toolnameetooldescriptiondeclaram o significado da ferramenta - Os campos do formulário tornam-se os parâmetros de entrada da ferramenta
- O navegador converte isso automaticamente em JSON Schema
- Adequado para tarefas simples e repetitivas e para UIs existentes baseadas em formulários
- Elementos HTML
-
API imperativa (Imperative API)
- As ferramentas são registradas diretamente em JavaScript
- São fornecidas APIs como
registerTool,provideContexteunregisterTool - Adequado para lógica complexa, ramificações condicionais, processamento assíncrono e comportamentos baseados em estado
- Tem alta utilidade em SPAs e aplicações web avançadas
Como funciona a interação entre navegador e agente
- Quando o agente chama uma ferramenta, o navegador automaticamente dá foco e preenche a UI correspondente
- É possível distinguir se um formulário foi chamado pelo agente por meio da flag
agentInvoked - Em caso de sucesso ou cancelamento, são disparados os eventos
toolactivatedetoolcancel - Feedback visual é fornecido por meio das pseudo-classes CSS (
:tool-form-active,:tool-submit-active) - É possível integrar o fluxo de uso humano e o fluxo do agente em um mesmo modelo de estado de UI
Cenários de uso representativos
- Em um site de companhia aérea com a ferramenta
book_flight, o agente pode enviar diretamente informações estruturadas de passageiros sem interpretar a UI do calendário - Em portais médicos ou jurídicos, a ferramenta
submit_applicationtransmite com clareza o significado dos campos - Em páginas de configuração para desenvolvedores, é possível expor ferramentas como
run_diagnosticspara executar automaticamente menus ocultos - É especialmente eficaz em áreas que exigem entradas de alta confiabilidade, como suporte ao cliente, e-commerce e serviços de viagem
Diferenças entre WebMCP e MCP
- O MCP (Model Context Protocol) é um protocolo do lado do servidor, exigindo implantação de um servidor separado
- O WebMCP funciona dentro do navegador e pode ser integrado diretamente a aplicações web existentes
- Mesmo sem servidor, é possível oferecer funcionalidades client-side aos agentes
- A diferença central é ser uma abordagem centrada no frontend, assumindo um navegador com agente
Estado atual e limitações
- Pode ser usado no Chrome 146 ou superior com a flag ativada
- Não funciona em ambientes headless e requer um contexto de navegação visível
- Ainda não há mecanismo para descoberta automática de sites que oferecem ferramentas
- A sincronização do estado da UI é responsabilidade do desenvolvedor
- Por estar em estágio inicial de preview, há possibilidade de mudanças na API e atritos de implementação
3 comentários
Depois que @firt falou sobre isso no X, o assunto virou um tema bem comentado. Coloquei o link do Google.
Dizem que, para automatizar sites, isso passa a ser possível usando apenas 10% dos tokens em comparação com análise de screenshots/DOM. Também combina com a previsão de que softwares que economizam custo de tokens sobreviverão por pressão evolutiva.
Se o Chrome liderar isso, logo deve chegar aos outros navegadores também.
Parece algo como um Swagger para agentes.