mcpField
S
Sitemap Stats

Sitemap Stats

远程服务
pipeworx.io数据与分析05 周前更新

关于 Sitemap Stats

Sitemap Stats 是面向网站分析和研究的 MCP 服务,读取域名的站点地图并统计 URL 的路径前缀分布。它侧重网站结构而非页面内容,可显示读取上限及截断原因。

主要功能

  1. 01读取 robots.txt 和站点地图
  2. 02统计 URL 路径前缀分布
  3. 03报告站点地图数量及 URL 数
  4. 04显示更新时间范围和截断状态

适用场景

  1. 01分析网站内容的路径分布
  2. 02识别 URL 集中于少数目录的网站
  3. 03检查站点地图覆盖范围及更新时间

MCP 相关

向 MCP 客户端提供站点地图统计工具,可通过 Pipeworx 网关连接,也可作为本地 stdio MCP 服务运行。

配置

远程服务无需本地安装。选择你使用的客户端,复制配置或使用一键安装。

服务地址https://gateway.pipeworx.io/sitemap-stats/mcp
一键复制安装命令
Claude CodeTerminal
Cursor.cursor/mcp.json
VS Code.vscode/mcp.json
Claude Desktopclaude_desktop_config.json
Windsurf~/.codeium/windsurf/mcp_config.json

命令在终端中运行;JSON 粘贴到对应客户端的 MCP 配置后重启。需要授权的服务会在首次连接时提示登录。

工具

详细介绍

@pipeworx/sitemap-stats

读取域名的站点地图,并报告其结构而非内容——按路径前缀统计 URL 数量。这个指纹可以区分普通网站和程序化内容农场(内容农场的大多数 URL 都集中在一两个路径前缀下)。

属于 Pipeworx——一个连接 AI Agent 与 1683+ 个实时数据源的 MCP 网关。

工具

  • sitemap_stats({ domain, max_urls? }) — 解析域名的站点地图(读取 robots.txt 中的 Sitemap: 指令;若无,则依次尝试 /sitemap.xml 和 /sitemap_index.xml),跟进一层站点地图索引嵌套,并返回 total_urls、sitemap_count、前 20 个路径前缀的直方图(top_prefixes,每项包含 count 和 share)、top_prefix_share(区分普通网站与生成式网站的单一数值),以及存在时的 lastmod_min/lastmod_max。限制读取的 URL 总数(默认 150,000,通过 max_urls 设置的硬上限为 500,000);提前停止时始终会设置 capped: true 和 cap_reason,因此截断读取不会看起来像一个小型网站。没有站点地图的域名会返回 found: false 和 reason,而不是错误。

身份验证

无需密钥。无需供应商,也无需密钥。

数据源

  • 目标域名自己的 robots.txt 和站点地图 XML 文件,每次调用都会实时读取——直接透传,不是副本。

构建过程中发现的问题

  • 站点地图协议将单个文件限制为 50,000 个 URL,因此实际中包含多个文件的网站很常见。该工具会跟进一层 <sitemapindex>,读取其子级 <sitemap> 文件,但不会继续递归(多层嵌套的索引不符合标准,也很少见)。
  • 作为静态文件提供的原始 .xml.gz 不带 Content-Encoding: gzip 标头,因此运行时不会自动解压;当 URL 以 .gz 结尾或响应的 content-type 提及 gzip 时,会使用 Workers 原生的 DecompressionStream('gzip') 手动解码。
  • URL 上限适用于所有文件中读取的 URL 总数,而非每个文件;达到上限时会在当前文件中途停止,而不是跳过整个文件。因此,上限内的 total_urls 始终是实际读取到的真实数量,不会在未说明的情况下变少。
  • 按规范,robots.txt 中的 Sitemap: 行应使用绝对路径,但实际并非总是如此;相对路径会根据域名的源站解析。

快速开始

添加到 MCP 客户端(Claude Desktop、Cursor、Windsurf 等):

{
  "mcpServers": {
    "sitemap-stats": {
      "url": "https://gateway.pipeworx.io/sitemap-stats/mcp"
    }
  }
}
此端点实际提供的内容

https://gateway.pipeworx.io/sitemap-stats/mcp 上的 tools/list 会返回上表中的工具,以及 Pipeworx 的共享元工具——ask_pipeworx、discover_tools、search_within、remember/recall 和网关范围内的其他工具。因此,你看到的工具数量会多于此表所列:目前,单个工具包端点除了自身工具包的工具,还会列出约 30 个共享工具。连接的 initialize 响应会说明其确切范围,也是当天情况的权威信息。

这是有意为之,并非意外的多路复用。元工具可以让限定范围的连接回答此工具包无法涵盖的问题——通过 ask_pipeworx 路由至整个目录——无需额外添加第二个 MCP 服务。目前无法挂载不含这些元工具的工具包端点;如果额外的架构定义消耗的上下文多于路由功能带来的价值,请连接一次完整网关,而不是连接多个工具包端点。

或者,连接完整的 Pipeworx 网关,直接列出每个工具包的全部工具,而不只是此工具包的工具:

{
  "mcpServers": {
    "pipeworx": {
      "url": "https://gateway.pipeworx.io/mcp"
    }
  }
}

两个 URL 都会连接到相同的网关和相同的 1683+ 个数据源。唯一的区别是直接列出哪个工具包的工具;无论连接哪个端点,ask_pipeworx 都能访问所有工具。

没有 MCP 客户端?通过 HTTP 调用

curl -X POST https://gateway.pipeworx.io/v1/tools/sitemap_stats \
  -H 'Content-Type: application/json' \
  -d '{"domain":"gitnux.org"}'

首次调用无需账号。查看任意工具:GET https://gateway.pipeworx.io/v1/tools/sitemap_stats。查找工具:使用 {"query":"..."} 调用 POST https://gateway.pipeworx.io/v1/tools/search_packs。

独立运行(无需网关账号)

此软件包也可以作为本地 stdio MCP 服务运行,无需 Pipeworx 账号,也无需经过网关:

{
  "mcpServers": {
    "sitemap-stats": {
      "command": "npx",
      "args": ["-y", "@pipeworx/mcp-sitemap-stats"]
    }
  }
}

或者直接运行,确认它可以启动:

npx -y @pipeworx/mcp-sitemap-stats

它通过 stdin/stdout 使用 MCP 通信,并响应 initialize/tools/list/tools/call,但仅支持此软件包的工具——不包含上方网关连接额外提供的共享元工具。相同的源代码,相同的工具,无需 ask_pipeworx 路由。

使用 ask_pipeworx

你可以用简单的英语提问,而不是直接调用工具——这既适用于上方的软件包端点,也适用于完整网关:

ask_pipeworx({ question: "your question about Sitemap Stats data" })

网关会选择合适的工具并自动填写参数。

更多信息

许可证

MIT

评论

支持 Markdown

第一次接触 MCP?

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

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