网站地图 MCP Server

@mugoosse/sitemap-mcp-server
0 Stars 868 次浏览 mugoosse 更新于 2026-08-23

网站地图 MCP服务器

MCP 服务配置

复制以下 JSON 到 OPClaw 或其他 MCP 客户端的配置文件中即可使用

{
  "mcpServers": {
    "sitemap": {
      "args": [
        "sitemap-mcp-server"
      ],
      "command": "uvx",
      "env": {
        "TRANSPORT": "stdio"
      }
    }
  }
}

服务介绍

Sitemap MCP 服务器

License
PyPI
Python Version
Status
smithery badge

Sitemap MCP 服务器为 AI 代理和 MCP 客户端提供了强大的工具,用于获取、解析、分析和可视化网站的 sitemap。它支持所有标准的 sitemap 格式,包括 XML、Google 新闻和纯文本 sitemap。

演示

利用 sitemap 的强大功能,获取关于任何网站的问题的答案。

点击工具按钮旁边的“附加”按钮:

image

然后选择 visualize_sitemap

现在输入 windsurf.com:

image

我们得到 sitemap 的可视化图:

安装

确保 uv 已安装。

在 Claude Desktop、Cursor 或 Windsurf 中安装

在你的 claude_desktop_config.json、Cursor 设置等中添加以下条目:

{
  "mcpServers": {
    "sitemap": {
      "command": "uvx",
      "args": ["sitemap-mcp-server"],
      "env": { "TRANSPORT": "stdio" }
    }
  }
}

如果 Claude 正在运行,请重启它。对于 Cursor,只需按刷新按钮并/或在设置中启用 MCP 服务器。

通过 Smithery 安装

要通过 Smithery 自动为 Claude Desktop 安装 sitemap:

npx -y @smithery/cli install @mugoosse/sitemap --client claude

MCP 检查器

npx @modelcontextprotocol/inspector env TRANSPORT=stdio uvx sitemap-mcp-server

打开 MCP 检查器 http://127.0.0.1:6274,选择 stdio 传输,并连接到 MCP 服务器。

# Start the server
uvx sitemap-mcp-server

# Start the MCP Inspector in a separate terminal
npx @modelcontextprotocol/inspector connect http://127.0.0.1:8050

打开 MCP 检查器 http://127.0.0.1:6274,选择 sse 传输,并连接到 MCP 服务器。

SSE 传输

如果您想使用 SSE 传输,请按照以下步骤操作:

  1. 启动服务器:
uvx sitemap-mcp-server
  1. 配置您的 MCP 客户端,例如 Cursor:
{
  "mcpServers": {
    "sitemap": {
      "transport": "sse",
      "url": "http://localhost:8050/sse"
    }
  }
}

本地开发

有关从源代码构建和运行项目的说明,请参阅DEVELOPERS.md指南。

使用

工具

通过MCP服务器可以使用以下工具:

  • get_sitemap_tree - 从网站URL获取并解析站点地图树

    • 参数:url(网站URL),include_pages(可选,布尔值)
    • 返回:站点地图树结构的JSON表示
  • get_sitemap_pages - 获取网站站点地图中的所有页面,并提供过滤选项

    • 参数:url(网站URL),limit(可选),include_metadata(可选),route(可选),sitemap_url(可选),cursor(可选)
    • 返回:带有分页元数据的页面JSON列表
  • get_sitemap_stats - 获取关于网站站点地图的统计信息

    • 参数:url(网站URL)
    • 返回:包括页面数量、修改日期和子站点地图详情的站点地图统计信息的JSON对象
  • parse_sitemap_content - 直接从其XML或文本内容解析站点地图

    • 参数:content(站点地图XML内容),include_pages(可选,布尔值)
    • 返回:解析后的站点地图的JSON表示

提示

服务器包含现成可用的提示,这些提示作为模板出现在Claude Desktop中。安装服务器后,您将在“模板”菜单中看到这些模板(点击消息输入旁边+图标):

  • 分析站点地图:提供对网站站点地图的全面结构分析
  • 检查站点地图健康状况:评估站点地图的SEO和健康指标
  • 从站点地图中提取URL:从站点地图中提取并筛选特定的URL
  • 查找站点地图中的缺失内容:识别网站站点地图中的内容缺口
  • 可视化站点地图结构:创建站点地图结构的Mermaid.js图表可视化

要使用这些提示:

  1. 在Claude Desktop的消息输入旁点击+图标
  2. 从列表中选择所需的模板
  3. 根据提示填写网站URL
  4. Claude将执行适当的站点地图分析

示例

获取完整的站点地图

{
  "name": "get_sitemap_tree",
  "arguments": {
    "url": "https://example.com",
    "include_pages": true
  }
}

带有过滤和分页的获取页面

按路径过滤
{
  "name": "get_sitemap_pages",
  "arguments": {
    "url": "https://example.com",
    "limit": 100,
    "include_metadata": true,
    "route": "/blog/"
  }
}
按特定子站点地图过滤
{
  "name": "get_sitemap_pages",
  "arguments": {
    "url": "https://example.com",
    "limit": 100,
    "include_metadata": true,
    "sitemap_url": "https://example.com/blog-sitemap.xml"
  }
}
基于游标的分页

服务器实现了MCP基于游标的分页来高效处理大型站点地图:

初始请求:

{
  "name": "get_sitemap_pages",
  "arguments": {
    "url": "https://example.com",
    "limit": 50
  }
}

带分页的响应:

{
  "base_url": "https://example.com",
  "pages": [...],  // First batch of pages
  "limit": 50,
  "nextCursor": "eyJwYWdlIjoxfQ=="
}

带有游标的后续请求:

{
  "name": "get_sitemap_pages",
  "arguments": {
    "url": "https://example.com",
    "limit": 50,
    "cursor": "eyJwYWdlIjoxfQ=="
  }
}

当没有更多结果时,响应中将不会出现nextCursor字段。

获取站点地图统计信息

{
  "name": "get_sitemap_stats",
  "arguments": {
    "url": "https://example.com"
  }
}

响应既包括总体统计信息,也包括每个子站点地图的详细统计信息:

{
  "total": {
    "url": "https://example.com",
    "page_count": 150,
    "sitemap_count": 3,
    "sitemap_types": ["WebsiteSitemap", "NewsSitemap"],
    "priority_stats": {
      "min": 0.1,
      "max": 1.0,
      "avg": 0.65
    },
    "last_modified_count": 120
  },
  "subsitemaps": [
    {
      "url": "https://example.com/sitemap.xml",
      "type": "WebsiteSitemap",
      "page_count": 100,
      "priority_stats": {
        "min": 0.3,
        "max": 1.0,
        "avg": 0.7
      },
      "last_modified_count": 80
    },
    {
      "url": "https://example.com/blog/sitemap.xml",
      "type": "WebsiteSitemap",
      "page_count": 50,
      "priority_stats": {
        "min": 0.1,
        "max": 0.9,
        "avg": 0.5
      },
      "last_modified_count": 40
    }
  ]
}

这允许MCP客户端了解哪些子站点地图可能值得进一步调查。然后您可以使用get_sitemap_pages中的sitemap_url参数来过滤来自特定子站点地图的页面。

直接解析站点地图内容

{
  "name": "parse_sitemap_content",
  "arguments": {
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?><urlset xmlns=\"http://www.sitemaps.org/schemas/sitemap/0.9\"><url><loc>https://example.com/</loc></url></urlset>",
    "include_pages": true
  }
}

致谢

许可证

该项目采用 MIT 许可证。详情请参阅 LICENSE 文件。

相关 MCP 服务