首页/新闻资讯/正文详情

WebMCP 核心概念完全图解:Tool、inputSchema 与 execute 回调如何打通 AI 和网页

发布时间:2026/9/25 3:23:57 来源:云帆数科 栏目:资讯中心
WebMCP 核心概念完全图解:Tool、inputSchema 与 execute 回调如何打通 AI 和网页
WebMCP 核心概念完全图解Tool、inputSchema 与 execute 回调如何打通 AI 和网页【免费下载链接】webmcp WebMCP项目地址: https://gitcode.com/gh_mirrors/webm/webmcpWebMCP 是一个让网页把自己变成AI 工具的新标准提案开发者把网页功能注册为带自然语言描述的 Tool用 inputSchema 声明参数结构再靠 execute 回调真正执行任务从而让浏览器内置 AI 或 ChatGPT 等智能体能可靠地替你筛选模板、下单购物、查询状态彻底告别脆弱的截图识别与模拟点击。 一句话理解WebMCP 把每个网页变成一台页面内的 MCP 服务器——AI 不再隔着屏幕猜按钮在哪而是直接调用网站自己提供的官方接口。为什么需要 WebMCP今天 AI 助手操作网页的主流方式是截图 → 识别界面 → 模拟人类点击。这套做法慢一个简单操作可能要跑很多轮脆按钮文案一改、页面一改版AI 就抓瞎丢上下文绕开页面 UI 直连后端时登录态、页面状态都得在服务端重新复制一遍WebMCP 的思路反过来既然网站最清楚自己能干什么那就让网站主动把能力注册给 AI。这样用户、网页、AI 三方共享同一个上下文人随时可以看到并接管 AI 的每一步操作。完整的背景与动机见官方说明文档README.md核心概念一Tool工具是什么一个 Tool 就是一段可被 AI 调用的网页功能。网页通过document.modelContext.registerTool()注册等于向 AI 递上一张说明书说清三件事name工具名比如add-todo、filter-templatesdescription自然语言描述AI 靠它判断什么时候该用我inputSchema / execute参数契约 执行逻辑一个最小示例源自 README.mdawait document.modelContext.registerTool({ name: add-todo, description: Add a new item to the users active todo list, inputSchema: { type: object, properties: { text: { type: string, description: 待办事项的文本内容 } }, required: [text] }, async execute({ text }) { await addTodoItemToCollection(text); // 复用页面现有 JS 逻辑 return { content: [{ type: text, text: 已添加${text} }] }; } });工具随时可以注销传入AbortController的 signal 即可移除。因此按页面状态动态增删工具是官方推荐模式——只把当前页面真正能用的能力暴露给 AI避免工具列表臃肿。核心概念二inputSchema参数契约inputSchema是一份 JSON SchemaAI 读它就知道要传什么参数、什么类型、是否必填用type约束类型string / number / object…用enum给出可选值比如纸张规格Letter | Legal | A4每个属性都建议带description帮 AI 填对值给 AI 写 schema 的 3 个小心机做法例子接受原始输入别逼 AI 心算传明天下午格式归一化留给你的 JS枚举用自然语言shippingMethod: express而不是shippingId: 1描述要正向按关键词搜索商品 优于 不要用于下单核心概念三execute 回调真正干活的代码execute(args, options)就是工具的函数体AI 按 schema 把参数传进来你的回调在页面里执行真实逻辑调接口、改状态、刷新 UI再把结构化结果返回给 AI。三个关键特性可异步async execute里随便await你的接口可取消options.signal携带AbortSignal用户点停止时能中断网络请求必须同步 UI工具执行后页面上的视觉状态要立刻更新——人和 AI 共享同一个浏览器会话这是协作的基础一次工具调用的完整流程图解从用户提问到拿到结果WebMCP 的生命周期共 5 步注册 → 发现 → 调用 → 执行 → 响应全程由浏览器居中调度。跨域 iframe 想参与协作需要显式授权allowtoolsexposedTo来源白名单保证工具只暴露给可信来源。规范中对每一步的精确算法定义见 index.bs。进阶不写 JS 也行——声明式表单工具如果某项功能本来就是一个 HTML 表单WebMCP 提供了零 JS的声明式写法给form加几个属性浏览器就自动把它编译成一个 Toolform toolnamesearch-cars tooldescriptionPerform a car make/model search toolautosubmit input typetext namemake toolparamdescriptionThe vehicles make (e.g., BMW, Ford) required input typetext namemodel toolparamdescriptionThe vehicles model (e.g., 330i, F-150) required button typesubmitSearch/button /formtoolname/tooldescription对应命令式 API 的 name / descriptiontoolautosubmit允许 AI 填完表单直接提交不加的话AI 填完会把提交按钮聚焦请你人工核对后再提交表单如何被确定性地编译成 inputSchema、结果如何回传给 AI详见declarative-api-explainer.md写出 AI 爱用的工具最佳实践清单官方在 README.md 中给出的建议浓缩成 6 条守住工具预算每个工具都会占用 AI 的上下文 token一两百个工具会让 AI 选择困难甚至直接失效单一职责一个工具只做一件事避免语义重叠动态注册按页面状态增删工具简单应用则在加载时静态注册即可动词要精确create-event立即执行≠start-event-creation跳到表单schema 宽松、代码严格校验失败时返回清晰的错误信息让 AI 能自我纠正并重试信任 AI描述写清能干什么、需要什么而不是用提示词硬控流程安全侧的考量权限策略、来源隔离、跨域暴露可参考security-privacy-questionnaire.md现在能用了吗浏览器支持一览平台状态Chrome 149Origin Trial 已上线本地开发可开about:flags测试开关Edge 150Origin Trial 已上线ChatGPT Desktop已支持BraveLeo AI 聊天中实验性支持完整的浏览器与智能体支持矩阵见implementation-status.md。TypeScript 类型定义已发布为webmcp-typesnpm 包拿来即用。再远一点docs/service-workers.md 还提出了把工具注册到 Service Worker 的扩展方案——即使网站没打开AI 也能在后台调用工具比如悄悄帮你把商品加进购物车需要人工确认的支付环节再弹回窗口交还用户。小结三个概念一张关系图Tool网页功能对 AI 的自我说明书name descriptioninputSchema参数契约AI 照着填就能调对execute真正干活的 JS 回调干完还要同步更新 UI三者合起来网页就从只能给人点的界面升级为人机共用的服务接口。如果你的站点有搜索、筛选、下单、导出这类动作不妨用 WebMCP 把它们注册出去——这是 AI 时代网页值得提前布局的一块拼图。【免费下载链接】webmcp WebMCP项目地址: https://gitcode.com/gh_mirrors/webm/webmcp创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

相关推荐

Bindu Gateway Planner 深度指南:多智能体协作的规划中枢与其底层实现
Bindu Gateway Planner 深度指南:多智能体协作的规划中枢与其底层实现

【免费下载链接】Bindu Bindu: The identity, communication, and payments layer for AI agents. 项目地址: https://gitcode.com/gh_mirrors/bin/Bindu 点击查看 免费下载 导读 gateway/agents/planner.md 是 Bindu Gateway 中 planner 智能体的完整定义——它既… · 2026/9/25 3:23:57

DRV8701E栅极驱动芯片:从原理图到智能车竞赛落地的完整指南
DRV8701E栅极驱动芯片:从原理图到智能车竞赛落地的完整指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/25 3:23:57

just-bash威胁模型深度拆解:AI Agent沙盒的3类攻击者与5道信任边界
just-bash威胁模型深度拆解:AI Agent沙盒的3类攻击者与5道信任边界

just-bash威胁模型深度拆解:AI Agent沙盒的3类攻击者与5道信任边界 【免费下载链接】just-bash Bash for Agents 项目地址: https://gitcode.com/gh_mirrors/ju/just-bash just-bash 是一个为 AI Agent 打造的沙盒 Bash 解释器——用 TypeScript 实现、内置内… · 2026/9/25 3:23:51

从 Codex CLI 到知识库:TaoToken 统一 Key 驱动的 AI 代理个人知识管理全流程
从 Codex CLI 到知识库:TaoToken 统一 Key 驱动的 AI 代理个人知识管理全流程

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/25 4:58:44

Python寒假作业实战指南:从环境搭建到代码调试全流程
Python寒假作业实战指南:从环境搭建到代码调试全流程

拿到“Python第一次作业(寒假)”这个标题,我第一反应是想起自己当年第一次提交Python作业的样子——表面上是写几段代码,实际上一大半时间都耗在装环境、调报错、纠结“为什么输出和我想要的不一样”上面。这篇文章就是给同样在寒… · 2026/9/25 4:58:44

把显示器插到核显上:5090 单卡跑 Qwen 27B 262K 上下文的显存优化实战
把显示器插到核显上:5090 单卡跑 Qwen 27B 262K 上下文的显存优化实战

1. 这个标题到底在说什么:先拆解核心逻辑第一次看到“把显示器插到核显上——5090 跑本地 Qwen 3.8 27B,上下文拉满 262K”这个标题,很多人第一反应是:显示器插哪儿跟跑模型有什么关系?这不是玄学吗?我一开… · 2026/9/25 4:58:38

@projectstorm/geometry 7.0.3 版本演进:react-diagrams 几何库的坐标、矩阵与边界计算重构
@projectstorm/geometry 7.0.3 版本演进:react-diagrams 几何库的坐标、矩阵与边界计算重构

UI组件前端 【免费下载链接】react-diagrams a super simple, no-nonsense diagramming library written in react that just works 项目地址: https://gitcode.com/gh_mirrors/re/react-diagrams 点击查看 免费下载 导读 projectstorm/geometry 是 react-diagram… · 2026/9/25 4:58:38

国内免费大模型盘点:从API到本地部署与微调的实用指南
国内免费大模型盘点:从API到本地部署与微调的实用指南

上周有个做独立开发的朋友问我:网上天天喊的国内免费大模型,到底是真能白嫖,还是注册完就给几毛钱试用的套路?我最近半年一直在做 AI 工具类的个人项目,前后注册了十几个 AI 开放平台,也下载过一堆开源模型… · 2026/9/25 4:58:31

VisDrone2019+YOLOv8小目标检测实战:格式转换、训练调参与部署全流程
VisDrone2019+YOLOv8小目标检测实战:格式转换、训练调参与部署全流程

做无人机视角目标检测,VisDrone2019(全称VisDrone2019-DET)几乎是绕不开的公开数据集。无人机俯拍场景里的小目标、密集遮挡、类别不均衡问题,在COCO、VOC上很难练出来,而在VisDrone上练一遍,很多工程问题都… · 2026/9/25 4:58:30

数值优化(Numerical Optimization)学习系列-03-共轭梯度方法(Conjugate Gradient)
数值优化(Numerical Optimization)学习系列-03-共轭梯度方法(Conjugate Gradient)

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/25 1:00:31

创维E900V22D刷机全攻略:S905L3SB芯片兼容性解析与救砖实战
创维E900V22D刷机全攻略:S905L3SB芯片兼容性解析与救砖实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/25 1:00:31

MQTT协议原理与Broker服务器搭建实战:从Mosquitto到EMQX
MQTT协议原理与Broker服务器搭建实战:从Mosquitto到EMQX

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/25 1:00:37

了解更多?预约专属演示

我们的顾问将为您一对一讲解产品与方案

企业微信二维码