Skip to main content
Glama

Open a file, URL or app

open

Launch files, folders, URLs, or apps on macOS using their default handler; specify a path or URL, or set app=true to start an application by name.

Instructions

Open a file/folder path or URL with its default handler, or launch an app by name (set app=true).

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
appNoIf true, treat target as an application name to launch.
targetYesA path, a URL (https://…), or — with app=true — an application name.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4/5.0
Behavior3/5

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

Annotations already convey the safety profile: not read-only, not idempotent, not destructive, and an external-world effect. The description adds useful behavioral detail that the target is passed to the default handler or launched as an app, but it does not disclose outcomes like focus changes, errors, return behavior, or external side effects in more depth.

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?

A single sentence packs the core behavior and the one mode-switching condition without any filler. It is front-loaded and every clause earns its place.

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?

For a simple two-parameter tool with full schema coverage, the description covers the main behaviors and the app-mode distinction. It is slightly incomplete only in not describing return/failure behavior, which is acceptable given there is no output schema, but it remains sufficient for invoking the tool 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 coverage is 100%, and the description largely restates what the schema already documents: target can be a path, URL, or app name, with app=true to switch modes. It adds little extra meaning beyond the schema rather than compensating for any gap.

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 and three supported resource kinds — file/folder path, URL, or app name — and differentiates the app mode with the app=true flag. It reads clearly as the 'open with default handler' tool, distinct from siblings like read_file and run_command.

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 clarifies when to use the tool and even separates the app-launch case via app=true. It does not explicitly name alternatives or exclusions, but the 'default handler' phrasing implies this is not for reading content into the agent, so context is clear.

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