AI Agent 正在悄然改变人们使用互联网的方式。过去,想在网页上完成某项操作,用户往往要自己打开网站、点击按钮、填写表单,按步骤一步步走完。现在,越来越多的 AI Agent 开始尝试替用户操作浏览器。
但 AI Agent 往往需要通过模拟鼠标点击、解析网页 DOM、识别按钮和输入框等方式才能完成操作。这种交互方式不仅效率有限,还容易受网页结构变化、动态加载和反爬虫机制影响。
那有没有一种更直接的方式,让 AI Agent 不必像人类一样操作网页,而是直接调用网站提供的功能?W3C 正在推进的 WebMCP[1],正是为了解决这类问题。
根据官方介绍,WebMCP 是一个仍处于孵化阶段的 JavaScript API,允许 Web 开发者将 Web 应用的功能暴露为工具(Tools)。这些工具本质上是带有自然语言描述和结构化参数定义的 JavaScript 函数,可以被 AI Agent、浏览器内置 Agent 以及辅助技术直接调用。

传统网站主要通过页面界面与用户交互,而 WebMCP 希望让网站能够以标准化的方式向 AI Agent 暴露自身功能。例如,一个电商网站可以提供商品搜索、库存查询、订单查询等工具。当用户要求 AI Agent 查询某件商品是否有库存时,Agent 不必再打开网页、寻找商品详情、识别库存信息,而是可以直接调用网站提供的库存查询工具。整个过程从模拟用户操作,转变为直接调用网站能力。
目前,AI Agent 操作网页比较常见的方式是浏览器自动化。例如,通过 Playwright、Puppeteer、Selenium 等工具,控制浏览器打开页面、点击按钮、填写表单和读取网页内容。这种方式能够覆盖大多数网站,但也存在一些局限:
- 依赖页面结构:网页 DOM、CSS 选择器一旦发生变化,自动化脚本就可能失效。
- 操作链路较长:需要先识别页面元素,再执行点击、输入等操作。
- 缺少业务语义:AI 看到的可能只是按钮和输入框,不一定清楚它们背后的业务含义。
WebMCP 则不同,它允许网站开发者主动定义可供 Agent 调用的工具,并提供自然语言描述和结构化参数。例如,网站可以暴露一个 searchProducts 工具:
{
name: "searchProducts",
description: "Search products by keyword",
inputSchema: {
type: "object",
properties: {
keyword: {
type: "string",
description: "Product search keyword"
}
},
required: ["keyword"]
}
}
以上只是概念示例,并非 WebMCP 规范中的完整 API 用法。
通过这种方式,Agent 可以理解工具的用途以及需要提供哪些参数,再根据用户需求选择合适的工具。
当然,对于没有提供 WebMCP 接口的网站,浏览器自动化仍然有用。对于需要观察页面、处理复杂视觉交互的场景,传统方式也有自己的价值。两者更可能是互补关系:浏览器自动化负责通用的页面操作,WebMCP 则让网站能够主动向 Agent 提供更明确的业务能力。
WebMCP 目前仍处于早期阶段,浏览器原生支持和相关规范都还在发展中。为了让开发者能够提前尝试,W3C 将 WebMCP Polyfill[2] 选为开源项目支持计划的第二个试点项目。
Polyfill 可以理解成一种 API 兼容性补充实现。当浏览器尚未原生支持某项 Web API 时,开发者可以通过 JavaScript 实现部分或全部相关能力。
该项目目前制定了四个初期目标:
- 发布 npm 软件包:将 WebMCP Polyfill 发布到 npm,方便开发者在 JavaScript 项目中安装和使用。
- 完善生命周期事件:推进 Lifecycle Events 功能,让开发者能够更好地处理相关工具的生命周期。
- 增加声明式支持:推进 Declarative Support,让开发者能够通过声明式方式定义相关能力,降低集成成本。
- 跟进规范和测试:持续关注 WebMCP 规范的变化,及时调整代码,同时跟进 Web Platform Tests(WPT)测试覆盖情况。
注意:W3C 并不打算让这个 Polyfill 永久存在。如果 WebMCP 后续成功进入标准化流程,并且浏览器提供了直接、互操作性良好的原生实现,那么这个 Polyfill 将逐步退出。
换句话说,它更像是 WebMCP 从规范走向实际应用过程中的过渡性基础设施。
除此之外,W3C 还宣布成立开源项目社区组(W3C Open Source Program Community Group)[3],该社区组主要负责推动 W3C 开源项目支持计划下一阶段的发展,尤其是完善整个计划的治理机制。加入该社区组不需要支付费用,也不要求参与者拥有 W3C 会员资格,任何人都可以参与。
W3C 已经在 2026 年 9 月公布了第一个开源项目试点,这次的 WebMCP Polyfill 就是第二个入选项目。W3C 还计划在 2026 年年度 TPAC 会议期间,讨论两个试点项目的进展和开源计划的后续发展。如果开发者希望自己的开源项目也能获得试点支持,可以通过官方反馈渠道提交建议。
References
- WebMCP: https://webmachinelearning.github.io/webmcp
- WebMCP Polyfill: https://github.com/w3c-oss/open-source-program/tree/main/projects/webmcp-polyfill
- 开源项目社区组(W3C Open Source Program Community Group): https://www.w3.org/groups/cg/w3c-open-source-program