Skip to main content
Glama

mac_screenshot

Capture the full screen, a specific app window, or a custom region as a base64 PNG for use in Mac automation workflows.

Instructions

Capture screen, window, or region as base64 PNG.

Examples:

  • Full screen: { target: "screen" }

  • Specific app window: { target: "window", windowName: "Safari" }

  • Region (x,y from top-left): { target: "region", region: { x: 0, y: 0, width: 800, height: 600 } }

  • High-fidelity capture: { target: "screen", scale: 1.0 } (warning: larger token cost)

Limitations:

  • Requires Screen Recording permission (System Settings → Privacy & Security → Screen Recording).

  • Default scale is 0.5 to keep token cost reasonable; bump for OCR-quality captures.

  • Cursor is not included in the capture.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
scaleNoScale factor 0.1-1.0 (default: 0.5 for token efficiency)
regionNoRegion coordinates for region capture
targetYesWhat to capture
windowNameNoApp name for window capture
Behavior5/5

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

With no annotations provided, the description fully discloses key behaviors: output format (base64 PNG), permission requirements (Screen Recording), default scale (0.5) for token efficiency, and cursor exclusion. It also warns about token cost for high-fidelity captures, providing valuable operational context.

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 front-loaded with a clear one-sentence summary, followed by well-organized examples and limitations. Every sentence provides useful information with no redundancy, balancing detail with brevity.

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

Completeness5/5

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

Given 4 parameters, one nested object, and no output schema, the description covers all necessary aspects: capture modes, parameter behavior, permissions, output format, and caveats. It is sufficiently complete for an agent to correctly select and invoke this tool without ambiguity.

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

Parameters5/5

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

Although the schema already describes parameters, the description adds meaningful semantics: coordinate origin for region capture, the meaning of windowName (app name), and scale's impact on token cost. The examples directly illustrate parameter combinations, adding value beyond the schema.

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?

Opening sentence 'Capture screen, window, or region as base64 PNG' uses a specific verb and resource, clearly defining the tool's function. It also distinguishes itself from sibling tools like mac_run and mac_state, which focus on execution and system state rather than screen capture.

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 provides concrete use cases with examples for each target type (screen, window, region), giving clear context for when to use each mode. It does not explicitly name alternative tools or state when not to use the tool, but the examples and limitations effectively guide usage.

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/leesgit/mac-pilot-mcp'

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