About SnapRender
SnapRender provides screenshot and page-content capture for AI agents and MCP clients. Its hosted and local MCP servers expose tools for screenshots, extraction, batch jobs, and webhooks.
Key features
- 01Capture pages as PNG, JPEG, WebP, or PDF
- 02Extract page content as markdown or text
- 03Check screenshot cache and usage
- 04Run screenshot batches for up to 50 URLs
- 05Manage batch jobs and webhooks
Use cases
- 01Capture a public page in a chosen format
- 02Read article text and page metadata
- 03Process multiple URLs in a background batch
- 04Receive notifications when a batch finishes
MCP support
Exposes the same 11 tools through a hosted Streamable HTTP MCP server or a local npm server using stdio. The hosted endpoint supports OAuth 2.0 or API-key authentication.
Configuration
Remote servers need no local install. Pick your client, then copy the config or install in one click.
https://app.snap-render.com/mcpclaude mcp add --transport http com-snap-render-app-snap-render https://app.snap-render.com/mcp{"mcpServers":{"com-snap-render-app-snap-render":{"type":"http","url":"https://app.snap-render.com/mcp"}}}Open in Cursor{"servers":{"com-snap-render-app-snap-render":{"type":"http","url":"https://app.snap-render.com/mcp"}}}Open in VS Code{"mcpServers":{"com-snap-render-app-snap-render":{"type":"http","url":"https://app.snap-render.com/mcp"}}}{"mcpServers":{"com-snap-render-app-snap-render":{"serverUrl":"https://app.snap-render.com/mcp"}}}Run commands in a terminal; paste JSON into the client’s MCP config and restart. Servers that need sign-in will prompt on first connect.
Tools
Details
From the project READMESnapRender 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
Comments
New to MCP?
From what the protocol is to installing your first server, these answers cover most first questions.
An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.