SnapSender
Capture any website as PNG, JPEG, WebP, or PDF with a single tool call.
Documentation
SnapRender Integrations
Official 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.
Remote MCP Server (recommended)
SnapRender runs a hosted MCP server. Connect from any MCP client with nothing to install:
https://app.snap-render.com/mcp
- Transport: Streamable HTTP
- Sign in: OAuth 2.0 (the client opens a SnapRender sign-in window; Google, GitHub or email), or an API key in the
Authorization: BearerorX-API-Keyheader - Tools (11): capture, cache check, usage, signed links, content extraction, batches and webhooks (full list below)
- Prompts:
screenshot_website,compare_devices - Free plan: 200 screenshots a month, no credit card
- Directory listing: SnapRender on Glama (health-checked, tool quality graded)
Claude (claude.ai and Claude Desktop)
Open 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.
Cursor, VS Code, Windsurf and other clients
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"
}
}
}
}
Any MCP client (curl)
# 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.
Smithery
Install via Smithery for automatic setup with any MCP client.
Local MCP Server (npm)
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 vs Local
| 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 |
MCP Tools
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 |
Agent Framework Integrations
| 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) |
Other Integrations
| 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 |
SDKs
# Node.js
npm install snaprender
# Python
pip install snaprender
Direct API
curl "https://app.snap-render.com/v1/screenshot?url=https://example.com" \
-H "X-API-Key: sk_live_your_key_here" \
-o screenshot.png
Get an API Key
Sign up free at snap-render.com: 200 screenshots a month, no credit card required.
Links
- Documentation
- Remote MCP Server: Streamable HTTP endpoint
- MCP Connector on Glama
- MCP Server on npm (
npx snaprender-mcp) - MCP Server on Smithery
- Node.js SDK (
npm install snaprender) - Python SDK (
pip install snaprender) - LangChain Python Tool (
pip install langchain-snaprender) - LangChain.js Tool (
npm install langchain-snaprender) - CrewAI Tool (
pip install crewai-snaprender) - AutoGen Tool (
pip install autogen-ext-snaprender) - n8n Community Node (
npm install n8n-nodes-snaprender) - OpenAPI Spec
- Postman Collection
License
MIT