{
  "markdown": "# SnapRender Integrations\n\n[![smithery badge](https://smithery.ai/badge/snaprender/snaprender)](https://smithery.ai/server/snaprender/snaprender)\n[![npm MCP](https://img.shields.io/npm/v/snaprender-mcp?label=MCP%20Server)](https://www.npmjs.com/package/snaprender-mcp)\n[![npm SDK](https://img.shields.io/npm/v/snaprender?label=Node.js%20SDK)](https://www.npmjs.com/package/snaprender)\n[![PyPI SDK](https://img.shields.io/pypi/v/snaprender?label=Python%20SDK)](https://pypi.org/project/snaprender/)\n[![License: MIT](https://img.shields.io/badge/License-MIT-blue.svg)](./LICENSE)\n[![Available on CodeGuilds](https://img.shields.io/badge/Available_on-CodeGuilds-6366f1)](https://codeguilds.dev/packages/snaprender-integrations)\n\nOfficial integrations for [SnapRender Screenshot API](https://snap-render.com) — capture screenshots of any website as PNG, JPEG, WebP, or PDF.\n\n## Remote MCP Server\n\nSnapRender runs a hosted MCP server — connect from any MCP client with zero install:\n\n```\nhttps://app.snap-render.com/mcp\n```\n\n- **Transport:** [Streamable HTTP](https://modelcontextprotocol.io/specification/2025-03-26/basic/transports#streamable-http) (MCP spec 2025-03-26)\n- **Auth:** `X-API-Key` header or `Authorization: Bearer` header\n- **Tools:** `take_screenshot`, `check_screenshot_cache`, `get_usage`\n- **Prompts:** `screenshot_website`, `compare_devices`\n\n### Claude Desktop (remote — recommended)\n\n```json\n{\n  \"mcpServers\": {\n    \"snaprender\": {\n      \"type\": \"streamable-http\",\n      \"url\": \"https://app.snap-render.com/mcp\",\n      \"headers\": {\n        \"Authorization\": \"Bearer sk_live_your_key_here\"\n      }\n    }\n  }\n}\n```\n\n### Any MCP client (curl)\n\n```bash\n# Initialize a session\ncurl -X POST https://app.snap-render.com/mcp \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Accept: application/json, text/event-stream\" \\\n  -H \"X-API-Key: sk_live_your_key_here\" \\\n  -d '{\"jsonrpc\":\"2.0\",\"id\":1,\"method\":\"initialize\",\"params\":{\"protocolVersion\":\"2025-03-26\",\"capabilities\":{},\"clientInfo\":{\"name\":\"test\",\"version\":\"1.0\"}}}'\n```\n\nThe server returns an `Mcp-Session-Id` header — include it in subsequent requests to reuse the session.\n\n### Smithery\n\nInstall via [Smithery](https://smithery.ai/server/snaprender/snaprender) for automatic setup with any MCP client.\n\n## Local MCP Server (npm)\n\nIf you prefer running locally via stdio transport:\n\n```json\n{\n  \"mcpServers\": {\n    \"snaprender\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"snaprender-mcp\"],\n      \"env\": {\n        \"SNAPRENDER_API_KEY\": \"sk_live_your_key_here\"\n      }\n    }\n  }\n}\n```\n\nSee [mcp-server/](./mcp-server/) for full documentation.\n\n### Remote vs Local\n\n| | Remote (hosted) | Local (`npx`) |\n|---|---|---|\n| **Install** | None — just an HTTPS URL | Requires Node.js + npx |\n| **Transport** | Streamable HTTP | stdio |\n| **Use case** | Any MCP client, Smithery, web apps | Claude Desktop, Claude Code |\n\n## MCP Tools\n\n### `take_screenshot`\n\nCapture a screenshot of any website. Returns the image as PNG, JPEG, WebP, or PDF.\n\n| Parameter | Type | Required | Description |\n|-----------|------|----------|-------------|\n| `url` | string | Yes | URL to capture (http:// or https://) |\n| `format` | string | No | `png`, `jpeg`, `webp`, or `pdf` (default: `png`) |\n| `width` | integer | No | Viewport width 320-3840 (default: 1280) |\n| `height` | integer | No | Viewport height 200-10000 (default: 800) |\n| `full_page` | boolean | No | Capture entire scrollable page |\n| `device` | string | No | `iphone_14`, `iphone_15_pro`, `pixel_7`, `ipad_pro`, `macbook_pro` |\n| `dark_mode` | boolean | No | Enable dark mode |\n| `block_ads` | boolean | No | Block ads (default: true) |\n| `block_cookie_banners` | boolean | No | Remove cookie banners (default: true) |\n| `quality` | integer | No | JPEG/WebP quality 1-100 (default: 90) |\n| `delay` | integer | No | Wait ms after page load (default: 0) |\n| `hide_selectors` | string | No | Comma-separated CSS selectors to hide |\n| `click_selector` | string | No | CSS selector to click before capture |\n\n### `check_screenshot_cache`\n\nCheck if a screenshot is cached without capturing. Does not count against quota.\n\n| Parameter | Type | Required | Description |\n|-----------|------|----------|-------------|\n| `url` | string | Yes | URL to check |\n| `format` | string | No | Output format (default: `png`) |\n\n### `get_usage`\n\nGet screenshot usage statistics.\n\n| Parameter | Type | Required | Description |\n|-----------|------|----------|-------------|\n| `month` | string | No | Month in `YYYY-MM` format (default: current month) |\n\n## Agent Framework Integrations\n\n| Framework | Directory | Description |\n|-----------|-----------|-------------|\n| [LangChain Python](./langchain/) | `langchain/` | `@tool` decorated functions for LangChain / LangGraph agents ([PyPI](https://pypi.org/project/langchain-snaprender/)) |\n| [LangChain.js](./langchain-js/) | `langchain-js/` | `StructuredTool` classes for LangChain.js agents ([npm](https://www.npmjs.com/package/langchain-snaprender)) |\n| [CrewAI](./crewai/) | `crewai/` | `BaseTool` subclasses for CrewAI agents ([PyPI](https://pypi.org/project/crewai-snaprender/)) |\n| [AutoGen](./autogen/) | `autogen/` | `FunctionTool` wrappers for Microsoft AutoGen agents ([PyPI](https://pypi.org/project/autogen-ext-snaprender/)) |\n| [n8n](https://github.com/User0856/n8n-nodes-snaprender) | Separate repo | Community node for n8n workflows ([npm](https://www.npmjs.com/package/n8n-nodes-snaprender)) |\n\n## Other Integrations\n\n| Integration | Description | Setup Time |\n|------------|-------------|------------|\n| [OpenClaw Skill](./openclaw/) | Skill file for OpenClaw AI agent | 5 min |\n| [ChatGPT Actions](./chatgpt-actions/) | OpenAPI spec for Custom GPTs and OpenAI function calling | 5 min |\n| [Postman Collection](./postman/) | Pre-built API requests for Postman | 1 min |\n\n## SDKs\n\n```bash\n# Node.js\nnpm install snaprender\n\n# Python\npip install snaprender\n```\n\n## Direct API\n\n```bash\ncurl \"https://app.snap-render.com/v1/screenshot?url=https://example.com\" \\\n  -H \"X-API-Key: sk_live_your_key_here\" \\\n  -o screenshot.png\n```\n\n## Get an API Key\n\nSign up free at [snap-render.com](https://snap-render.com/auth/signup) — 200 screenshots/month, no credit card required.\n\n## Links\n\n- [Documentation](https://snap-render.com)\n- [Remote MCP Server](https://app.snap-render.com/mcp) — Streamable HTTP endpoint\n- [MCP Server on npm](https://www.npmjs.com/package/snaprender-mcp) (`npx snaprender-mcp`)\n- [MCP Server on Smithery](https://smithery.ai/server/snaprender/snaprender)\n- [Node.js SDK](https://www.npmjs.com/package/snaprender) (`npm install snaprender`)\n- [Python SDK](https://pypi.org/project/snaprender/) (`pip install snaprender`)\n- [LangChain Python Tool](https://pypi.org/project/langchain-snaprender/) (`pip install langchain-snaprender`)\n- [LangChain.js Tool](https://www.npmjs.com/package/langchain-snaprender) (`npm install langchain-snaprender`)\n- [CrewAI Tool](https://pypi.org/project/crewai-snaprender/) (`pip install crewai-snaprender`)\n- [AutoGen Tool](https://pypi.org/project/autogen-ext-snaprender/) (`pip install autogen-ext-snaprender`)\n- [n8n Community Node](https://www.npmjs.com/package/n8n-nodes-snaprender) (`npm install n8n-nodes-snaprender`)\n- [OpenAPI Spec](./chatgpt-actions/openapi.json)\n- [Postman Collection](./postman/snaprender-postman-collection.json)\n\n## License\n\nMIT\n",
  "bytes": 7357,
  "sha": "a72ca7a54ccfc6aeb25ac9241b573b6fbdfefad4ff33b6ca51c13e2a648d6312",
  "repo_slug": "user0856/snaprender-integrations",
  "fonte": "repo",
  "truncated": false,
  "api": "https://agentalog.com/api/listings/mcp_io_github_user0856_snaprender_9905f19f/readme"
}