
Connects Claude to the SnapRender screenshot API for capturing web pages as PNG, JPEG, WebP, or PDF. Exposes three tools: take_screenshot with options for viewport size, full page capture, device emulation, dark mode, and ad blocking; check_screenshot_cache to verify cached renders; and get_usage for quota tracking. Available as both a hosted streamable HTTP endpoint and a local stdio server via npx. Also ships with LangChain, CrewAI, and AutoGen integrations if you're building agents in Python or JavaScript. Free tier includes 200 screenshots per month. Useful when you need visual snapshots of URLs for analysis, comparison, or archival without spinning up your own headless browser infrastructure.
Public tool metadata for what this MCP can expose to an agent.
take_screenshotCapture a screenshot of any website. Returns the image as PNG, JPEG, WebP, or PDF. Supports device emulation (iPhone, Pixel, iPad), dark mode, ad blocking, cookie banner removal, full-page capture, and custom viewports.13 paramsCapture a screenshot of any website. Returns the image as PNG, JPEG, WebP, or PDF. Supports device emulation (iPhone, Pixel, iPad), dark mode, ad blocking, cookie banner removal, full-page capture, and custom viewports.
block_adsbooleanblock_cookie_bannersbooleanclick_selectorstringdark_modebooleandelayintegerdevicestringiphone_14 · iphone_15_pro · pixel_7 · ipad_pro · macbook_proformatstringpng · jpeg · webp · pdffull_pagebooleanheightintegerhide_selectorsstringqualityintegerurlstringwidthintegercheck_screenshot_cacheCheck if a screenshot is already cached without capturing a new one. Does not count against your quota.2 paramsCheck if a screenshot is already cached without capturing a new one. Does not count against your quota.
formatstringpng · jpeg · webp · pdfurlstringget_usageGet current month's screenshot usage statistics including screenshots used, limit, and remaining quota.1 paramsGet current month's screenshot usage statistics including screenshots used, limit, and remaining quota.
monthstringOfficial integrations for the SnapRender Screenshot API: give AI agents eyes. Capture any public web page as PNG, JPEG, WebP or PDF, or read it as clean markdown.
SnapRender runs a hosted MCP server. Connect from any MCP client with nothing to install:
https://app.snap-render.com/mcp
Authorization: Bearer or X-API-Key headerscreenshot_website, compare_devicesOpen Customize, then Connectors, click + Add, then Add custom connector, and paste https://app.snap-render.com/mcp. Claude opens a SnapRender sign-in window; approve it and the tools are ready. Step-by-step guide: snap-render.com/claude.
Setup pages for each client, with one-click install where the client supports it: snap-render.com/ai-connectors.
A client that takes headers instead of OAuth:
{
"mcpServers": {
"snaprender": {
"url": "https://app.snap-render.com/mcp",
"headers": {
"Authorization": "Bearer sk_live_your_key_here"
}
}
}
}
# Initialize a session
curl -X POST https://app.snap-render.com/mcp \
-H "Content-Type: application/json" \
-H "Accept: application/json, text/event-stream" \
-H "X-API-Key: sk_live_your_key_here" \
-d '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2025-03-26","capabilities":{},"clientInfo":{"name":"test","version":"1.0"}}}'
The server returns an Mcp-Session-Id header: include it in later requests to reuse the session.
Install via Smithery for automatic setup with any MCP client.
If you prefer running locally via stdio transport:
{
"mcpServers": {
"snaprender": {
"command": "npx",
"args": ["-y", "snaprender-mcp"],
"env": {
"SNAPRENDER_API_KEY": "sk_live_your_key_here"
}
}
}
}
See mcp-server/ for full documentation.
| Remote (hosted) | Local (npx) | |
|---|---|---|
| Install | None, just an HTTPS URL | Requires Node.js + npx |
| Transport | Streamable HTTP | stdio |
| Sign in | OAuth or API key | API key (SNAPRENDER_API_KEY) |
| Use case | Claude, ChatGPT, Cursor, any MCP client | Clients that only run local servers |
The hosted server and the npm package expose the same 11 tools. Parameters are documented in each tool's schema and in the API docs.
| Tool | What it does | Cost |
|---|---|---|
take_screenshot | Capture a URL as PNG, JPEG, WebP or PDF: device presets, full page, dark mode, ad and cookie banner removal, hide or click selectors | 1 capture (cached copies free) |
check_screenshot_cache | Check whether a capture with these options is already cached | Free |
get_usage | Captures used and left this month, the limit and the reset date | Free |
sign_screenshot_url | Create a signed link that renders a screenshot when opened, no API key needed | 1 capture when opened |
extract_content | Read a page as markdown, text, HTML, article, links or metadata | 1 capture (failures free) |
batch_screenshots | Capture up to 50 URLs in one background job | 1 capture per URL (failures refunded) |
get_batch_status | Poll a batch job and get its download links | Free |
list_webhooks | List webhook subscriptions | Free |
create_webhook | Get notified when a batch finishes, the quota runs low, or a scheduled capture changes | Free |
delete_webhook | Delete a webhook subscription | Free |
test_webhook | Send a test payload to a webhook | Free |
| Framework | Directory | Description |
|---|---|---|
| LangChain Python | langchain/ | @tool decorated functions for LangChain / LangGraph agents (PyPI) |
| LangChain.js | langchain-js/ | StructuredTool classes for LangChain.js agents (npm) |
| CrewAI | crewai/ | BaseTool subclasses for CrewAI agents (PyPI) |
| AutoGen | autogen/ | FunctionTool wrappers for Microsoft AutoGen agents (PyPI) |
| n8n | Separate repo | Community node for n8n workflows (npm) |
| Integration | Description | Setup Time |
|---|---|---|
| OpenClaw Skill | Skill file for OpenClaw AI agent | 5 min |
| ChatGPT Actions | OpenAPI spec for Custom GPTs and OpenAI function calling | 5 min |
| Postman Collection | Pre-built API requests for Postman | 1 min |
# Node.js
npm install snaprender
# Python
pip install snaprender
curl "https://app.snap-render.com/v1/screenshot?url=https://example.com" \
-H "X-API-Key: sk_live_your_key_here" \
-o screenshot.png
Sign up free at snap-render.com: 200 screenshots a month, no credit card required.
npx snaprender-mcp)npm install snaprender)pip install snaprender)pip install langchain-snaprender)npm install langchain-snaprender)pip install crewai-snaprender)pip install autogen-ext-snaprender)npm install n8n-nodes-snaprender)MIT
SNAPRENDER_API_KEYYour SnapRender API key (starts with sk_live_). Get one free at https://snap-render.com/auth/signup