Skip to main content
Glama

sassy_setup_check_tools

Read-onlyIdempotent

Check external tool and Python package availability, list missing required/optional dependencies with paths and install URLs. Use first when diagnosing setup issues.

Instructions

Read-only scan of external tool availability. Checks six system binaries (nmap, tesseract, adb, scrcpy, plink, chrome) by searching PATH plus known install locations, and three Python packages (pytesseract, playwright, watchdog). For each tool it reports installed true/false, the resolved path, whether it is required, which sassy_* tools use it, and an install URL when missing. Only tesseract is marked required, since OCR/vision tools need it unconditionally. The returned summary lists installed, missing_required, and missing_optional. Takes no parameters and writes nothing. Use this first when diagnosing missing dependencies; when you are ready to install them, use sassy_setup_tools instead.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed4 schema fields changedv1.15.1
    • addedOutput schema / additionalProperties
      Added value: +true
    • removedOutput schema / properties
      Removed value: -{
      -  "result": {
      -    "title": "Result",
      -    "type": "string"
      -  }
      -}
    • removedOutput schema / required
      Removed value: -[
      -  "result"
      -]
    • changedOutput schema / title
      Previous value: -"sassy_setup_check_toolsOutput"New value: +"sassy_setup_check_toolsDictOutput"
  2. First observedv0.1.0

TDQS

A5/5.0
Behavior5/5

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

The annotations already mark the tool read-only, idempotent, and non-destructive, and the description goes further by stating it 'writes nothing' and detailing the exact output fields: installed status, resolved path, required flag, dependent sassy_* tools, and install URL. It also reveals that only tesseract is required, which is behavior not derivable from the annotations alone.

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?

While the description is substantial, every sentence adds essential information: scope, exact checks, output shape, required-tool policy, and routing to the install sibling. The key purpose is front-loaded in the first sentence, and the structure flows naturally from what the tool scans to what it reports to when to use it.

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?

The description is fully self-contained for invocation: it lists exactly what is checked, what is returned, that it takes no parameters, and that it has no side effects. Since an output schema is present, the description is not even required to explain return values, but it does so anyway, making the tool easy to use correctly without additional context.

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?

The tool has zero parameters, and the description explicitly confirms 'Takes no parameters.' With an empty input schema and 100% schema coverage, there is no parameter ambiguity, and the description removes any doubt by stating this directly.

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 names a specific verb and resource: a 'Read-only scan of external tool availability' that checks six system binaries and three Python packages. It clearly distinguishes itself from the installation-focused sibling by stating that the tool only checks and reports, and explicitly references sassy_setup_tools for installation.

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 usage direction: 'Use this first when diagnosing missing dependencies; when you are ready to install them, use sassy_setup_tools instead.' It also explains what the tool does not do ('writes nothing'), giving agents a clear decision boundary between checking and installing.

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

Deploy Server

Other Tools