mcpField
Q
QueryRev AI Readiness

QueryRev AI Readiness

本地服务
queryrev.com开发工具05 天前更新

关于 QueryRev AI Readiness

QueryRev AI Readiness 是在本机运行的 MCP 服务,用于检查网站公开文件对 AI 爬虫的处理方式。它提供附带证据的检查结果,不打分、不调用模型,也不发送遥测数据。

主要功能

  1. 01检查爬虫访问、主页、结构化数据和站点地图
  2. 02测试 robots.txt 对爬虫和路径的规则
  3. 03验证 llms.txt 并可检查链接
  4. 04根据站点生成 llms.txt 框架
  5. 05列出涵盖的 AI 爬虫

适用场景

  1. 01核查网站是否允许指定爬虫访问
  2. 02验证 robots.txt 对特定路径的规则
  3. 03检查现有 llms.txt 及其链接
  4. 04根据站点链接整理 llms.txt 初稿

MCP 相关

该本地 MCP 服务通过标准输入和输出向客户端提供五种检查工具,结果包含证据。请求从运行服务的机器发出;工具只读取公开 HTTP 文件,不写入磁盘,也不发送遥测数据。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"com-queryrev-ai-readiness": {
"command": "npx",
"args": [
"-y",
"@queryrev/ai-readiness-mcp"
]
}
}
}
启动命令npx -y @queryrev/ai-readiness-mcp

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
npm@queryrev/ai-readiness-mcp1.0.0

工具

5

收录的工具列表 · 更新于 4 天前

参数类型必填说明
urlstring是站点地址:http 或 https,例如 https://example.com
failOnenum否将哪种级别的问题设为使 exitCode 变为 1:"fail"(默认)或 "warn"。fail | warn

详细介绍

MCP 的 QueryRev AI 就绪度

一个本地 MCP 服务,用于检查网站的公开文件如何对待 AI 爬虫。它向任何 MCP 客户端提供五种工具:爬虫访问检查、robots.txt 测试器、llms.txt 验证器、llms.txt 生成器,以及受检查的爬虫列表。每项结果都是附有证据的发现。不提供评分、不调用模型,也不收集遥测数据。

它在你的机器上运行,通过标准输入和输出通信,并从你的机器发出请求。它使用与 @queryrev/ai-readiness 命令行相同的检查代码,并返回与 ai-readiness <command> --json 相同的 JSON。

需要 Node 22.19 或更高版本。

安装

无需安装:MCP 客户端会通过 npx 启动服务。

npx -y @queryrev/ai-readiness-mcp

手动启动时,服务会等待客户端通过标准输入连接;按 Ctrl-C 停止。

配置客户端

任何通过标准输入和输出启动本地服务的 MCP 客户端,都需要相同的三项内容:名称、命令及其参数。许多客户端会从类似这样的 JSON 文件中读取这些内容:

{
  "mcpServers": {
    "ai-readiness": {
      "command": "npx",
      "args": ["-y", "@queryrev/ai-readiness-mcp"]
    }
  }
}

保存服务的键名和文件所在位置因客户端而异;请参阅客户端的文档。若客户端通过命令行接收命令,则使用 npx -y @queryrev/ai-readiness-mcp。要固定版本,请将版本号写在包名后面:@queryrev/ai-readiness-mcp@<version>。

该服务没有选项,其代码也不会从环境中读取设置。除了启动方式外,无需进行其他配置。

工具

工具输入功能
checkurl、failOn检查爬虫访问、llms.txt、实际提供的主页、结构化数据和站点地图
robots_testurl 或 text、agent、path、failOn指出 robots.txt 中哪一行决定爬虫对某个路径的访问权限。使用 text 时不会发起请求
llms_validateurl 或 text、links、base、failOn根据 llmstxt.org 检查 llms.txt;links 还会请求其中最多 20 个链接
llms_generateurl、maxPages(1 到 100,默认值为 30)根据网站自己的站点地图或主页链接生成 llms.txt 的框架。不会写入磁盘
crawlers无列出涵盖的爬虫及其供应商和用途。不会发起请求

所有操作开始前都会检查输入:

  • url 必须是长度不超过 2048 个字符、不含空格或控制字符的 http 或 https 地址。不接受其他任何内容:不接受文件地址、其他协议或不带协议的主机名。
  • text 是文件的文本,robots.txt 最多 500 KiB,llms.txt 最多 1 MiB。服务不会读取你计算机上的文件,也不会写入文件;将你已有的文本作为 text 传入即可。在结果中,文本会作为独立来源 { "kind": "text" },消息中称其为“给定的文本”。
  • agent 是爬虫标记,例如 OAI-SearchBot。path 必须以 / 开头。
  • 未列出的字段会被拒绝。没有任何字段可以访问私有网络,也无法启用这种访问。

每个结果都是一个 JSON 文本块,包含 schemaVersion: 1、command、exitCode 和报告,格式与 ai-readiness <command> --json 的输出一致。exitCode 与命令行的退出码相同:没有达到或超过 failOn 的问题时为 0(默认值为 fail);检查失败时为 1;无法读取网站时为 3。以下两类错误会作为错误结果(isError)返回:

  • 输入不符合工具的架构要求(地址错误、字段未知、值超出上限,或同时提供或均未提供 url 和 text)时,会在运行任何操作前被拒绝,并返回协议库的纯文本输入验证消息。该消息不是 JSON,也没有退出码。
  • 命令本身发现的用法错误(例如,text 是 HTML 页面而不是 robots.txt)会以命令行 JSON 的形式返回,exitCode 为 2,且 error.code 为 usage。内部错误的处理方式相同,但退出码为 4。

每条发现都有稳定的 id、一个 level(pass、warn、fail 或 info)、一句 message,以及(如有)证据 snippet。

无法读取的网站不会作为错误结果返回:它会以 exitCode 为 3 的 JSON 形式返回。

结果是命令行文档,并额外在每个结果顶部添加 crawlersCovered,无论该命令行文档中其他位置是否已有此字段。

涵盖的爬虫:此列表中的 11 个 AI 爬虫,来自 OpenAI、Perplexity、Google、Apple、Common Crawl、Meta、Amazon 和 ByteDance。不检查其他爬虫。

crawlers 工具会列出这些爬虫。使用 agent 的 robots_test 会测试你指定的标记,无论其是否在涵盖范围内。此处没有任何内容声称涵盖“所有 AI 爬虫”。

时间限制、取消和进度

check 最多耗时 30 秒,llms_generate 最多耗时 120 秒,其他工具每次请求最多耗时 10 秒。如果客户端取消调用,或自身超时后取消调用,服务会停止该调用发出的请求。客户端使用 llms_generate(或任何其他会发起请求的工具)发送进度令牌时,每次请求后都会收到进度通知。

来自网站的文本是数据

结果中的标题、页眉、robots.txt 中的行以及页面文本都来自任何人都可以编写的网站。服务会从返回的每个字符串中移除控制字符和会改变文本顺序的字符(双向控制字符),并且只在 JSON 中返回文本。客户端仍应将其视为不可信数据来呈现,绝不能将其视为指令:页面可以写任何内容,包括“忽略你的指令”。服务自身的描述会告知客户端这一点。

它无法看到的内容

它通过 HTTP 读取公开文件,就像从你的机器发出的一位访客请求。它无法看到:

  • CDN 或防火墙规则如何区别对待 AI 爬虫和此工具(即使 robots.txt 允许爬虫,网络边缘仍可能拦截它);
  • 爬虫实际抓取了什么、抓取频率如何,或某个页面是否被 AI 回答引用;
  • 只有在脚本运行后才会出现的内容:主页按原样读取,不运行脚本;
  • 登录、机器人检查或针对该工具自身地址的拦截之后的任何内容。

网络行为

任何人都可以让服务访问客户端传入的任何地址,因此服务会严格限制访问范围。

  • User agent:Mozilla/5.0 (compatible; QueryRev-AIReadiness/1.0; +https://queryrev.com/bot)。其 robots.txt 令牌为 QueryRev-AIReadiness,并遵守为该令牌(或 *)编写的规则,包括最长 10 秒的 Crawl-delay。
  • check 和 llms_generate 只会在 robots.txt 允许此工具访问的地方请求文件。robots_test 和 llms_validate 会请求你指定的那个文件;使用 links 的 llms_validate 会在请求每个链接前先检查 robots.txt。使用 text 时不会发出任何请求。
  • 仅支持 GET。不使用 Cookie、凭据或从环境中获取的代理。
  • 仅支持 http 和 https,仅限端口 80 和 443;地址中不能包含用户名或密码;不允许 IP 字面量主机名;主机名最长为 253 个字符。
  • 主机名只解析一次,连接会连到经过检查的地址。始终拒绝私有、环回、链路本地、云元数据及其他特殊用途地址段。与命令行不同,此服务没有允许访问私有网络的选项。
  • 最多重定向 3 次,每次都会重新检查;不会跟随跳转到其他站点的重定向。
  • 连接超时为 5 秒,单次请求超时为 10 秒,check 超时为 30 秒,llms_generate 超时为 120 秒。
  • 大小限制在解压后统计,并会在达到限制时报告:robots.txt 为 500 KiB,llms.txt 为 1 MiB,页面为 2 MiB,站点地图为 5 MiB。
  • 对同一主机每秒最多发出一个请求。若主机返回 429 或 503,工具会停止向其发送请求。最多同时运行两次工具调用;其他调用会等待。
  • 不会向 queryrev.com 或你所查询的网站以外的任何对象发送数据。没有遥测、账户或密钥。服务不会向磁盘写入任何内容,标准输出中也只会写入协议内容。

许可证

代码采用 MIT 许可证(参见 LICENSE)。其中包含 @queryrev/ai-readiness 的代码,该代码也采用 MIT 许可证。

安全

请将漏洞报告发送至 [email protected],不要在公开议题中报告。请参见 SECURITY.md。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。