llms.txt vs NLWeb vs WebMCP vs 远程 MCP 服务器

让网站能被智能体使用的四条路,其中三条要你发布一个消费方仍属假设的接口面。一份覆盖约 13.7 万个域名的服务器日志分析发现,97% 的 llms.txt 文件从未被抓取过;WebMCP 是一份藏在 Chrome 实验标志后面的 W3C 社区组草案;NLWeb 有基础设施背书却采用停滞。请按「什么东西确实会读它」来选,并按智能体是要读、要问还是要动手来选——因为四者之中只有一个能给你一个可识别、可吊销的调用方。

作者 智能体 AI 维基 28 分钟读完

让你的站点变得「智能体可读」的四条路里有三条,要你发布一个还没有任何消费方承诺会去读的接口面;而其中一条的证据如今已经被量出来了,而且是负面的:一份 2026 年 6 月发布的、覆盖约 13.7 万个域名的服务器日志分析发现,97% 的 llms.txt 文件根本没有被抓取过。有用的问题不是这几样里哪个是标准。而是智能体到底要读你的内容、要向你的数据提问、还是要代表用户动手——因为只有最后一件需要一个调用方身份,而四者之中只有一个能给你。

速览

四个接口面,按它们在规划会上被提出的顺序排列。地位与日期均截至 2026 年 10 月。

接口面你发布什么地位什么东西会读它
llms.txt放在 /llms.txt 的一份站点 markdown 地图2024 年 9 月的非正式提案,没有标准组织实测几乎等于没有
NLWeb覆盖你自有内容的一个 /ask 端点,每个实例另配一个 MCP 服务器微软开源项目,MIT 许可,Build 2025 发布助手,在已有发布方接好的地方
WebMCP由你页面的 JavaScript 注册的工具W3C 社区组草案;规范自称不是 W3C 标准Chrome,藏在实验标志后面
远程 MCP 服务器一个暴露类型化工具的、带鉴权的端点MCP,自 2025 年 12 月起由 Linux 基金会的 Agentic AI Foundation 治理每一个主流智能体客户端
Where each agent-facing surface sits Four surfaces between a site and an agent. A static llms.txt file and a server-side NLWeb ask endpoint both sit on the publisher's own origin and are pulled by a crawler or an assistant. WebMCP registers tools inside the rendered page in the user's browser, so calls execute as the page's own JavaScript in the signed-in session. A remote MCP server is a separate authenticated endpoint the agent connects to directly. Your side The agent llms.txt a static file on your origin NLWeb /ask your server answers questions WebMCP tools registered by the page's JS, inside the signed-in session Remote MCP server an endpoint with its own identity and authorisation fetched, if anything fetches it queried by an assistant called in the browser tab connected to, with a token A crawler An assistant A browser agent in the user's own tab Any MCP client you can identify and revoke
它们不是同一个想法的四种实现。它们坐在不同的位置,携带不同的权限。
Evidence that something reads each surface Four rows, one per surface, against three columns: whether a consumer provably reads it, how much upkeep it needs when the site changes, and what it can authorise. A remote MCP server is strong on all three. WebMCP has a browser implementation behind a flag. NLWeb has infrastructure backers but flat adoption. llms.txt has measured evidence against it: a server-log analysis of about 137,000 domains published in June 2026 found 97 percent of published files received no fetches at all. Does anything read it, and what does it let you do? a consumer that reads it upkeep as the site changes what it can authorise llms.txt 97% never fetched goes stale silently nothing NLWeb /ask backers, flat adoption an index to keep fresh reads of your own data WebMCP one browser, behind a flag tied to your UI code the user's own session Remote MCP server every major client versioned like an API a caller you can revoke Accent is strong, the lighter tint is partial, plain is weak or absent. The 97% figure is a server-log analysis of roughly 137,000 domains published in June 2026, and GPTBot accounted for 4.51% of the fetches that did happen.
只有一行在三项上都强,而它正是没人把它叫作 Web 标准的那一个。

llms.txt——一条提示,也是唯一有反面证据的接口面

它是什么

Answer.AI 的 Jeremy Howard 在 2024 年 9 月提出了 llms.txt,并在 llmstxt.org 配了一份规范:放在站点根目录的一个 markdown 文件,里面有一个写项目名的 H1、一段引用块摘要,以及若干 H2 小节,列出带注释的链接,指向模型应当视为权威的那些页面。配套的 /llms-full.txt 把那些页面的正文内联进来,而提案还建议为每个页面发布一份 markdown 副本,URL 相同、后面加上 .md。

实际发生了什么

这是四者中唯一一个「有东西读它吗?」已经被实证回答过的,而答案并不客气。被引用最多的那份研究,是一份 2026 年 6 月发布的、跨约 13.7 万个域名的服务器日志分析:它报告在被测的那个月里,97% 已发布的 llms.txt 文件抓取次数为零;而在确实被抓取的那少数里,GPTBot 占了 4.51% 的请求,ClaudeBot 占 0.80%,DeepseekBot 占 0.02%。更小规模的单站日志复盘指向同一个方向,其中几份在一到两周的窗口里完全没有记录到针对该文件的 AI 爬虫请求。采用率的估计彼此矛盾——一份约 30 万域名的分析给出接近 10%,而一个覆盖 219 个知名主机的追踪器发现 57.6% 提供了该文件——但报出高数字的样本池严重偏向技术公司,所以这两个数字与其说是互相冲突,不如说是在量两个不同的人群。

谷歌的立场值得完整地读,因为它按产品分裂。Search Central 关于 AI 功能的指引说,站点所有者不需要创建机器可读的 AI 文本文件才能出现在搜索的生成式功能里,因为搜索并不使用它们;John Mueller 还公开把这个文件比作当年的 keywords meta 标签。与此同时,Chrome 的 Lighthouse 13.3 在 2026 年 5 月发布,把一个「Agentic Browsing」审计类别从实验状态提升进了默认配置,而那个类别里就包含一项 llms.txt 检查。有一个细节把这件事定了调:当文件缺失时,该审计返回不适用;文件存在且格式良好时通过;只有在服务器抓取出错时才失败。就连那个去找它的工具,也拒绝因为你没有它而扣你分。

该怎么对待它

发布一份只要一个下午,所以这个决定的成本那一侧不是问题所在——问题在于一个没人读的文件会无声地过期,而当最终真有东西来读时,一份过期的站点地图比没有地图更糟。提案里真正站住了的是另一半:为每个页面提供干净的 markdown。那是会被抓取的,因为它就是那个页面本身,而它对从爬虫到浏览器智能体的每一类消费方都有帮助。如果你只从本节做一件事,就做那些 .md 副本,把索引文件当成可选项。

NLWeb——形状是对的,在等一个消费方

它是什么

微软在 Build 2025 上把 NLWeb 作为一个 MIT 许可的项目发布:你把它指向你已经在发布的内容——schema.org 标注、RSS、一份商品目录——它就在其上立起一个自然语言的 /ask 端点,而每个实例同时作为一个 MCP 服务器暴露出来,好让智能体把它当成工具来调。发布时的说法是「智能体网络的 HTML」:每个站点一个端点,回答关于这个站点自有数据的问题。

实际发生了什么

早期采用者名单——Shopify、TripAdvisor、Eventbrite、O'Reilly、赫斯特旗下站点——自发布以来几乎没有动过,而到 2026 年中的报道把采用描述为停滞。仓库仍把自己的实现代码定性为概念验证式的演示,而非一个生产级答案;在主流云上的托管部署当时仍标着「即将推出」;.NET 实现被标为实验性,于是 Python 成了唯一一个被人称为可部署的参考实现。Cloudflare 在 2026 年初通过其 AI Search 产品加入了 NLWeb 支持,这让该协议在 Azure 之外多了一个基础设施背书方。分析师的评论耐心而非看多,Constellation Research 的 Michael Ni 把「实质性采用」放在了两三年之后。

原因是一个「先有鸡还是先有蛋」的问题,而不是技术缺陷,而它值得被精确地点名:没有助手在规模上去查询 /ask,发布方就没有理由跑一个;而没有发布方在跑,任何助手也就没有理由投入。那正是M×N 互操作问题所描述的同一个死锁,而 MCP 之所以打破了它,仅仅因为消费方那一侧——那些编码智能体——先动了,而且是成规模地动。

该怎么对待它

对于「让智能体能就我的目录提问」这件事,NLWeb 的形状是对的;而如果你已经有 schema.org 数据,把它立起来确实很便宜。请把它当成一次「押消费方会到来」的下注,照这个尺度安排投入;并注意真正有价值的产物是底下那个检索索引——它同时服务你自己的站内搜索与你自己的 MCP 服务器,所以就算这个协议停滞,这份工作也不算白做。索引新鲜度与失效才是长期真会花你钱的那一块。

WebMCP——唯一会动手的那个,也是唯一没有调用方的那个

它是什么

WebMCP 让一个页面用自己的 JavaScript 向浏览器注册工具,于是在该标签页里操作的智能体可以去调一个类型化的函数,而不必去驱动 DOM。它是 W3C Web Machine Learning 社区组的一份「社区组报告草案」,编者来自微软与谷歌;那份在 2026 年 10 月 20 日修订过的规范页面直白地写着:它既不是 W3C 标准,也不在 W3C 标准轨道上。Chrome 已在 chrome://flags 后面发布了一个早期预览,据报道落在 2026 年 2 月的 146 版里;Edge 的支持被它自己的合著者描述为「预期」而非已发布,而 2026 年中的一次复盘没有找到可靠证据表明智能体客户端里存在一条普遍可用的 WebMCP 调用路径。

实际发生了什么

它还很早,而这是故事里较小的那一半。结构性的问题在于:一个注册过的工具是以你页面自己的 JavaScript 身份执行的,就在那位已登录用户既有的会话里——于是你的服务器收到的,是一个它无法与一次点击区分开的请求。调用方没有自己的身份,这意味着你无法给它授权、无法单独给它限流、也无法在不吊销那位用户的前提下吊销它。那正是《WebMCP 把你的页面变成了 API》里的论证,也是 WebMCP 不能整齐地摆在另外三者旁边的原因:它是一个比 DOM 更好的驱动面,而它完全不是一道授权边界。

该怎么对待它

当你有一块智能体确实需要操作的界面时再建它——一个多步表单、一个配置器、一个状态就住在页面里的东西——并把每一个注册过的工具都当成一个「标签页里的任何东西都能到达」的公开端点。这意味着服务端校验要放在真正那次变更上,而不是放在工具处理函数里;也意味着没有任何工具可以在缺少「人类点击同样会得到的那道确认」的情况下执行不可逆动作。工具的模式与契约照旧适用;安全地渲染智能体输出讲返回路径。

远程 MCP 服务器——那个正在赢的乏味选项

它是什么

一个暴露类型化工具、带鉴权的端点,任何 MCP 客户端都能连上来。MCP 的治理在 2025 年 12 月转到了 Linux 基金会的 Agentic AI Foundation,这件事对协议设计的意义不如它的另一重意义:它不再是某一家厂商的项目。平台厂商随后跟上:Google Cloud 在 2025 年 12 月 10 日宣布了面向 Google 与 Google Cloud 服务的全托管远程 MCP 服务器——首批是 Maps Grounding Lite、BigQuery、Compute Engine 与 GKE,并点名了接下来几个月的 Cloud Run、Cloud Storage、AlloyDB、Cloud SQL、Spanner、Looker、SecOps 等——访问通过 Cloud IAM 管理,带审计日志,并用 Model Armor 来对付间接提示注入。第三方服务器在持续上线;与本文同一周的一个例子是 Notified 在 2026 年 10 月 21 日为其公关与投资者关系平台开放了一个 MCP 测试版。

实际发生了什么

这是这份清单上唯一一个消费方那一侧不属于假设的接口面,而且差距并不接近。它也是唯一一个回答了另外三者都回避掉的那个问题:是谁在调用?一个令牌标识出客户端,于是你可以限定它能做什么、给它计量、给它记日志、把它关掉——而这正是「暴露一项能力」与「祈祷没人滥用它」之间的差别。MCP 鉴权讲当下的授权故事,生产环境中的 MCP 运维讲运维现实——它比协议文档读起来要不愉快些。

代价是实打实的工作,而不是一个周末。你在运营一个 API:版本管理、下线窗口、限流、鉴权,以及一个会被智能体以你没测过的组合方式使用的工具面。那些具体的坑现在已经被标记得很清楚了——过大的返回结果撑爆上下文窗口(大体积结果与分页)、工具太多稀释了选择(MCP 工具设计),以及工具描述本身就是一个注入面(工具投毒)。

该怎么对待它

如果智能体本该在你的产品里做任何事,那该建的就是这一个,而其余几样最多是补充。请从覆盖你最常被要求的那几项集成的三到五个工具开始,而不是机械地把你整个 REST 面包一层——一百个单薄的工具是比五个形状良好的工具更差的产品。

真正把它们区分开的那根轴是权限

Read, ask, act — which surface serves each job Three columns for the three jobs an agent might need from a site. For reading your content, a markdown copy of the page is what is actually fetched. For asking questions over your catalogue, NLWeb or your own search endpoint applies. For acting on the user's behalf, only a remote MCP server gives you a caller identity you can authorise and revoke; WebMCP acts inside the user's own session instead. Read my content Ask my data Act for the user reach for a .md copy of each page NLWeb, or your own search API a remote MCP server who is liable nobody — it is a public read you, for what you answer the identity in the token WebMCP belongs in no column: it acts, but inside the user's session, so the caller has no identity of its own. llms.txt belongs in no column either — it is a hint about the first one, not a way of serving it.
读、问、动手。第三列是唯一需要一个身份的,而它也是唯一只有一个选项的那一列。

按「标准化地位」去比较这四样,会得出一个什么都预测不了的排名,因为它们并不互为替代品。改按「智能体想做什么」来排,重叠就消失了。读你的内容是一次没有调用方、也没有责任归属的公开操作:服务它的东西是稳定 URL 上的干净 markdown,而 llms.txt 是关于这件事的一条提示,而不是做这件事的办法。问一个关于你数据的问题,会让你对那个答案负责,所以它需要一个你保持新鲜的索引与一个你划定的范围——NLWeb 的形状,或者你自己那个藏在 MCP 工具后面的搜索端点。代表用户动手,需要知道是谁在要求、以及代表谁,而那是一个令牌问题。WebMCP 坐在这个框架之外,而不是坐在第三列里面:它会动手,但它动手所用的权限属于那个被它借用了会话的人。

对任何在规划这项工作的人来说,有两个推论。第一,一个只产出了「已发布文件」的智能体就绪项目,什么可测的东西都没产出;能够被验证的交付物,是一次从真实客户端发出并成功的调用。第二,如果你想知道到底哪些智能体正在到达你,该上仪表的接口面是你的日志、你的 robots.txt 以及你的 bot 验证姿态,而不是你的 llms.txt——bot 验证与智能体访问讲的是识别那一侧,而它是决定其余任何事情的前提。

什么时候该选哪个

情形该建这个跳过
文档或知识站;你想让助手准确地引用你每个页面在稳定 URL 上的 markdown 副本llms.txt 索引,除非某个指名的消费方要它
一份人们会提问的目录或数据集一个检索索引,作为 MCP 工具暴露;若 schema.org 数据已就位则加上 NLWeb等某个 Web 标准尘埃落定
一个智能体应当在其中采取动作的产品一个带受限鉴权的远程 MCP 服务器把 WebMCP 当成主路径
一块智能体必须驱动的复杂页内界面WebMCP 工具,背后放服务端校验把注册过的工具当成可信
企业采购方在要审计轨迹一个远程 MCP 服务器,那里身份与日志都存在任何你叫不出调用方名字的东西

还有一个框架要留住:这里的不对称并不关乎质量。llms.txt、NLWeb 与 WebMCP 都是一群把一个真实问题想清楚了的人做出的合理设计。不对称之处在于:MCP 的消费方那一侧先到了,而且是成规模地到了——而那是唯一曾经让一种面向 Web 的格式值得发布的东西。盯消费方,别盯规范。

常见问题

我该发布一个 llms.txt 文件吗?

只在某个你在意的消费方要过它的时候。被量出来的证据是几乎没有东西抓取它——在一份 2026 年 6 月发布的、覆盖 13.7 万域名的服务器日志分析里,97% 已发布的文件抓取次数为零——而谷歌的搜索指引说搜索并不使用这类文件。提案里真能回本的那部分,是为你的页面提供干净的 markdown 副本。

llms.txt 对 AI 搜索可见度有帮助吗?

没有任何已发表的研究发现「拥有该文件」与「被 AI 答案引用」之间存在有意义的相关性,而谷歌说搜索并不消费它。Chrome 的 Lighthouse 确实在其 Agentic Browsing 类别里审计它,但当文件缺失时那项审计返回「不适用」,并不会判你失败。

WebMCP 是 W3C 标准吗?

不是。它是 W3C Web Machine Learning 社区组的一份社区组报告草案,而规范页面写明它既不是 W3C 标准,也不在 W3C 标准轨道上。Chrome 已以实验标志后的早期预览形式发布了它,据报道落在 2026 年 2 月的 146 版里。

NLWeb 死了吗?

没有,但它在等。代码是 MIT 许可且有人维护,Cloudflare 在 2026 年初通过其 AI Search 产品加入了支持,而早期采用者名单自 Build 2025 以来增长不多。仓库仍把自己的实现描述为概念验证,所以请把它当成一次早期下注,而不是基础设施。

一个远程 MCP 服务器能替代另外三样吗?

对于「问」与「动手」,基本可以——它是那个有真实客户端、也有调用方身份的接口面。它替代不了「提供可读内容」,因为一个爬虫不会为了读你的文档去开一个 MCP 会话;它也替代不了 WebMCP——在智能体所需状态就住在渲染后页面里的那些场景。

最该先建的那一件、价值最高的东西是什么?

如果智能体该在你的产品里动手,就建一个小的远程 MCP 服务器,带三到五个形状良好的工具与受限鉴权。如果它们只该读它,就建稳定 URL 上的 markdown。这份清单上其余的一切,都是这两者之一的补充。

延伸阅读

本站相关:

项目来源: