关于 screenshotrun-mcp
screenshotrun-mcp 让 AI Agent 通过 ScreenshotRun 截取公开网页,并查看返回的图像。它提供页面、设备和渲染选项,也可查询 API 用量。
主要功能
- 01支持 PNG、JPEG、WebP 和 PDF
- 02桌面、手机和平板模拟
- 03整页与深色模式渲染
- 04屏蔽广告和 Cookie 横幅
- 05注入 CSS 和 JavaScript
- 06查询 API 配额
适用场景
- 01查看网页的视觉呈现
- 02比较手机与桌面布局
- 03截取深色模式下的整页
- 04查询剩余截图配额
MCP 相关
MCP 服务向 MCP 客户端提供网页截图和 API 用量查询工具。截图以 Base64 编码图像返回,供 Agent 分析。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
2收录的工具列表 · 更新于 5 天前
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| js | string | 否 | 截取前执行的自定义 JavaScript |
| css | string | 否 | 要注入到页面中的自定义 CSS |
| url | string | 是 | 要截取屏幕截图的页面 URL(必须以 http:// 或 https:// 开头) |
| delay | integer | 否 | 页面加载后、截取前的延迟时间(秒) |
| width | integer | 否 | 视口宽度(像素) |
| device | enum | 否 | 设备预设(会影响视口和 user agent)desktop | mobile | tablet |
| format | enum | 否 | 输出图像格式png | jpeg | webp | pdf |
| height | integer | 否 | 视口高度(像素) |
| retina | boolean | 否 | 以 2 倍分辨率(retina)截取 |
| quality | integer | 否 | JPEG/WebP 图像质量(1-100) |
| selector | string | 否 | 用于截取特定元素而非整个视口的 CSS 选择器 |
| block_ads | boolean | 否 | 截取时拦截广告 |
| dark_mode | boolean | 否 | 启用深色模式(prefers-color-scheme: dark) |
| full_page | boolean | 否 | 截取整个可滚动页面 |
| scroll_to | string | 否 | 在截取前滚动至可见区域的元素的 CSS 选择器 |
| block_cookies | boolean | 否 | 拦截 Cookie 同意对话框 |
| click_selector | string | 否 | 截取前要点击的元素的 CSS 选择器 |
| hide_selectors | array | 否 | 截取前要隐藏的元素的 CSS 选择器 |
详细介绍
screenshotrun-mcp
让你的 AI Agent 能够查看任意网页。适用于 ScreenshotRun 截图 API 的 MCP 服务。
功能
- 将任意公开网页截取为 PNG、JPEG、WebP 或 PDF
- 设备模拟——桌面、手机和平板视口
- 使用
prefers-color-scheme: dark渲染深色模式 - 自动滚动并截取整个页面
- 屏蔽广告和 Cookie 同意横幅
- 截图前注入自定义 CSS/JavaScript
- 使用 CSS 选择器定位特定元素
- 支持 Retina(2x)分辨率
- 监控 API 用量和剩余配额
快速开始
1. 获取 API 密钥
在 screenshotrun.com 注册并获取免费 API 密钥。
2. 配置你的 AI 客户端
Claude Desktop
添加到 Claude Desktop 配置文件(macOS 上为 ~/Library/Application Support/Claude/claude_desktop_config.json,Windows 上为 %APPDATA%\Claude\claude_desktop_config.json):
{
"mcpServers": {
"screenshotrun": {
"command": "npx",
"args": ["-y", "screenshotrun-mcp"],
"env": {
"SCREENSHOTRUN_API_KEY": "sr_live_your_key_here"
}
}
}
}
Claude Code
claude mcp add screenshotrun \
npx -y screenshotrun-mcp \
-e SCREENSHOTRUN_API_KEY=sr_live_your_key_here
Cursor
添加到项目中的 .cursor/mcp.json:
{
"mcpServers": {
"screenshotrun": {
"command": "npx",
"args": ["-y", "screenshotrun-mcp"],
"env": {
"SCREENSHOTRUN_API_KEY": "sr_live_your_key_here"
}
}
}
}
Windsurf
使用相同的 npx -y screenshotrun-mcp 命令添加到 Windsurf MCP 配置中,并设置 SCREENSHOTRUN_API_KEY 环境变量。
可用工具
take_screenshot
截取任意网页。以 Base64 编码的数据形式返回图像,供 AI Agent 分析和描述。
| 参数 | 类型 | 默认值 | 说明 |
|---|---|---|---|
url | string | 必填 | 要截图的 URL(必须包含 http:// 或 https://) |
format | png | jpeg | webp | pdf | png | 输出图像格式 |
width | number | 1280 | 视口宽度,单位为像素(320–3840) |
height | number | 800 | 视口高度,单位为像素(200–2160) |
full_page | boolean | false | 截取整个可滚动页面 |
quality | number | 80 | JPEG/WebP 图像质量(1–100) |
device | desktop | mobile | tablet | — | 设备预设(使用设备默认值覆盖宽度和高度) |
dark_mode | boolean | false | 启用深色模式渲染 |
block_ads | boolean | false | 截图时屏蔽广告 |
block_cookies | boolean | true | 屏蔽 Cookie 同意对话框 |
delay | number | 0 | 页面加载后、截图前的延迟秒数(0–10) |
retina | boolean | false | 以 2x 分辨率截图 |
css | string | — | 注入页面的自定义 CSS(最多 10KB) |
js | string | — | 截图前执行的自定义 JavaScript(最多 10KB) |
selector | string | — | 用于截取特定元素的 CSS 选择器 |
hide_selectors | string[] | — | 截图前要隐藏的元素的 CSS 选择器 |
click_selector | string | — | 截图前要点击的元素的 CSS 选择器 |
scroll_to | string | — | 要滚动到视口内的元素的 CSS 选择器 |
check_usage
查看当前计费周期的 ScreenshotRun API 用量。返回已使用的截图数量、剩余配额、用量百分比和剩余天数。
无需参数。
示例提示词
- “截取 screenshotrun.com 的屏幕截图”
- “在手机上以深色模式截取 snapshotarchive.com”
- “截取我的网站的整页屏幕截图,并描述你看到的内容”
- “以 JPEG 格式截取 screenshotrun.com 的 Retina 屏幕截图”
- “在平板上截取 snapshotarchive.com,并屏蔽广告”
- “使用 hide_selectors 隐藏 Cookie 横幅后截取我的网站”
- “查看我的 ScreenshotRun API 用量”
工作原理
- AI Agent 收到用户请求,其中涉及网页截图
- Agent 使用 URL 和选项调用
take_screenshot工具 - MCP 服务将请求发送到 ScreenshotRun API
- API 在真实浏览器中渲染页面并返回截图
- 图像以 base64 格式返回给 AI Agent,供其分析和描述
要求
- Node.js 18+
- ScreenshotRun API 密钥(免费获取)
ScreenshotRun 的其他项目
- SnapshotArchive — 通过可视化差异检测自动监控网站
- WatchCron — 为开发者提供 Cron 作业和心跳监控
许可证
MIT
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。