
ScreenshotAPI
io.github.Screenshot-API由 GitHub 账号 Screenshot-API 发布v1.0.2更新于 Oct 29, 2026
Website screenshots, URL/HTML to PDF, scrolling videos, and web scraping via ScreenshotAPI.
发布方自己的服务:screenshot.com.ar
概览
ScreenshotAPI 官方 MCP 服务器,让助手截取网页截图、把网址或 HTML 转成 PDF、录制滚动视频、抓取渲染后的页面内容,并批量截图。
- 可以做什么
- 对网址或原始 HTML 截图,支持整页、元素、区域、多尺寸、高清和深色模式,返回托管链接并内联显示图片
- 把网址或原始 HTML 转为 PDF,可设置纸张格式、方向、页码范围与打印背景
- 抓取经 JavaScript 渲染的页面,输出 Markdown、纯文本、HTML 或图片链接列表,并在同一请求中截图
- 把页面录制为滚动或静态视频,格式可选 MP4、WebM 或 GIF
- 用网址列表或 CSV 提交批量截图任务,查询任务进度并下载结果
- 通过视口、等待时机、注入 CSS/JS、移除元素、拦截请求、地理位置、代理和缓存等选项调整渲染
- 适用场景
- 适合需要让助手查看网页真实渲染效果、把页面存档为图片或 PDF、从依赖 JavaScript 的网站提取可读内容,或一次性截取大量网址而无需自己写 API 代码的场景。
- 运行要求
- 通过 npx 以 stdio 在本地运行,需要 Node.js 18 或更高版本以及 npx。需要 ScreenshotAPI 账号和 API 密钥,通过环境变量 SCREENSHOTAPI_TOKEN 提供。可选环境变量 SCREENSHOTAPI_REQUEST_TIMEOUT_MS 和 SCREENSHOTAPI_MAX_INLINE_IMAGE_BYTES 用于调整超时和内联图片大小。需要能访问 ScreenshotAPI 服务的网络。
安装
在 SourceWeft 中
- 打开 控制台中的 ScreenshotAPI,将其添加到工作区。
- 为需要使用其工具的对话启用该服务。
Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。
其他 MCP 客户端
参照 仓库 中的启动说明。
README
ScreenshotAPI MCP Server
[npm version] [GitHub] [Node.js] [License]
Official MCP server for ScreenshotAPI. It gives your AI assistant 8 tools for website screenshots, URL and HTML to PDF, scrolling videos, JavaScript-aware web scraping (Markdown, text, HTML), and bulk captures. You ask in plain English and the server makes the API calls. Your assistant also gets the screenshot back as an image, so it can see the page it captured.
Works with Claude Desktop, Claude Code, Cursor, Windsurf, VS Code, Cline, Codex, and any other MCP-compatible client.
Quick Start
-
Sign up for ScreenshotAPI and copy your API key from the dashboard.
-
Cursor users can install in one click:
-
Everyone else: add this to your MCP client config (see Install by Client for the exact file path):
-
Restart your client.
-
Test it: ask "Take a screenshot of https://example.com"
Table of Contents
- Quick Start
- Install by Client
- Verify It Works
- Tool Reference
- Prompt Examples
- Error Codes
- How It Works
- Environment Variables
- Building from Source
- Troubleshooting
- Links
- License
Install by Client
Requirements
- Node.js 18 or later
npxavailable in your terminal- A ScreenshotAPI API key (sign up)
Claude Desktop
Add to claude_desktop_config.json (Settings → Developer → Edit Config):
Restart Claude Desktop after saving.
Claude Code
Start a new Claude Code session after adding the server.
Cursor
One-click install:
Or add to .cursor/mcp.json manually:
Restart Cursor after saving.
Windsurf
Add to ~/.codeium/windsurf/mcp_config.json:
Restart Windsurf after saving.
VS Code / GitHub Copilot
Add to your VS Code settings.json:
Restart VS Code after saving.
Cline
Open MCP Servers panel → Configure → Advanced MCP Settings. Add to cline_mcp_settings.json:
Restart Cline after saving.
Codex CLI
Start a new Codex session after adding the server.
Any Other MCP Client
Use this config:
Verify It Works
Try these after setup:
Tool Reference
All 8 tools wrap the ScreenshotAPI REST API. The render tools (take_screenshot, generate_pdf, scrape_page, record_scrolling_video) call GET https://shot.screenshotapi.net/v3/screenshot with output=json and share the page preparation options below. Each takes either url or custom_html.
Shared render options
take_screenshot
Captures a page as an image and returns the hosted image URL. The image is also returned inline so the assistant can see it. Full-page captures are the exception, since they are usually too tall to view; pass include_image=true to get them inline anyway.
Plus all shared render options.
generate_pdf
Converts a URL or raw HTML to PDF and returns the hosted PDF URL. With no format (and no width/height), the whole page becomes one continuous PDF page.
Plus all shared render options.
scrape_page
Renders the page in a real browser, so JavaScript runs first, then extracts its content. The server downloads the extracted files and returns their contents inline. A screenshot is captured in the same request.
Plus viewport, timing, page manipulation, blocking, and emulation options.
record_scrolling_video
Records the browser scrolling down a page and returns the hosted video URL.
Plus viewport, timing, page manipulation, blocking, and emulation options.
bulk_screenshots
POST https://api.screenshotapi.net/v1/bulk/json submits up to 50 URLs as one job. Paid plans only.
bulk_screenshots_csv
POST https://api.screenshotapi.net/v1/bulk/csv uploads a CSV with a url column. Any other column is a render option for that row. Paid plans only.
get_bulk_status
GET https://api.screenshotapi.net/v1/bulk/csv/status returns percent_complete, successful_urls, and failed_urls for a job.
download_bulk_results
GET https://api.screenshotapi.net/v1/bulk/csv/download returns one row per URL with url, status, screenshot, and error_message.
Prompt Examples
Screenshots
- Take a screenshot of https://linear.app
- Screenshot https://github.com on a 390px-wide mobile viewport in dark mode.
- Capture the full page of https://vercel.com/pricing with ads and cookie banners blocked.
- Grab just the pricing table on https://example.com/pricing (selector
#pricing). - Screenshot our staging site and blur anything with the class
.user-email. - Show me how https://www.bbc.com looks from Germany in German.
PDFs
- Convert https://example.com/report to an A4 landscape PDF and save it to ./report.pdf.
- Turn this HTML invoice into a Letter-size PDF.
- Export only pages 2-4 of https://docs.example.com/guide as a PDF.
Scraping
- Read https://react.dev/learn and give me the key points.
- Get the rendered HTML of https://example.com after JavaScript runs.
- List every image URL on https://unsplash.com.
Video
- Record a slow scrolling MP4 of https://stripe.com that scrolls back to the top.
- Make a scrolling GIF of our landing page at desktop and mobile sizes.
Bulk
- Screenshot these 20 URLs at 1440x900 with cookie banners hidden.
- What's the status of my bulk job, and download the results when it's done.
Error Codes
Tool calls never crash the server. Upstream errors come back as structured tool results with error, code, message, and a guidance field, so the client can explain the problem and suggest a fix.
Example error result for a missing URL:
See the full list in the ScreenshotAPI error docs.
How It Works
This is a stdio MCP server that wraps the ScreenshotAPI REST API.
At runtime:
- Your MCP client starts the server process via
npx. - The client reads the tool list.
- When a prompt matches a tool, the client calls it.
- The server validates inputs, calls ScreenshotAPI with
output=json, and returns structured JSON with the hosted file URL. - For screenshots, the server also downloads the image and returns it inline. For scraping, it downloads the extracted Markdown, text, or HTML and returns the contents.
The API key is read from the environment on each call and sent as the token parameter. The server strips the token from every response before it reaches the model. Requests with very long values, such as large custom_html, are sent as a POST with a JSON body to avoid URL length limits.
Environment Variables
Building from Source
Run it directly:
Inspect with the MCP Inspector:
Troubleshooting
Client uses an old tool list after updating: Restart the client and confirm it loaded the latest npm version.
401 token_required: SCREENSHOTAPI_TOKEN is not set in your MCP client config's env block.
401 invalid_token: The key is wrong, or it was rolled in the dashboard. Copy the current key from the dashboard.
Screenshot comes back as a URL but not an image: The image is larger than SCREENSHOTAPI_MAX_INLINE_IMAGE_BYTES, or it was a full_page capture. Use thumbnail_width, jpg with a lower image_quality, or set include_image=true.
Blank or half-loaded pages: Add delay (e.g. 3000), use wait_for_event=networkidle, or set lazy_load=true for pages with lazy images.
Cookie banners or popups in the shot: Pass block: ["cookie_banners", "ads", "chat_widgets"], or remove specific elements with remove_selector.
CAPTCHA or bot blocks: Route the request through a residential proxy. See the proxy docs.
Timeouts: Slow pages may need a higher timeout (API side, default 100000 ms) and a higher SCREENSHOTAPI_REQUEST_TIMEOUT_MS (this server, default 180000 ms). Some MCP clients also have their own tool-call timeout.
Links
License
来源:README.md,提交 33c9b41
工具
0版本历史
1- v1.0.2最新Oct 29, 2026
评分
已满足适用检查项的 50%
该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。
- 近 30 天内可连通25 分
请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。
- 已声明认证方式10 分
请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。
- 已列出工具15 分
请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。
- 描述必需15 分
- 图标10 分
- 文档15 分
- 许可证10 分
其他 Screenshot 集成
screenshot.com.ar
ar.com.screenshot官方发布者
远程 MCP 服务器,用真实 Chrome 浏览器渲染任意公开网页,并返回截图或干净的 Markdown。
Website Screenshot and PDF (Apify actor)
dev.pages.website-screenshot-pdf
Website Screenshot and PDF (Apify actor) 的托管 MCP 服务,由 website-screenshot-pdf.pages.dev 发布;需要凭据;Streamable HTTP。

x402-screenshot-mcp
由 GitHub 账号 6mickswagger9 发布
本地 stdio MCP 服务器,为 AI 代理提供 x402 付费截图 API,通过 CDP facilitator 在 Base 上用 USDC 结算。
Website Screenshot & PDF
由 GitHub 账号 Devdeep-Borisagar 发布
远程 Apify MCP 服务器,让助手把任意网站或自有 HTML 截取为 PNG、JPEG、WebP、PDF 或滚动 MP4/GIF,并返回公开文件链接。

Screenshots MCP by InsightfulPipe
com.insightfulpipe
托管式 MCP 服务器,让助手截取网页的整页、视口、移动端和桌面端截图,并返回带签名的公开链接。