webmachinelearning/webmcp
网页不再让AI靠猜测点按钮,而是直接告诉AI自己有哪些功能可以调用
WebMCP是一项浏览器标准提案,让网页开发者把JavaScript函数或HTML表单注册成带有自然语言说明和结构化参数格式的AI可用工具。以往AI代理要靠截图和模拟鼠标点击来操作网站,而WebMCP让网页通过document.modelContext.registerTool()直接暴露自己的功能给AI。该提案由来自Microsoft和Google的作者于2025年8月13日首次发布,此后由Dominic Farolino主导持续完善。
它做什么
- 网页通过document.modelContext.registerTool()注册一个带名称、描述、输入格式(JSON Schema)和执行函数的'工具',浏览器内置AI、扩展程序或iframe中的AI可用getTools()发现工具,再用executeTool()调用
- 现有的Model Context Protocol(MCP)或OpenAPI属于'后端集成'方式,AI平台直接与服务器通信,导致开发者要在服务器端另外复制用户状态和登录凭证,还绕开了网页原本的界面;WebMCP则直接在浏览器客户端脚本里定义工具,避免了这个问题
- HTML的<form>表单元素可以不写额外代码就自动生成声明式工具,而JavaScript函数则通过命令式的registerTool接口注册
- 跨iframe或跨来源(origin)访问工具时,用Permissions Policy(allow="tools")和exposedTo选项来控制权限;可用AbortSignal中途取消工具执行,并通过toolchange事件监听工具的动态变化
- 文中举例:设计网站里筛选/编辑模板并下单印刷、购物网站按上传照片筛选连衣裙、在Gerrit代码评审中查询构建失败日志并提交修复补丁
为什么重要
随着AI代理越来越多地代替用户操作网站,现在靠截图模拟点击的方式既慢又容易出错。如果WebMCP成为标准,开发者可以复用现有客户端代码,让AI安全、准确地操作自己的网站。
本仓库术语
- MCP(Model Context Protocol) · Anthropic提出的协议,让AI模型连接并使用外部服务的功能
- registerTool · 网页用来向AI代理暴露功能的WebMCP核心函数
- inputSchema · 定义工具所需输入格式的JSON Schema
- Permissions Policy · 浏览器用来允许或禁止iframe等场景使用特定功能的机制
- AbortSignal · 用于中途取消正在进行的操作的网络标准信号
仓库简介(英文)
🤖 WebMCP
在 GitHub 打开项目主页相关报道
热门仓库
- tt-a1i/archify
- bookorbit/bookorbit一个自建服务器的读书平台,在网页、Kobo、KOReader之间无缝续读
- ConardLi/garden-skills
- browser-use/browser-use
- K-Dense-AI/scientific-agent-skills
- DietrichGebert/ponytail一套让AI编程助手先想清楚再动手写代码的规则
- liustack/modlens给DeepSeek这类只能读文字的AI装上一双眼睛:粘贴图片就能把内容变成结构化文字数据
- marin-community/marinMarin是一个把训练大语言模型全过程公开出来的开源研究平台