Features Full Page Screenshot Wait for Selector & Delay Block Cookie Banners Custom Viewport & Device Website to PDF HTML to Image Dark Mode Image Format & Quality MCP Server Webhook Pricing Docs Blog Log In Sign Up

MCP Server

The ScreenshotRun MCP Server lets AI agents — like Claude, Cursor, or Windsurf — take screenshots and check API usage autonomously. Instead of writing code, you just tell the AI "take a screenshot of example.com" and it does the rest.

MCP (Model Context Protocol) is an open standard for connecting AI models to external tools. By adding the ScreenshotRun MCP server, your AI assistant gets two new capabilities: capturing screenshots and checking your usage quota.

Available Tools

The MCP server exposes two tools to the AI agent:

ToolDescription
take_screenshot Captures a screenshot of any public URL. Supports all API parameters (viewport, device, format, dark mode, blocking, CSS/JS injection, etc.). Returns the image as base64 data for the AI to analyze or save.
check_usage Returns your current quota: screenshots used, remaining, usage percentage, billing period dates. Useful for preventing AI agents from burning through your quota in batch workflows.

Installation

The MCP server is distributed as an npm package: screenshotrun-mcp. No global installation needed — it runs via npx.

Note

You need your API key before setting up. Get it from your dashboard.

Claude Desktop

Add this to your Claude Desktop config file (claude_desktop_config.json):

json
{
  "mcpServers": {
    "screenshotrun": {
      "command": "npx",
      "args": ["-y", "screenshotrun-mcp"],
      "env": {
        "SCREENSHOTRUN_API_KEY": "YOUR_API_KEY"
      }
    }
  }
}

Config file location:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json

Restart Claude Desktop after saving the config.

Claude Code (CLI)

bash
claude mcp add screenshotrun npx -y screenshotrun-mcp \
  -e SCREENSHOTRUN_API_KEY=YOUR_API_KEY

Cursor

Create or edit .cursor/mcp.json in your project root:

json
{
  "mcpServers": {
    "screenshotrun": {
      "command": "npx",
      "args": ["-y", "screenshotrun-mcp"],
      "env": {
        "SCREENSHOTRUN_API_KEY": "YOUR_API_KEY"
      }
    }
  }
}

Windsurf

Add to your Windsurf MCP configuration:

json
{
  "mcpServers": {
    "screenshotrun": {
      "command": "npx",
      "args": ["-y", "screenshotrun-mcp"],
      "env": {
        "SCREENSHOTRUN_API_KEY": "YOUR_API_KEY"
      }
    }
  }
}

Usage Examples

Once the MCP server is connected, you can ask the AI to capture screenshots using natural language. Here are some examples of what you can say:

Basic screenshot

text
Take a screenshot of https://example.com

Mobile screenshot in dark mode

text
Capture https://example.com as it looks on a mobile phone in dark mode

Full-page screenshot

text
Take a full-page screenshot of https://example.com/pricing in WebP format

Visual comparison

text
Take screenshots of stripe.com, paddle.com, and lemonsqueezy.com. Compare their pricing page designs.

Check remaining quota

text
How many screenshots do I have left this month?

How It Works Under the Hood

  1. The AI decides to use the take_screenshot tool based on your request.
  2. The MCP server sends a capture request to the ScreenshotRun API.
  3. It polls for completion (every 2 seconds, up to 60 seconds timeout).
  4. Once ready, the image is downloaded and returned to the AI as base64 data.
  5. The AI can then analyze the image, compare it with others, or save it to disk.

Security

  • Your API key is stored in the MCP config file and passed as an environment variable. It is never sent to the AI model itself.
  • The MCP server only communicates with api.screenshotrun.com — no data is sent elsewhere.
  • Each screenshot captured by the AI agent counts toward your plan quota, just like any other API request.

Source Code

The MCP server is open source: github.com/screenshotrun/screenshotrun-mcp