Hosted MCP server, 11 tools

Give Windsurf (Devin Desktop) eyes on the web

Windsurf became Devin Desktop in June 2026. Add the hosted SnapRender MCP server with devin mcp add or mcp_config.json, sign in through the browser, and the agent can screenshot any page.

200 renders a month free, no card. Sign-in happens inside Windsurf (Devin Desktop) the first time it uses the server.

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

Set it up (recommended: sign in with OAuth)

Devin Desktop, the successor to Windsurf, connects to remote HTTP servers and handles the OAuth sign-in.

  1. 1Run the command below, or add the snippet to ~/.config/devin/mcp_config.json.
  2. 2Sign in to SnapRender when prompted on first use, or run devin mcp login snaprender.
  3. 3Ask the agent for a screenshot.
Terminal
devin mcp add -s user snaprender https://app.snap-render.com/mcp
~/.config/devin/mcp_config.json
{
  "mcpServers": {
    "snaprender": { "url": "https://app.snap-render.com/mcp", "transport": "http" }
  }
}

Check it worked: devin mcp list shows the server; in the app, the MCP list shows it connected (or "Needs auth" until you sign in).

With an API key instead

Pass the key as a header; ${env:...} reads it from your environment. Get a key from your SnapRender dashboard.

~/.config/devin/mcp_config.json
{
  "mcpServers": {
    "snaprender": {
      "url": "https://app.snap-render.com/mcp",
      "transport": "http",
      "headers": { "Authorization": "Bearer ${env:SNAPRENDER_API_KEY}" }
    }
  }
}

Or run the server locally

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

~/.config/devin/mcp_config.json
{
  "mcpServers": {
    "snaprender": {
      "command": "npx",
      "args": ["-y", "snaprender-mcp"],
      "env": { "SNAPRENDER_API_KEY": "YOUR_API_KEY" }
    }
  }
}

What Windsurf (Devin Desktop) can do with it

take_screenshot

Capture any URL, HTML or Markdown as PNG, JPEG, WebP or PDF, full page or by device

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://stripe.com and tell me how the pricing section is laid out."
  • "Compare https://example.com on desktop and iPhone and list layout problems on mobile."
  • "Read https://example.com/docs as markdown and summarize the authentication steps."

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

I still use Windsurf. Does this work?+

Windsurf was renamed Devin Desktop on June 2, 2026. The same server works in both; in the legacy Cascade agent, use "serverUrl" instead of "url".

Other clients

Checked against docs.devin.ai, docs.devin.ai, docs.devin.ai in October 2026.

200 free renders a month to start

No card. Every tool on every plan.

Create a free account