Skip to main content
Glama

Browser Upload

browser_upload

Attach a file to a browser file input using a device path or host file path. Host files are pushed to /sdcard/Download before attaching, enabling automated uploads.

Instructions

Attach a file to an . path is a device path under /sdcard, or a host file (not inside a hidden directory) that is pushed to /sdcard/Download first.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
refNo
pathYes
deviceNo
sessionNodefault
selectorNo

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A3.5/5.0
Behavior3/5

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

With no annotations provided, the description carries the behavioral disclosure burden. It does reveal an important side effect: host files are pushed to /sdcard/Download first, and hidden directories are disallowed. However, it does not explain what happens after attachment, whether the file is immediately submitted, or what state changes occur in the browser. Some useful behavior is disclosed, but significant gaps remain.

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 two sentences with no filler. The core action is front-loaded, and the critical path constraint is stated immediately after. Every sentence earns its place.

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?

The tool has five parameters, no schema property descriptions, and no annotations, yet the description only explains the `path` parameter. It does not cover selector/ref semantics, session targeting, or device routing. Although an output schema exists, the agent still lacks enough context to correctly construct a call beyond supplying a path.

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

Parameters2/5

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

Schema description coverage is 0%, so the description must compensate. It provides strong semantics for the required `path` parameter, explaining device paths and the host-file push behavior. However, the other four parameters (`ref`, `device`, `session`, `selector`) are not explained at all, leaving the agent to guess how to target the correct browser session or file input.

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 resource: 'Attach a file to an <input type=file>'. This clearly identifies the tool's function and distinguishes it from sibling browser tools like browser_read, browser_find, and browser_act, none of which handle file attachment.

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 intended use case is implied: use this when a file needs to be attached to a file input in a browser context. However, the description does not explicitly state when to use it versus alternatives, nor does it mention prerequisites such as an active browser session or visible file input. Context is clear but not fully developed.

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