Skip to main content
Glama

Server Details

Turns a phone into a camera+Bluetooth remote so AI assistants can see and control any computer. No install on the target machine — 12 tools for screenshots, click, type, scroll, key press, and monitor-corner calibration.

Status
Healthy
Last Tested
Transport
Streamable HTTP
URL

Glama MCP Gateway

Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.

MCP client
Glama
MCP server

Full call logging

Every tool call is logged with complete inputs and outputs, so you can debug issues and audit what your agents are doing.

Tool access control

Enable or disable individual tools per connector, so you decide what your agents can and cannot do.

Managed credentials

Glama handles OAuth flows, token storage, and automatic rotation, so credentials never expire on your clients.

Usage analytics

See which tools your agents call, how often, and when, so you can understand usage patterns and catch anomalies.

100% free. Your data is private.
Tool DescriptionsB

Average 3.9/5 across 12 of 12 tools scored. Lowest: 2.4/5.

Server CoherenceA
Disambiguation5/5

Each tool targets a distinct action: clicks, screenshots (raw, corrected, calibration aids), keyboard input, mouse movement, scrolling, and corner calibration. There is no ambiguity between tools.

Naming Consistency3/5

Tool names mix conventions: some are single verbs (click, scroll, key), some are verb_noun (move_mouse, set_corners, type_text), and some are longer phrases (take_screenshot_with_crosshair). Although readable, the inconsistency is notable.

Tool Count5/5

With 12 tools, the server covers all essential interactions for camera-based screen control without being bloated or sparse. Each tool has a clear role.

Completeness4/5

The tool set covers clicking, typing, key combinations, mouse movement, scrolling, and multiple screenshot modes including calibration aids. Missing drag/swipe functionality is a minor gap.

Available Tools

12 tools
clickAInspect
Click at normalized screen coordinates.
nx, ny: float 0.0000–1.0000 where (0,0) = top-left, (1,1) = bottom-right.
ParametersJSON Schema
NameRequiredDescriptionDefault
nxYes
nyYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes
Behavior2/5

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

No annotations are provided; the description only says 'Click'. It does not disclose which button (left/right), whether it's a click-and-release, or any side effects. For a mutation tool with no annotations, this is insufficient.

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?

Two sentences, front-loaded with the action, no waste.

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 click tool with an output schema (not shown), the description adequately covers the input semantics. It could mention return behavior, but the output schema likely handles that.

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

Parameters4/5

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

The schema has 0% description coverage, but the description adds the crucial meaning of nx and ny as normalized coordinates with a clear mapping (0,0 top-left, 1,1 bottom-right).

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 clearly states the action ('Click') and the resource ('normalized screen coordinates'). It explains the coordinate system and distinguishes from siblings like double_click.

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 implies usage for a single click at normalized positions. It does not explicitly state when not to use it or alternatives, but sibling names make the context clear.

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

double_clickCInspect

Double-click at normalized screen coordinates.

ParametersJSON Schema
NameRequiredDescriptionDefault
nxYes
nyYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes
Behavior2/5

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

No annotations provided, so description carries full burden. Does not disclose behavior beyond basic action, such as whether coordinates are relative to current position, any delay, or if it triggers OS-level double-click.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Single sentence is concise but omits essential details for a tool with no annotations and undocumented parameters.

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?

Despite having an output schema and sibling tools, the description lacks depth on output, prerequisites, and behavioral context. Incomplete for practical use without assumptions.

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?

With 0% schema coverage, description adds minimal value by mentioning 'normalized' but does not specify coordinate range, format, or how they interact with other tools.

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 clearly states the verb 'double-click' and the resource 'normalized screen coordinates', distinguishing it from sibling tools like 'click' which implies a single click.

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 use double_click versus click or other mouse tools. Lacks context such as typical use cases or alternatives.

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

get_cornersAInspect
Get the phone's current screen-corner calibration.
Returns {"tl": [nx,ny], "tr": [nx,ny], "br": [nx,ny], "bl": [nx,ny]} — each corner
is a normalized point (0.0–1.0) in the RAW camera frame, defining the perspective
warp that maps the camera view onto a flat rectangle representing the monitor.
These four points are an arbitrary quadrilateral (trapezoid), not a bounding box —
adjust one corner at a time without assuming the others move symmetrically.
ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Behavior4/5

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

No annotations exist; description explains return format, normalized points, perspective warp, and warns about quadrilateral nature and asymmetric adjustments.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Clear and front-loaded with purpose. Two paragraphs; slightly verbose but all sentences add value.

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?

No output schema; description sufficiently explains return format and semantics for a parameterless tool.

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

Parameters4/5

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

No parameters; baseline 4. Description adds meaning about return structure and coordinates.

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?

Clearly states verb 'Get' and resource 'phone's current screen-corner calibration'. Distinguishes from sibling 'set_corners' by being the read counterpart.

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?

Implied usage for reading calibration, but no explicit when-to-use, prerequisites, or comparison with alternatives like 'set_corners'.

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

get_raw_screenshotAInspect
Capture the RAW camera frame — no perspective warp, no crop to the calibrated
screen quad. Use this to see exactly what the camera sees before any correction,
e.g. when troubleshooting why take_screenshot looks wrong, or before adjusting
corners with get_corners/set_corners.
ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Behavior4/5

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

Without annotations, the description explains the core behavior (no warp/crop) but omits potential side effects or requirements. Adequate for a simple capture tool.

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?

Two sentences, no waste, front-loaded with the key purpose. Efficiently communicates all essential information.

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 zero parameters, no output schema, and a straightforward action, the description provides complete context for usage and purpose.

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

Parameters4/5

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

Zero parameters, so baseline 4. The description adds no parameter info but the schema fully covers the empty parameter set.

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 explicitly states 'Capture the RAW camera frame' and contrasts with corrections, making the purpose unmistakable and distinct from sibling tools like take_screenshot.

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?

Provides concrete use cases: 'when troubleshooting why take_screenshot looks wrong, or before adjusting corners with get_corners/set_corners', directly guiding when to choose 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.

keyBInspect
Press a key combination.
modifiers bitmask: LCtrl=1, LShift=2, LAlt=4, LWin=8
Common keycodes: Enter=40, Escape=41, Tab=43, Space=44,
  F4=61, PageDown=78, PageUp=75, Win=227
Examples:
  Alt+F4  → key(4, [61])
  Ctrl+W  → key(1, [26])
ParametersJSON Schema
NameRequiredDescriptionDefault
keycodesYes
modifiersYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes
Behavior2/5

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

No annotations exist. The description explains parameter encoding (bitmask, keycodes) but does not disclose behavior such as whether keys are pressed and released, duration, or any side effects. This leaves important behavioral gaps for an agent.

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 highly concise: a one-line purpose, a clear bitmask definition, a list of common keycodes, and two examples. Every sentence adds value with no redundancy.

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

Completeness3/5

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

The description covers parameter usage well but lacks behavioral details (e.g., key press and release timing). Output schema exists but is not detailed in context. For a simple keyboard shortcut tool, it is mostly complete but missing execution semantics.

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

Parameters4/5

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

With 0% schema coverage, the description compensates well by explaining the modifiers bitmask, providing common keycode examples, and showing usage in examples. This adds meaningful semantics beyond the integer type in the schema.

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?

The description clearly states the tool presses a key combination and provides examples (Alt+F4, Ctrl+W). It distinguishes from sibling tools like click or type_text by specifying keyboard shortcuts, though it could explicitly contrast with type_text.

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?

The description does not provide guidance on when to use this tool versus alternatives. It gives examples but no explicit context for when to prefer key over type_text or other input tools.

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

move_mouseAInspect
Move mouse cursor to normalized coordinates WITHOUT clicking.
nx, ny: float 0.0000–1.0000.
ParametersJSON Schema
NameRequiredDescriptionDefault
nxYes
nyYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes
Behavior4/5

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

The description clarifies the key behavior of not clicking and specifies the coordinate range (0.0000–1.0000). With no annotations, it carries the full burden and does so adequately, though it omits details like error handling or response.

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?

Two concise sentences, front-loaded with the action and key qualifier ('WITHOUT clicking'), with no unnecessary words.

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?

For a simple move command, the description fully covers purpose, coordinate system, and the important no-click behavior. Output schema exists so return values are not needed.

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?

With 0% schema description coverage, the description adds critical semantics: both parameters are normalized floats in [0,1], which the schema only lists as 'number' without constraints.

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 the action ('Move mouse cursor to normalized coordinates') and specifies it does not click, clearly differentiating from siblings like 'click' or 'double_click'.

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 description implies usage for moving the cursor without clicking but does not explicitly state when to use or when to avoid, nor does it mention alternatives for clicking.

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

scrollAInspect
Scroll the mouse wheel.
delta: number of ticks. Positive = scroll down, negative = scroll up.
ParametersJSON Schema
NameRequiredDescriptionDefault
deltaYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes
Behavior4/5

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

No annotations, so description carries burden; explains delta meaning and direction, though no side effects or platform details.

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?

Two sentences, front-loaded, no wasted words; efficient and clear.

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?

Adequate for a simple tool with one parameter; could mention units (pixels/lines) but still complete.

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

Parameters4/5

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

Schema coverage 0%, description adds value by explaining delta as ticks and sign convention beyond schema type.

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?

Description clearly states the tool scrolls the mouse wheel, distinguishing it from siblings like click, move_mouse, etc.

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?

Provides basic usage (delta meaning) but lacks guidance on when to use vs alternatives or when not to use.

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

set_cornersAInspect
Update the phone's screen-corner calibration.
Each corner is [nx, ny] normalized 0.0–1.0 in the raw camera frame.
tl/tr/br/bl = top-left/top-right/bottom-right/bottom-left of the monitor as seen
by the camera (an arbitrary trapezoid due to perspective — not a rectangle).
Call get_corners() first to read the current values before nudging one of them.
ParametersJSON Schema
NameRequiredDescriptionDefault
blYes
brYes
tlYes
trYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes
Behavior3/5

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

With no annotations, the description explains the coordinate system and perspective trapezoid, but does not specify persistence, permissions, or side effects of calibration updates. Some transparency but incomplete.

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?

Three sentences: purpose, coordinate definition, usage advice. No redundant words, front-loaded with primary action.

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?

Covers parameters, coordinate system, and prerequisite. Output schema exists so return values not needed. Missing potential details like range validation or effect scope, but sufficient for typical use.

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

Parameters4/5

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

Schema has 0% parameter description coverage. Description compensates by explaining each corner's role and that each is a normalized [nx, ny] array in camera frame, adding significant meaning beyond 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?

The description clearly states the tool updates screen-corner calibration, defines the normalized coordinate system, and differentiates from sibling get_corners by recommending calling it first to read current values.

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?

Explicitly advises calling get_corners() first before modifying, establishing a clear usage pattern. Does not mention when not to use or alternatives, but provides necessary context.

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

take_screenshotBInspect

Capture the current screen via the Dittu phone camera. Returns a JPEG image. Call this to see what's on screen before acting.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Behavior2/5

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

No annotations are provided, so the description must fully disclose behavior. It states it returns a JPEG image but does not explicitly say it is read-only or non-destructive, nor does it discuss permissions or potential failure modes.

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 fluff, front-loaded with the main action. Every word is useful.

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

Completeness3/5

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

Given no output schema, the description mentions the return format (JPEG) but does not explain when to use this tool over closely related siblings. For a simple tool, it is adequate but incomplete in distinguishing from alternatives.

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

Parameters4/5

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

There are no parameters, and the input schema is fully covered. The description adds no parameter information, which is acceptable for zero-parameter tools. Baseline 4 applies.

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?

The description clearly states it captures the current screen via the Dittu phone camera and returns a JPEG image. However, it does not explicitly distinguish this tool from sibling tools like take_screenshot_with_crosshair or take_screenshot_with_grid.

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?

It says 'Call this to see what's on screen before acting,' providing a usage context. But it does not specify when not to use it or mention alternative tools (e.g., get_raw_screenshot for raw data).

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

take_screenshot_with_crosshairAInspect
Capture the screen, crop tightly around (nx, ny), zoom in, and draw a crosshair
at exactly that expected position.

Use this for screen-corner calibration: move_mouse(nx, ny) near a screen edge,
then call this to see whether the actual cursor lines up with the crosshair
(where it SHOULD be if calibration is perfect). If the cursor is offset from the
crosshair, or missing entirely (edge is cropped out of frame), corners need
adjusting — see get_corners/set_corners.

nx, ny: the same coordinates you passed to move_mouse.
zoom: magnification factor for the cropped region (default 4x).
ParametersJSON Schema
NameRequiredDescriptionDefault
nxYes
nyYes
zoomNo
Behavior5/5

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

With no annotations, the description fully discloses behavior: crops tightly, zooms, draws crosshair at expected position. Also explains consequences if cursor is offset or missing, which is critical for calibration feedback.

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?

Three sentences, each purposeful. No redundancy, front-loaded with action and purpose. Highly efficient.

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?

Covers purpose, usage, behavior, and parameter semantics well. Lacks explicit mention of return value (likely an image), but given no output schema, it's acceptable. Could be slightly more complete on what the tool returns visually.

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?

Schema coverage is 0%, so description carries full burden. It explains nx, ny are the same coordinates passed to move_mouse and zoom is magnification (default 4x). This adds essential meaning beyond the bare 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?

The description clearly states the action: capture screen, crop around (nx, ny), zoom in, draw crosshair at expected position. It distinguishes from siblings like take_screenshot (no crosshair) and take_screenshot_with_grid (different overlay).

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?

Explicitly states use case: screen-corner calibration after move_mouse near edge. Mentions alternative tools get_corners/set_corners for adjusting, so the agent knows when not to use this tool.

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

take_screenshot_with_gridAInspect
Capture the screen and overlay a coordinate grid.
step: grid spacing (default 0.1, use 0.05 for finer grid on small UI elements).
Returns a JPEG image with grid drawn on top.
ParametersJSON Schema
NameRequiredDescriptionDefault
stepNo
Behavior3/5

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

Given no annotations, the description carries full burden. It discloses the output (JPEG with grid) but does not mention side effects, permission requirements, or limitations (e.g., full-screen capture). Adequate but not detailed.

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?

Three sentences, no wasted words. Purpose is front-loaded, and all content is relevant. Efficient and clear.

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 tool with one parameter and no output schema, the description covers the core purpose, parameter semantics, and return format. Could mention that it captures the full screen, but overall sufficient.

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

Parameters4/5

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

Adds meaning beyond the schema by explaining step as grid spacing and suggesting usage (0.05 for finer grid on small UI elements). This compensates for the schema's minimal description (0% coverage).

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?

Clearly states the tool captures the screen and overlays a coordinate grid, which is a specific verb+resource combination. This distinguishes it from sibling tools like take_screenshot (no grid) and take_screenshot_with_crosshair (crosshair overlay).

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?

Provides guidance on the step parameter (default and finer grid usage) but does not explicitly state when to use this tool versus alternatives or when not to use it. Implies use for coordinate-based actions but lacks explicit context.

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

type_textCInspect

Type text on the computer keyboard.

ParametersJSON Schema
NameRequiredDescriptionDefault
textYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes
Behavior2/5

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

With no annotations, the description bears full responsibility for behavioral disclosure. It only states the action without describing typing speed, support for special characters, focus requirements, or any side effects. The presence of an output schema is not leveraged.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness2/5

Is the description appropriately sized, front-loaded, and free of redundancy?

While very concise, the description omits critical information, making it under-specified. It fails to earn its place by not providing necessary operational details.

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?

Despite a simple interface with one parameter, the description does not cover return values, error conditions, or behavioral nuances. The output schema exists but is not referenced. The description is incomplete for safe and effective use.

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

Parameters1/5

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

The description adds no meaning to the 'text' parameter beyond its basic type. Schema description coverage is 0%, and the description does not explain expected input format, length limits, or special character handling.

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?

The description clearly states the action ('Type text') and target ('computer keyboard'), making the core function understandable. However, it does not differentiate this tool from the sibling 'key' tool, which may also involve keyboard input.

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 is provided on when to use this tool versus alternatives like 'key' or scenarios where typing may not be appropriate. The description lacks context for appropriate usage.

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

Discussions

No comments yet. Be the first to start the discussion!

Related MCP Servers

View all MCP Servers

Try in Browser

Your Connectors

Sign in to create a connector for this server.

Resources