Skip to main content
Glama
faridmth

ScreenshotRender MCP Server

by faridmth
README.md
# ScreenshotRender MCP server

Capture website screenshots from inside Claude, Cursor, VS Code, Windsurf, or any
[Model Context Protocol](https://modelcontextprotocol.io) client. This server
wraps the [ScreenshotRender](https://screenshotrender.com) API so your AI
assistant can render any public web page on request.

> Ask your assistant: *"Take a full-page screenshot of stripe.com"* and the image
> appears right in the chat.

## Tools

| Tool | Description |
|------|-------------|
| `take_screenshot` | Capture a screenshot of any public URL. Returns the image inline plus a hosted URL and page metadata (title, description). |

**Parameters**

- `url` (string, required) — page to capture, including `https://`.
- `fullPage` (boolean, optional) — capture the entire scrollable page instead of the viewport.
- `wait` (number, optional) — milliseconds to wait before capturing (for animations / lazy content).
- `timeout` (number, optional) — max milliseconds to wait for load.

## Setup

1. Get your API key at **[screenshotrender.com](https://screenshotrender.com)** (it starts with `sr-`).
2. Add the server to your MCP client config.

### Claude Desktop

Edit `claude_desktop_config.json` (Settings → Developer → Edit Config):

```json
{
  "mcpServers": {
    "screenshotrender": {
      "command": "npx",
      "args": ["-y", "screenshotrender-mcp"],
      "env": {
        "SCREENSHOTRENDER_API_KEY": "sr-your-key-here"
      }
    }
  }
}
```

### Cursor / VS Code / Windsurf

Add the same block under the editor's MCP settings (`mcp.json` or the MCP
settings UI). Restart the client and the `take_screenshot` tool will be
available.

## Environment variables

| Variable | Required | Description |
|----------|----------|-------------|
| `SCREENSHOTRENDER_API_KEY` | yes | Your ScreenshotRender key (`sr-...`). |
| `SCREENSHOTRENDER_BASE_URL` | no | Override the API base URL. Defaults to `https://screenshotrender.com`. |

## Local development

```bash
npm install
SCREENSHOTRENDER_API_KEY=sr-your-key npm run inspect   # opens MCP Inspector
```

The Inspector lets you call `take_screenshot` and view the result before
shipping.

## License

MIT

TDQS

A4.1/5.0

Scored across 1 tool

Disambiguation5/5

With only one tool, there is no possibility of confusion between tools. The purpose is singular and clear.

Naming Consistency5/5

A single tool named 'take_screenshot' is consistent with itself and uses a clear verb_noun pattern. No inconsistency exists.

Tool Count4/5

One tool is minimal but appropriate for a focused screenshot-capturing server. It does not feel too thin given the narrow scope, though additional options could be considered.

Completeness3/5

The tool covers the core action of taking a screenshot, but lacks common customization parameters such as viewport size, format selection, or full-page capture, which limits completeness.

Maintenance

ActivityInactive
ResponsivenessNo issues