Skip to main content
Glama

Drag and drop

browser_drag

Drag one element onto another on the current page to trigger HTML5 or pointer-driven drag-and-drop actions, such as moving cards on kanban boards.

Instructions

Drag one element onto another (HTML5 drag-and-drop, or pointer-driven libraries such as kanban boards).

Input Schema

NameRequiredDescriptionDefault
tabIdNo
toRefNo
fromRefNo
toSelectorNo
fromSelectorNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.2

TDQS

C2.8/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 burden. The parenthetical about HTML5 vs pointer-driven libraries is genuinely useful behavioral context (the tool handles both DOM-native and synthetic pointer sequences), but it says nothing about permissions, return values, timing/settling behavior, or what happens if the drop target is not droppable.

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 front-loaded sentence that opens with the core action and uses the parenthetical only to add scoping value. Nothing is wasted and the essential meaning lands immediately.

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?

For a 5-parameter, zero-required-parameter mutation-style tool with no annotations and no output schema, the description is too thin. The ambiguous relationship between the *_ref and *_selector parameter pairs is a real gap that could cause failed invocations.

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?

All 5 parameters have 0% schema description coverage, and the description explains none of them. It never clarifies that fromRef/toRef are element handles versus fromSelector/toSelector being CSS selectors, nor whether one pair is an alternative to the other or both are required.

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?

States a specific verb+resource combination ('drag one element onto another') and even names the two implementation families it covers (HTML5 drag-and-drop, pointer-driven libraries). This clearly distinguishes it from a generic sibling like browser_click, though it never names the alternative explicitly.

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?

No guidance on when to prefer this over browser_click, browser_act, or browser_eval for complex interactions. Nothing states prerequisites, e.g., that refs likely come from a prior find/look call, or whether a drag requires a separate wait before reading state.

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