关于 Site Cloner MCP Server
Site Cloner MCP Server 为大模型和编码 Agent 提供网页获取与资源处理工具。它可分析页面结构、沿站点链接生成站点地图,并将资源下载到分类整理的本地目录。
主要功能
- 01获取网页 HTML
- 02提取 CSS、JavaScript、图片和字体链接
- 03将资源下载到本地目录
- 04解析 CSS 中引用的资源
- 05按可配置深度生成站点地图
- 06分析页面结构
适用场景
- 01收集资源以制作本地网站副本
- 02从网站 URL 开始梳理页面
- 03检查页面结构及其关联资源
MCP 相关
该 MCP 服务提供获取网页、提取和下载资源、解析 CSS、生成站点地图及分析页面结构的工具。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
Site Cloner MCP 服务
这是一个 MCP(Model Context Protocol)服务,旨在通过提供获取、分析和下载网站资源的工具,帮助大模型(如 Claude)克隆网站。
功能
- 从任意 URL 获取 HTML 内容
- 从 HTML 内容中提取资源(CSS、JavaScript、图片、字体等)
- 将单个资源下载到本地目录
- 解析 CSS 文件以提取链接的资源(字体、图片)
- 创建网站地图
- 分析页面结构和布局
要求
- 系统已安装 Docker
用法
使用 Docker 运行
-
构建 Docker 镜像:
docker build -t site-cloner-mcp . -
运行容器:
docker run -i --rm site-cloner-mcp
如需持久保存下载的文件,可以挂载卷:
docker run -i --rm -v $(pwd)/downloaded_sites:/app/downloaded_site site-cloner-mcp
连接到 Cursor
在 Cursor 中配置此 MCP 服务有两种方式:
1. 项目专属配置
在项目根目录中创建 .cursor/mcp.json 文件,内容如下:
{
"mcpServers": {
"site-cloner": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"site-cloner-mcp"
]
}
}
}
2. 全局配置
如需在 Cursor 中全局使用此 MCP 服务,请前往 Cursor Settings → MCP → Add new Global MCP Server,并添加以下配置:
{
"mcpServers": {
"site-cloner": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"site-cloner-mcp"
]
}
}
}
可用工具
1. fetch_page
获取网页的 HTML 内容。
Args:
url: The URL of the webpage to fetch
2. extract_assets
从 HTML 内容中提取资源链接。
Args:
url: The URL of the webpage (used for resolving relative URLs)
html_content: The HTML content to parse
3. download_asset
从 URL 下载资源,并将其保存到指定目录。
Args:
url: The URL of the asset to download
output_dir: The directory to save the asset to (default: downloaded_site)
4. parse_css_for_assets
解析 CSS 内容,以提取所引用资源(如字体和图片)的 URL。
Args:
css_url: The URL of the CSS file (used for resolving relative URLs)
css_content: The CSS content to parse (if None, it will be fetched from css_url)
5. create_site_map
从给定 URL 开始创建网站地图。
Args:
url: The starting URL to crawl
max_depth: Maximum depth to crawl (default: 1)
6. analyze_page_structure
分析 HTML 页面的结构并提取关键组成部分。
Args:
html_content: The HTML content to analyze
与 Claude 搭配使用示例
- 请 Claude 克隆网站:“请克隆 example.com 上的网站”
- Claude 将使用可用工具来:
- 获取 HTML 内容
- 提取资源
- 下载所需文件
- 分析结构
- 创建网站的本地副本
故障排查
Cursor 中未显示服务
- 重启 Cursor
- 检查配置文件语法
- 确保已安装 Docker 且运行正常:
docker --version - 查看 Cursor 的 MCP 日志,检查是否有错误:
Output→ 从下拉菜单中选择Cursor MCP
- 尝试手动运行服务以查看错误:
docker run -i --rm site-cloner-mcp
找不到模块错误
如果遇到“ModuleNotFoundError: No module named 'site_cloner'”错误:
- 检查 pyproject.toml 中的包名称是否正确
- 确保 Python 文件中的导入语句不包含 "src." 前缀
- 修改后重新构建 Docker 镜像:
docker build --no-cache -t site-cloner-mcp .
查看 Docker 日志
如需查看 Docker 日志中的错误:
docker logs $(docker ps -q --filter ancestor=site-cloner-mcp)
备注
- 服务会根据内容类型(html、css、js、images、fonts、videos、other),自动将下载的资源整理到子目录中
- 克隆网站时,请注意版权和服务条款的限制
- 某些网站可能会拦截自动化请求,此时可能需要调整代码中的 user agent 字符串
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。