Skip to main content
Glama
nhodges
by nhodges

vroid_scroll

Scroll panels or zoom the 3D viewport to reach content below the fold, using wheel events that work on XWayland clients.

Instructions

Wheel-scroll a panel or zoom the 3D viewport.

Sent as X11 button 4/5 (6/7 horizontally): VRoid is an XWayland client and ignores Wayland virtual-pointer axis events, so this is the only wheel that works on it.

Long Parameters lists need this - a label that vroid_find_text cannot see is usually just below the fold. vroid_set_slider scrolls to its own row automatically, so you rarely need to do it by hand.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
xNoPark the pointer here first - the wheel goes to whatever is under the cursor, so this decides WHICH panel scrolls. ~(0.93w, 0.60h) is the right-hand Parameters panel, the centre is the 3D viewport.
yNoSee `x`.
dxNoHorizontal wheel notches, positive = right. Rarely useful; VRoid's panels scroll vertically only.
dyNoVertical wheel notches. POSITIVE scrolls DOWN (further into a panel); over the 3D viewport, positive zooms OUT.
spaceNo'image' = pixels of a window capture (what vroid_screenshot / vroid_find_* report - the default, and almost always what you want); 'window' = Hyprland layout units relative to the window's top-left; 'layout' = absolute Hyprland layout units of the whole output.image

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Behavior5/5

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

With no annotations, the description carries the full burden of behavioral disclosure. It explains that the wheel is sent as X11 button 4/5 (6/7 horizontally) because VRoid is an XWayland client that ignores Wayland virtual-pointer axis events. It also reveals the direction semantics: 'POSITIVE scrolls DOWN' and 'over the 3D viewport, positive zooms OUT.' This is rich, honest behavioral context beyond a simple 'scroll' statement, with no contradiction to any annotations (none exist).

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 three sentences with zero waste. It front-loads the purpose, then explains the platform-specific mechanism, then gives a concrete use case with a reference to alternatives. Every sentence earns its place.

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 the tool's moderate complexity, the rich input schema (with parameter descriptions), and an output schema, the description is fully sufficient. It explains why the tool exists (XWayland limitation), when to use it (scrolling long panels), and how it contrasts with siblings. Nothing an agent needs to call it correctly is missing.

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 description coverage is 100%, so per the rubric the baseline is 3. The description does not add parameter-specific meaning beyond the schema; it focuses on when to use the tool and the underlying mechanism. The schema already contains detailed descriptions for each parameter (e.g., x: 'Park the pointer here first...'), so the description's lack of direct parameter elaboration is acceptable.

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 opens with a specific verb+resource combination: 'Wheel-scroll a panel or zoom the 3D viewport.' It immediately differentiates from siblings by noting that vroid_set_slider scrolls automatically and vroid_find_text cannot see labels below the fold. This clearly tells an agent what the tool does and how it differs from related tools.

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 provides explicit when-to-use context: 'Long Parameters lists need this - a label that vroid_find_text cannot see is usually just below the fold.' It also explicitly states when not to use it: 'vroid_set_slider scrolls to its own row automatically, so you rarely need to do it by hand.' This gives clear guidance on selecting this tool over alternatives.

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/nhodges/mcp-vroid'

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