sitemcp:项目的核心功能/场景

sitemcp:项目的核心功能/场景

sitemcp Fetch an entire site and use it as a MCP Server sitemcp 项目地址: https://gitcode.com/gh_mirrors/si/sitemcp

sitemcp 是一个功能强大的网站内容抓取工具,能够快速地获取整个网站的静态内容并将其用作 MCP(Minecraft Content Pack)服务器。这使得网站内容可以被轻松地导入到 Minecraft 游戏中,为游戏开发者和内容创作者提供了极大的便利。

项目介绍

sitemcp 是基于 sitefetch 项目的分支,由 egoist 开发。该项目能够以命令行工具的形式运行,用户只需提供目标网站的 URL,sitemcp 就能够自动抓取网站的所有页面内容。它不仅支持一次性使用,还可以全局安装,方便用户频繁使用。

项目技术分析

sitemcp 使用了多种技术来实现其功能:

  1. 命令行交互:用户通过命令行工具与 sitemcp 交互,执行抓取任务。
  2. micromatch:用于匹配特定的页面路径,支持多种匹配模式。
  3. mozilla/readability:提取网页中的可读内容,忽略广告和样式代码。
  4. CSS 选择器:用户可以指定 CSS 选择器,以便 sitemcp 知道从哪里获取可读内容。

项目及技术应用场景

sitemcp 的应用场景非常广泛,以下是一些典型应用:

  1. Minecraft 内容包:将网站内容转换成 Minecraft 中的内容包,用于教育和娱乐。
  2. 网站备份:快速备份整个网站的内容,以便于恢复或迁移。
  3. 网站内容分析:分析目标网站的结构和内容,为网站优化提供数据支持。

项目特点

  1. 简单易用:sitemcp 的安装和使用过程非常简单,适合所有用户。
  2. 支持指定页面:通过 -m--match 参数,用户可以指定要抓取的页面。
  3. 并发处理:支持并发抓取,提高抓取效率。
  4. 内容筛选:通过 --content-selector 参数,用户可以指定 CSS 选择器,精确提取所需内容。
  5. 缓存机制:默认情况下,sitemcp 会将抓取的内容缓存到本地,减少重复抓取。
  6. 高度可定制:用户可以根据需求自定义抓取策略和配置。

以下是一个简单的示例,展示如何使用 sitemcp 抓取指定网站内容:

sitemcp https://daisyui.com

# 或使用并发选项
sitemcp https://daisyui.com --concurrency 10

如果用户想要抓取特定页面,可以使用 -m 参数:

sitemcp https://vite.dev -m "/blog/**" -m "/guide/**"

对于内容筛选,用户可以指定 CSS 选择器:

sitemcp https://vite.dev --content-selector ".content"

此外,sitemcp 还支持与 MCP 客户端配合使用,例如 Claude Desktop,以下是配置示例:

{
  "mcpServers": {
    "daisy-ui": {
      "command": "npx",
      "args": [
        "-y",
        "sitemcp",
        "https://daisyui.com",
        "-m",
        "/components/**",
      ]
    }
  }
}

总的来说,sitemcp 是一个功能强大的网站内容抓取工具,适用于多种场景,简单易用,具有高度的可定制性。无论是网站备份、内容分析还是 Minecraft 内容包制作,sitemcp 都能够满足用户的需求。

sitemcp Fetch an entire site and use it as a MCP Server sitemcp 项目地址: https://gitcode.com/gh_mirrors/si/sitemcp