# MCP server

Site-Shot ships an official Model Context Protocol (MCP) server so AI agents and MCP-aware clients (Claude Code, Codex CLI, Claude Desktop, Cursor, Windsurf) can take website screenshots as a native tool.

- npm package: `site-shot-mcp` — run with `npx -y site-shot-mcp`
- Official MCP Registry: `io.github.site-shot/site-shot-mcp`
- Source: https://github.com/site-shot/site-shot-mcp

The server is a thin stdio wrapper over the existing screenshot API. It does not change the screenshot backend; it authenticates with the same screenshot API key.

That key needs a paid API plan: captures draw on that account's own API allowance, and there is no free API tier. Get the key from your [dashboard](/dashboard/); [pricing](/pricing/) lists the plans. The browser capture tool is free and needs no account, but it issues no API key.

## Plugin install (Claude Code, Codex CLI)

Claude Code and Codex CLI install this same server as a plugin. The commands and the key setup differ per host and are documented in the server's README:

- [Claude Code plugin guide](https://github.com/site-shot/site-shot-mcp#claude-code-plugin) — Claude Code prompts for the key.
- [Codex CLI plugin guide](https://github.com/site-shot/site-shot-mcp#codex-cli-plugin) — Codex reads `SITESHOT_API_KEY` from the session environment.

The plugin and the manual configuration below are alternatives for one client, not two steps: install both and that client runs two configurations of the same server.

## Configuration

For Claude Desktop, Cursor and other clients that run a local stdio MCP server, set the screenshot API key as the `SITESHOT_API_KEY` environment variable:

```json
{
  "mcpServers": {
    "site-shot": {
      "command": "npx",
      "args": ["-y", "site-shot-mcp"],
      "env": { "SITESHOT_API_KEY": "YOUR_API_KEY" }
    }
  }
}
```

## Tools

- `capture_screenshot`: capture a web page and return it as an image. Supports viewport sizing, full-page capture, country proxies, and ad / cookie-banner removal.
- `capture_full_page`: convenience wrapper that captures the entire scrollable page.

## Parameters

Both tools accept `url` plus optional `width`, `height`, `format` (`png`/`jpeg`/`webp`; `webp` is lossless and stops at 16,383 px per side), `block_ads`, `block_cookie_banners`, `country`, `language`, `time_zone`, `geolocation`, `wait_ms`, and `max_height`. `capture_screenshot` also accepts `full_page`. Ad and cookie-banner removal default to on, so the agent reads the page rather than a consent overlay. This does not by itself lower vision-token cost — vision models charge by image dimensions — so use `width`, `height` and `max_height` to control that.

These map to the same query parameters documented in the [Screenshot API](/api/v1/agent/docs/screenshot-api.md) page.
