SiteMCP
\[!警告\] 此存储库已存档。 请在使用此项目之前阅读以下通知。
档案通知
SiteMCP创建于2025年4月8日,在模型上下文协议的早期阶段(原始推文, 介绍帖子,日语).当时,MCP是一个全新的概念,通过MCP服务器将文档传递给AI助手是唯一可行的选择之一。Claude Code仅在基于使用的计划下提供,尚未得到广泛采用,技能等功能尚不存在。(因此,此存储库中的所有演示都是用Claude Code Desktop录制的。)
当时,编码代理的能力要低得多,LLM原生网络搜索充其量是不可靠的,因此获取整个网站并通过MCP提供服务真的很有用。SiteMCP可以说是向本地人工智能助理提供文档的最早、最实用的方法之一。
此后,景观发生了显著变化。MCP本身经历了一段快速增长期,随后进行了调整,社区集中在更简单、更高效的静态文档替代方案上:将文档作为可下载的Markdown文件发布,通过npm包分发,或者作为最后的手段回到网络搜索。在我看来,使用MCP来提供静态文档已经成为一种反模式——开销根本不值得。我在博客上对此进行了详细的描述:
在SiteMCP首次发布一年后,我决定将其存档。如果你需要向人工智能助手提供文档,请按照我上面博客文章中的指导,尽可能静态地获取文档。
______________________________________________________________________
](https://npmjs.com/package/sitemcp) ](https://tanstack.com/stats/npm?packageGroups=%5B%7B%22packages%22:%5B%7B%22name%22:%22sitemcp%22%7D%5D%7D%5D&range=30-days&transform=none&binType=daily&showDataMode=all&height=400)

获取整个站点并将其用作MCP服务器
https://github.com/user-attachments/assets/ebe2d7c6-4ddc-4a37-8e1e-d80fac49d8ae
Demo in Japanese
https://github.com/user-attachments/assets/24288140-be2a-416c-9e7c-c49be056a373
\[!注意\]
安装
一次性使用(从以下选项中选择一项):
bunx sitemcp
npx sitemcp
pnpx sitemcp全局安装(选择以下选项之一):
bun i -g sitemcp
npm i -g sitemcp
pnpm i -g sitemcp用法
sitemcp https://daisyui.com
# or better concurrency
sitemcp https://daisyui.com --concurrency 10工具名称策略
使用 -t, --tool-name-strategy 要指定工具名称策略,它将用作MCP服务器名称(默认值: domain). 这将用作MCP服务器名称。
sitemcp https://vite.dev -t domain # indexOfVite / getDocumentOfVite
sitemcp https://react-tweet.vercel.app/ -t subdomain # indexOfReactTweet / getDocumentOfReactTweet
sitemcp https://ryoppippi.github.io/vite-plugin-favicons/ -t pathname # indexOfVitePluginFavicons / getDocumentOfVitePluginFavicons内容的最大长度
使用 -l, --max-length 要指定内容的最大长度,默认值为 2000 字符。 这对于内容较长的网站(如博客或文档)很有用。 可接受的内容长度取决于您使用的MCP客户端,因此请查看您的MCP客户端的文档以了解更多详细信息。 如果您有任何问题,也欢迎打开一个问题。
sitemcp https://vite.dev -l 10000匹配特定页面
使用 -m, --match 标记以指定要获取的页面:
sitemcp https://vite.dev -m "/blog/**" -m "/guide/**"匹配模式是根据目标页面的路径名进行测试的,由micromatch提供支持,您可以查看所有支持的 匹配特征.
内容选择器
我们使用 mozilla/可读性 从网页中提取可读内容,但在某些页面上,它可能会返回不相关的内容,在这种情况下,您可以指定一个CSS选择器,以便我们知道在哪里可以找到可读内容:
sitemcp https://vite.dev --content-selector ".content"如何配置MCP客户端
您可以从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。
