SnapRender
Hosted MCP server, 11 tools

Give LibreChat eyes on the web

Add the hosted SnapRender MCP server to a self-hosted LibreChat instance in librechat.yaml. Each user signs in with OAuth, or you share one API key or let users enter their own.

200 renders a month free, no card. Sign-in happens inside LibreChat the first time it uses the server.

Server URL: https://app.snap-render.com/mcp

Set it up (recommended: sign in with OAuth)

LibreChat admins add MCP servers in librechat.yaml. With OAuth, each user signs in to their own SnapRender account, and LibreChat registers itself with SnapRender automatically.

  1. 1Add the snippet under mcpServers in librechat.yaml and restart LibreChat.
  2. 2Each user signs in to SnapRender when LibreChat asks. The callback goes to https://<your-domain>/api/mcp/snaprender/oauth/callback, which needs no setup on the SnapRender side.
  3. 3Enable SnapRender in a chat and ask for a screenshot.
librechat.yaml
mcpServers:
  snaprender:
    type: streamable-http
    url: https://app.snap-render.com/mcp
    requiresOAuth: true

Check it worked: After the restart, enable SnapRender in a chat and ask for a screenshot. If the connection fails, the LibreChat server log shows the MCP error.

With an API key instead

To skip the sign-in, use an API key. With source "user", each user enters their own key in LibreChat; with source "admin", everyone shares the key from your environment. Get a key from your SnapRender dashboard.

librechat.yaml (each user enters a key)
mcpServers:
  snaprender:
    type: streamable-http
    url: https://app.snap-render.com/mcp
    requiresOAuth: false
    apiKey:
      source: user
      authorization_type: bearer
librechat.yaml (one shared key)
mcpServers:
  snaprender:
    type: streamable-http
    url: https://app.snap-render.com/mcp
    requiresOAuth: false
    apiKey:
      source: admin
      key: "${SNAPRENDER_API_KEY}"
      authorization_type: bearer

Or run the server locally

Runs the open-source server from npm on the LibreChat host. Replace YOUR_API_KEY with the key from your SnapRender dashboard. The package is snaprender-mcp on npm.

librechat.yaml
mcpServers:
  snaprender:
    type: stdio
    command: npx
    args: ["-y", "snaprender-mcp"]
    env:
      SNAPRENDER_API_KEY: YOUR_API_KEY

What LibreChat can do with it

take_screenshot

Capture any URL, HTML or Markdown as PNG, JPEG, WebP or PDF, full page or by device. Inline image by default, or an attached file with as_file

extract_content

Read a page as markdown, text, article, links or metadata

batch_screenshots

Capture up to 50 URLs in one job

get_batch_status

Check a batch and get its download links

sign_screenshot_url

Create a shareable capture URL that does not expose your key

check_screenshot_cache

See whether a capture is cached, without spending quota

get_usage

Show renders used and left this month

list_webhooks

List your webhooks

create_webhook

Get notified when batches finish

delete_webhook

Remove a webhook

test_webhook

Send a test delivery

Prompts to try

  • "Take a full-page screenshot of https://example.com and describe the layout."
  • "Read https://example.com/blog/latest as markdown and summarize it in five bullet points."
  • "Compare https://example.com on desktop and iPhone and list what changes on mobile."

SnapRender renders public pages from its own servers, with ads and cookie banners removed. Pages behind a login and localhost are out of reach; use a preview deployment or a tunnel for local work.

Questions

Can LibreChat take screenshots of websites?+

Yes, with an MCP server that provides a screenshot tool. With SnapRender added to librechat.yaml, any model in LibreChat that can call tools can capture and read web pages.

Should I use OAuth or a shared API key?+

OAuth gives each user their own SnapRender account and quota, with no keys to manage. A shared admin key is simpler for a small team, but every capture counts against one account.

Other clients

Checked against www.librechat.ai in November 2026.

200 free renders a month to start

No card. Every tool on every plan.