Skip to main content
Glama
NKSTUD
by NKSTUD

protect_path

Idempotent

Marks a file or folder as protected so MacSweep will never offer or remove it again; use when the user asks to keep an item.

Instructions

Never offer or remove this file or folder (and anything inside it) again. Use when the user says to keep something.

Input Schema

NameRequiredDescriptionDefault
pathYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.0.0

TDQS

A3.9/5.0
Behavior4/5

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

Only idempotentHint is provided, so the description carries most of the burden and does add real substance: it discloses the recursive scope ('and anything inside it') and the persistent suppression of future removal offers ('again'). It does not mention reversibility via unprotect_path, how protection can be inspected (list_protected), or what happens if the path is already protected or nonexistent.

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 short sentences with no filler; the behavioral effect is front-loaded and the usage trigger follows. Nothing could be cut without losing information.

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?

For a simple one-parameter state-changing tool with no output schema, the description covers the effect and trigger but omits the lifecycle context an agent needs: that protection is reversible via unprotect_path and enumerable via list_protected. The omission is tolerable but leaves a gap in an otherwise minimal definition.

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 coverage is 0% for the single 'path' parameter, so the description is the only source of meaning and it does clarify that path may be a file or a folder and that protection applies recursively. However, it gives no information on path format (absolute vs relative, URI vs filesystem path) or error behavior for invalid paths, so it only partially compensates for the coverage gap.

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 conveys a specific effect — the file/folder and everything inside it will never be offered for removal again — which is distinct from siblings like move_to_trash or unprotect_path. It never states the verb 'protect' directly and phrases the effect as an imperative ('Never offer or remove...'), which reads slightly like an instruction to the agent rather than a tool capability, but the meaning is inferable. Sibling differentiation is implicit rather than named.

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?

"Use when the user says to keep something" gives a clear triggering context, which is exactly what the agent needs to select this over move_to_trash. It does not name the inverse operation (unprotect_path) or state when not to use it, leaving the agent to infer the undo path.

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