Skip to main content
Glama

Bulk Screenshot Capture

screenshot_bulk_capture
Read-onlyIdempotent

Capture screenshots of up to 50 webpages in one request. Returns a JSON response with per-URL results including screenshot download URL and status.

Instructions

Capture screenshots of up to 50 webpages in a single request. Returns a JSON response with per-URL results — each entry includes the screenshot download URL, fulfillment status, and any error message.

If any URL needs a specific element targeted via CSS selector, use web_fetch on that page first to identify the correct selector before calling this tool.

Note: multiple_scrolling is NOT supported in bulk mode — for scrolling video captures prefer screenshot_capture_scrolling per URL instead.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
urlsYesList of screenshot config objects (max 50). Each object must include 'url'. All other fields are optional.
Behavior4/5

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

Annotations already declare readOnlyHint, destructiveHint, idempotentHint, and openWorldHint. The description adds value by describing the return format (JSON with per-URL results including download URL, status, error) and the limitation that multiple_scrolling is not supported. This is sufficient context beyond annotations.

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 four sentences, front-loaded with the primary purpose. It includes essential guidance and a note without extraneous information. It is concise, though the note could be integrated more smoothly.

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 complexity (one array parameter with many fields), the description provides a reasonable overview: it explains the return format and key constraint. Without an output schema, it gives enough context for an agent to understand the tool's behavior. It could mention concurrency or error handling but is 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?

The input schema has 100% coverage, with detailed descriptions for each field. The description does not add additional meaning beyond the schema, so baseline 3 is appropriate.

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 tool captures screenshots of up to 50 webpages in a single request, specifying the action and scope. It distinguishes from sibling tools like screenshot_capture_scrolling by noting that scrolling video is not supported in bulk mode, and advises using web_fetch for CSS selector identification.

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

Usage Guidelines5/5

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

The description explicitly tells when to use this tool (for bulk screenshots) and when not (for scrolling captures, use screenshot_capture_scrolling). It also advises using web_fetch to obtain CSS selectors before calling this tool. This provides clear guidance on alternatives and prerequisites.

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

Install Server

Other Tools

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/api-freaks/apifreaks-mcp'

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