Skip to main content
Glama
dhanavathsrikanth

screenshotapi-mcp

ScreenshotAPI MCP Server

Ein MCP (Model Context Protocol)-Server für ScreenshotAPI – erfassen Sie Screenshots, extrahieren Sie Seiteninhalte als Markdown und verwalten Sie Ihr Konto über jeden MCP-kompatiblen KI-Agenten.

Tools

Tool

Beschreibung

render-screenshot

Erfassen Sie einen Screenshot einer beliebigen URL mit voller Kontrolle über Viewport, Geräteemulation, Format und Blockierungsoptionen

capture-element

Erfassen Sie einen bestimmten CSS-Selektor auf einer Seite – ideal für Header, Artikel oder Widgets

convert-to-markdown

Rendern Sie eine Seite und geben Sie deren Inhalt als sauberes Markdown zurück

get-usage

Prüfen Sie Ihr Kontokontingent, Ihr Guthaben und Ihre Funktionsberechtigungen

get-screenshot

Rufen Sie einen Screenshot-Auftrag anhand der ID ab (zum Abfragen asynchroner Aufträge)

Related MCP server: Latchshot for Gemini CLI

Schnellstart

Direkt mit npx ausführen – keine Installation erforderlich:

SCREENSHOTAPI_KEY=your_api_key npx --yes screenshotapi-mcp

Claude Desktop-Konfiguration

Fügen Sie Folgendes zu ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) oder %APPDATA%\Claude\claude_desktop_config.json (Windows) hinzu:

{
  "mcpServers": {
    "screenshotapi": {
      "command": "npx",
      "args": ["--yes", "screenshotapi-mcp"],
      "env": {
        "SCREENSHOTAPI_KEY": "sk_live_your_api_key_here"
      }
    }
  }
}

Andere MCP-Clients

Jeder MCP-Client kann sich über stdio verbinden. Führen Sie den Server direkt aus:

SCREENSHOTAPI_KEY=your_api_key node build/index.js

Umgebungsvariablen

Variable

Erforderlich

Beschreibung

SCREENSHOTAPI_KEY

Ja

Ihr ScreenshotAPI-API-Schlüssel (sk_live_... oder sk_test_...)

SCREENSHOTAPI_URL

Nein

API-Basis-URL (Standard: https://api.screenshotapi.tech)

Holen Sie sich Ihren API-Schlüssel unter screenshotapi.tech/dashboard.

Aus dem Quellcode erstellen

git clone https://github.com/your-org/screenshotapi-mcp.git
cd screenshotapi-mcp
npm install
npm run build
SCREENSHOTAPI_KEY=your_key node build/index.js

Lizenz

MIT

Available Tools

5 tools
capture-elementA

Capture a specific element on a page by CSS selector. Useful for capturing headers, articles, widgets, or any identifiable DOM element without rendering the entire page.

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesURL of the page containing the element
delayNoMilliseconds to wait before capturing
widthNoViewport width in pixels
formatNoOutput image formatpng
heightNoViewport height in pixels
qualityNoImage quality (1-100)
timeoutNoPage load timeout in milliseconds
selectorYesCSS selector of the element to capture (e.g. '.hero', '#main-content', 'article')
block_adsNoBlock advertisements
dark_modeNoForce dark mode on the page
block_trackersNoBlock tracking scripts
block_cookie_bannersNoBlock cookie consent banners

TDQS

A3.6/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full behavioral burden. It only states the purpose and the efficiency aspect (not rendering entire page). It does not disclose what happens if the selector is not found, whether it waits for the element, or any side effects. The description adds almost nothing beyond the schema, which already documents parameters.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, front-loaded sentence that immediately states the action and purpose. Every word contributes to the tool's function, with no filler or redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (12 parameters, 2 required, no output schema, no annotations), the description is minimal. It does not explain return behavior (presumably an image), error handling, or constraints like element visibility. An agent might need more guidance on how to use it correctly, such as whether the element must be in the viewport or if scrolling is handled.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so every parameter already has a description. The tool description itself does not add any extra meaning about parameters, so the baseline 3 applies. It does not clarify relationships between parameters or typical usage patterns.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states exactly what the tool does: capture an element via CSS selector, with concrete examples (headers, articles, widgets). It also differentiates itself by noting it avoids rendering the entire page, which hints at its distinct role among siblings like render-screenshot and get-screenshot.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives clear usage context: when you need a specific DOM element like a header or widget. It does not explicitly name alternatives or state when not to use it, but the phrase 'without rendering the entire page' implies a contrast with full-page capture tools, providing context without explicit exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

convert-to-markdownA

Render a webpage and return its content as clean Markdown. Useful for extracting readable text from any URL for analysis, summarization, or data processing.

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesURL of the page to convert to Markdown

TDQS

A3.6/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full responsibility for disclosing behavioral traits. It mentions 'render a webpage' but does not explain potential failures (JS-dependent pages, timeouts, rate limits) or whether output is synchronous. This leaves the agent without important operational expectations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two purposeful sentences with no filler. The primary action and purpose are stated first, and the use cases follow. Every word contributes to the agent's understanding, achieving ideal succinctness.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the simplicity (one parameter, no output schema, no nested objects), the description is largely complete. It communicates the goal and typical uses. However, because there are no annotations, a mention of expected behavior on dynamic content would make it fully robust. Still, it is adequate for straightforward invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% (the single 'url' parameter is documented as 'URL of the page to convert to Markdown'). The description adds no additional meaning beyond the schema, so it meets the baseline but does not exceed it. Since it is a single well-described parameter, this is acceptable.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Clearly states the verb (render/convert) and resource (webpage to Markdown). The phrase 'clean Markdown' adds specificity. It is easily distinguishable from sibling tools that focus on screenshots or usage, and no ambiguity exists about what the tool accomplishes.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides use-case context ('extracting readable text... for analysis, summarization, or data processing') but does not explicitly contrast with alternatives like render-screenshot or get-screenshot. It implies when to use but omits any when-not guidance. A clear exclusion would strengthen this dimension.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get-screenshotA

Retrieve a screenshot job by its ID. Use this to poll async jobs or retrieve previously captured screenshots.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesThe screenshot job ID to retrieve

TDQS

A3.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the burden of disclosing behavior. It clearly implies a read operation ('retrieve') and mentions polling, but does not describe error handling, return format, or whether the response is a status vs. image data. It is accurate but lacks depth for a tool with no output schema.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence that front-loads the core action and then adds usage context. Zero waste, every word earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple get-by-id operation, the description covers the action and usage, but with no output schema, it leaves the agent wondering about return values (e.g., does it return the image, a status, or a URL?) and error conditions. This is a meaningful gap for a polling tool, so it is merely adequate.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the parameter is fully documented as 'The screenshot job ID to retrieve.' The description adds context about polling, but adds no extra meaning to the id parameter itself. Baseline of 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb ('Retrieve') and resource ('screenshot job'), and clarifies it is for polling async jobs or retrieving prior captures. This clearly distinguishes it from sibling creation tools like render-screenshot and capture-element.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly tells when to use it (poll async jobs, retrieve previously captured screenshots), which gives clear context. It does not explicitly name alternatives or when-not-to-use, but the sibling names make the distinction obvious, so it earns a 4 rather than a 5.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get-usageA

Check your ScreenshotAPI account usage — remaining screenshots, credits balance, plan details, and feature entitlements.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description must carry full behavioral disclosure. It implies a read-only operation but does not mention authentication requirements, rate limits, or that no side effects occur. The description is sufficient for a basic read tool but lacks extra transparency about potential constraints.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence that front-loads the main action ('Check your ScreenshotAPI account usage') and efficiently lists the key outputs in a dash-delimited series. There is no redundancy or filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given zero parameters and no output schema, the description provides a reasonable enumeration of what the tool reports (remaining screenshots, credits, plan details, feature entitlements). It does not specify the exact return format (e.g., JSON structure), but for a simple account-usage check this is mostly sufficient. A minor gap is the lack of mention of how data is returned.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters, so the baseline is 4 per the rubric. The description adds context about what the returned information covers (remaining screenshots, credits balance, etc.), which is helpful even though it is not parameter-related. No further parameter semantics are needed.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'Check' and resource 'ScreenshotAPI account usage', enumerating specific data points (remaining screenshots, credits balance, plan details, feature entitlements). It unambiguously distinguishes this from sibling tools that render or capture screenshots.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies this tool is for account status inquiries but does not explicitly state when to use it over siblings or provide any exclusions. Since siblings are all screen-capture related, an agent can infer the purpose, but no explicit guidance is given.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

render-screenshotB

Capture a screenshot of any website URL. Returns the image URL, dimensions, and file size. Supports device emulation, dark mode, ad/cookie/tracker blocking, geo-targeting, and full-page captures.

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesURL of the website to screenshot
delayNoMilliseconds to wait before capturing
widthNoViewport width in pixels
deviceNoDevice emulation preset (sets viewport + scale + touch + user agent)
formatNoOutput image formatpng
heightNoViewport height in pixels
countryNoCountry code for geo-targeted rendering (Pro+ plans only)
qualityNoImage quality (1-100, applies to jpeg/webp)
timeoutNoPage load timeout in milliseconds
wait_forNoWhen to consider the page readynetworkidle0
block_adsNoBlock advertisements
dark_modeNoForce dark mode on the page
full_pageNoCapture the full scrollable page
block_trackersNoBlock tracking scripts
block_cookie_bannersNoBlock cookie consent banners

TDQS

B3.1/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden of behavioral disclosure. It mentions the return format and lists supported features (device emulation, dark mode, ad/cookie/tracker blocking, geo-targeting, full-page), which is helpful. However, it does not disclose any potential failures, auth requirements, rate limits, or the nature of the returned URL (e.g., temporary vs. permanent), leaving gaps in behavioral context. It is adequate but not thorough.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise, with two sentences that front-load the primary action and return info. It avoids redundancy and is easy to scan. It could be slightly more structured (e.g., separating features), but it is efficient and clear.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has 15 parameters and no output schema, the description provides only a high-level overview. It fails to mention how it differs from the sibling 'get-screenshot', which is critical for tool selection. It also does not mention any constraints (e.g., URL accessibility, authentication) or elaborate on the returned image URL's properties. This incompleteness leaves an agent uncertain about when and how to use it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so baseline is 3. The description references many features that map to parameters (e.g., dark_mode, block_ads, country, full_page), but these are already well-described in the schema. The description adds little semantic value beyond grouping these features together; it does not clarify any parameter's deeper behavior or edge cases.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'Capture' and the resource 'screenshot of any website URL', and also mentions the return values (image URL, dimensions, file size). However, it does not differentiate from the sibling tool 'get-screenshot', which likely performs a similar function, so it loses a point for not distinguishing between similar tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives like 'get-screenshot' or 'capture-element'. It simply states what it does without any context on selection criteria, prerequisites, or exclusions. An agent would have no basis to choose this over its siblings.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

TDQS

A3.7/5.0
Disambiguation4/5

Tools are mostly distinct: render-screenshot captures full pages, capture-element targets specific DOM elements, convert-to-markdown extracts text, get-screenshot retrieves by ID, and get-usage is account-related. The only minor overlap is between the two capture tools, but their descriptions clearly differentiate full-page vs. element capture.

Naming Consistency5/5

All tool names follow a consistent verb-noun pattern with hyphenated lowercase (render-screenshot, capture-element, convert-to-markdown, get-usage, get-screenshot). The verbs clearly indicate actions, and the nouns identify the object, making the naming predictable and easy to infer.

Tool Count5/5

With 5 tools, the server is well-scoped for a screenshot utility. Each tool serves a distinct purpose without redundancy, covering the core capture, retrieval, conversion, and account management needs. This count is appropriate and not overwhelming or thin.

Completeness4/5

The tool surface covers the primary workflow: capturing screenshots (full-page and element), converting to markdown, retrieving past captures, and checking usage. Minor gaps exist, such as no tool for listing all captures or deleting them, but these are not essential for the core screenshot API functionality and can be worked around.

Maintenance

ActivityMaintained
ResponsivenessSyncing

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    B
    maintenance
    Enables AI agents to capture any public URL as PNG, JPEG, or PDF via REST API or MCP tools, including screenshot capture, page description, and PDF rendering.
    17
    MIT
  • A
    license
    Not graded
    quality
    B
    maintenance
    Provides two MCP tools (capture_page and get_usage) that let Gemini CLI capture public web pages as PNG/JPEG/PDF and check render quota, all via a hosted Streamable HTTP endpoint without local browser.
    MIT

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/dhanavathsrikanth/screenshotapi-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server