Developer tools

MCP server

The Instant Snap API as a hosted Model Context Protocol server, so an AI assistant can capture a page for you the way your own code would.

What it does

MCP is the open standard assistants such as Claude, Cursor, VS Code and others use to call tools. Our server runs at https://mcp.websitescreenshotworld.com/mcp and exposes Instant Snap captures as tools: once your assistant is connected, you can ask it to capture a page and it makes the API call on your account and hands you the result. There is nothing to install on a client that speaks HTTP. Nothing runs on our side that the API does not already do.

ValueMeaning
Addresshttps://mcp.websitescreenshotworld.com/mcp (Streamable HTTP).
CoversThe Instant Snap API — capturing any URL on demand, as an image or a PDF, or reading its text.
Does not coverThe Auto Schedule API. It is a single trigger route and needs no server; call it directly.

Two ways to connect

ValueMeaning
Sign inAdd the server as a connector and sign in with your Website Screenshot World account. No key to copy. The server creates an Instant Snap API key for itself.
API keyCreate an Instant Snap API key and have the assistant send it as a header on every request. Works with any client that can set a header, and with Claude Code.

Connect by signing in

  1. 1

    Add the server as a connector

    In your assistant, add a custom connector with the address https://mcp.websitescreenshotworld.com/mcp. If it asks for an OAuth client ID, enter Mcp and leave the client secret empty.
  2. 2

    Sign in and allow access

    You are sent to our sign-in page. Sign in with your Website Screenshot World account and approve the access the assistant asks for.
  3. 3

    Ask for a capture

    On the first capture, the server creates an Instant Snap API key for you in your workspace. It appears under Developer Tools → API Keys, on the Instant Snap API tab, named MCP connector with the date.

Who can connect this way

Creating the key is part of connecting, so the person signing in needs a role that can create Instant Snap API keys. Anyone else is told so by the assistant, and can use a key an administrator gives them instead.

Disconnecting

Remove the connector from your assistant first, then delete the MCP connector key. Revoking or deleting the key alone is not enough while the assistant is still signed in: the next capture fails, and the one after that creates a new key.

Connect with an API key

  1. 1

    Create an Instant Snap API key

    Under Developer ToolsAPI Keys, on the Instant Snap API tab. The key starts with wsw_api_. An Auto Schedule key (wsw_autoapi_) is refused.
  2. 2

    Add the server to your assistant

    Give the assistant the server address and send the key as a header on every request, either X-Api-Key: wsw_api_... or Authorization: Bearer wsw_api_.... In Claude Code that is one command; other assistants take a JSON entry.
  3. 3

    Ask for a capture

    Restart the assistant if it needs it, then ask in plain words — a URL, and how you want it captured.
Claude Code
claude mcp add --transport http wsw https://mcp.websitescreenshotworld.com/mcp --header "X-Api-Key: wsw_api_..."
MCP configuration entry (Cursor, VS Code and similar)
{
  "mcpServers": {
    "website-screenshot-world": {
      "type": "http",
      "url": "https://mcp.websitescreenshotworld.com/mcp",
      "headers": { "X-Api-Key": "wsw_api_..." }
    }
  }
}

Exact file and field names

Where the configuration lives, and whether it calls the field type or transport, differs between assistants. Each one documents how to add a remote (HTTP) MCP server with custom headers; the address and the header above are all ours needs.

Give an assistant its own key rather than reusing one from production code, so you can tell its calls apart on the Instant Snap API page and revoke it on its own.

Clients that only speak stdio

Some clients can only start a local program and talk to it over standard input and output. For those, mcp-remote — a small open-source bridge run with npx, which needs Node.js — relays between the client and our server:

The bridge
npx mcp-remote https://mcp.websitescreenshotworld.com/mcp

Pass your Instant Snap API key as a header. Keeping the key in an environment variable, with no space after the colon, avoids quoting problems on some systems:

With your key
npx mcp-remote https://mcp.websitescreenshotworld.com/mcp --header "X-Api-Key:${WSW_API_KEY}"
MCP configuration entry for a stdio-only client
{
  "mcpServers": {
    "website-screenshot-world": {
      "command": "npx",
      "args": [
        "mcp-remote",
        "https://mcp.websitescreenshotworld.com/mcp",
        "--header",
        "X-Api-Key:${WSW_API_KEY}"
      ],
      "env": { "WSW_API_KEY": "wsw_api_..." }
    }
  }
}

The tools

ValueMeaning
capture_screenshotCaptures a URL as an image: format, full page or viewport, size, device, ad and pop-up blocking, Press Escape, elements to hide, proxy country.
capture_pdfRenders a URL as a PDF, with selectable text or as an image; takes the same blocking, Press Escape and elements-to-hide options. A PDF can take longer than the tool waits: it then answers with the capture id, the PDF goes on being made, and get_capture reads it once it is done.
read_pageReads a URL and returns its main content as markdown or plain text, for when the assistant needs what the page says rather than what it looks like.
get_captureReads back a capture made earlier, by its id.
list_capture_optionsLists the options and their defaults, so the assistant can build a valid request.

Each capture result carries the capture’s details and a download link. A small image is also returned inline so the assistant can look at it; a large one is left as a link rather than filling the conversation. read_page returns the text itself.

read_page

Reads a public web page and returns its main content as markdown (or plain text with format: "text"), without navigation, ads, cookie banners or scripts. Use it when the agent needs what a page says rather than what it looks like. The page is loaded in a real browser, like a screenshot, so pages built with JavaScript work.

FieldTypeDefaultDescription
urlRequiredstring—The absolute http(s) URL of the page to read.
formatstringmarkdownmarkdown keeps headings, lists, links and tables; text is the same content without markup.
scrollbooleanfalseScrolls through the page first, for pages that load more content as they are read.
click_selectorstring (CSS)—An element to click before reading, e.g. a “show more” or consent button.
block_pop_upsbooleanthe plan'sBlock cookie banners and pop-ups.
proxy_countrystring—Two-letter country code to read the page through a proxy in that country, plan permitting; list_capture_options shows what is available.

The result starts with the capture id, the final URL after redirects and the page's HTTP status, followed by the text. The text is at most 2 MB; a longer page fails and is not charged.

One capture per call

Each call is one capture on your plan, like a screenshot, and is charged only when it succeeds — or when the website refuses it after your free refusals (5% of your plan’s monthly captures) are used.

How it is metered

Exactly like the API, because it is the API: each capture counts against your plan and its API rate limit, and appears in the Instant Snap API history — whichever way the assistant connected.

Did this page answer your question?

Tell us what is missing