sitemcp 是一款强大的工具,可用于抓取网站内容,并将其转换为 MCP 服务器。它源自 sitefetch,继承了其优秀特性并加以拓展。
sitemcp 使用便捷,能快速帮助您抓取网站内容并转换为 MCP 服务器。下面为您详细介绍它的安装和使用方法。
bunx sitemcp
npx sitemcp
pnpx sitemcp
bun i -g sitemcp
npm i -g sitemcp
pnpm i -g sitemcp
sitemcp https://daisyui.com
# 或者使用更好的并发数
sitemcp https://daisyui.com --concurrency 10
通过 -t, --tool-name-strategy 标志指定工具名称策略,该策略将用于 MCP 服务器名称(默认为 domain)。
sitemcp https://vite.dev -t domain # 按 Vite / 获取 Vite 文档
sitemcp https://react-tweet.vercel.app/ -t subdomain # 按 ReactTweet / 获取 ReactTweet 文档
sitemcp https://ryoppippi.github.io/vite-plugin-favicons/ -t pathname # 按 VitePluginFavicons / 获取 VitePluginFavicons 文档
通过 -l, --max-length 标志指定内容的最大长度,默认为 2000 个字符。
sitemcp https://vite.dev -l 10000
使用 -m, --match 标志指定要抓取的页面:
sitemcp https://vite.dev -m "/blog/**" -m "/guide/**"
匹配模式由 micromatch 提供支持。
我们使用 mozilla/readability 从网页中提取可读内容,但在某些页面可能会返回不相关的内容。此时可以通过指定 CSS 选择器来指示工具获取所需内容:
sitemcp https://vite.dev --content-selector ".content"
您可以在 MCP 客户端(例如 Claude Desktop)中执行服务器。以下是一个针对 Claude Desktop 的示例配置:
{
"mcpServers": {
"daisy-ui": {
"command": "npx",
"args": [
"-y",
"sitemcp",
"https://daisyui.com",
"-m",
"/components/**"
]
}
}
}
⚠️ 重要提示
对于拥有大量页面的网站,建议在将 sitemcp 注册到 MCP 客户端之前运行。默认情况下,sitemcp 在
~/.cache/sitemcp目录下缓存页面。您可以通过--no-cache标志禁用此功能。
本项目采用 MIT 许可证。