Skip to main content
Glama

Scan a path

scan_path
Read-onlyIdempotent

Scan a file or directory for prompt injection, hidden text, credential theft, and data exfiltration before installing or running a skill, plugin, hook, or MCP server.

Instructions

Scans one file or directory (a skill folder, plugin, hook script, MCP server source or MCP config) for malicious or risky content, such as prompt injection, hidden text, credential theft and data exfiltration. Useful before a skill, plugin or server is installed, enabled or run. Read-only and offline: nothing is executed, written or sent anywhere.

Input Schema

NameRequiredDescriptionDefault
deepNoAlso walk node_modules, virtualenvs and caches.
pathYesFile or directory to scan. Relative paths resolve against the server working directory; a leading ~ means the home directory.
max_findingsNoLargest number of findings to return, most severe first.
min_severityNoLeave out findings below this severity.low

Output Schema

NameRequiredDescriptionDefault
toolYes
countsYes
targetsYes
versionYes
findingsYes
filesScannedYes
skippedFilesYes
highestSeverityYes
omittedFindingsYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A3.8/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, destructiveHint=false and openWorldHint=false, so the safety bar is low; the description nonetheless reinforces it with 'nothing is executed, written or sent anywhere', which is materially useful for a security-scan tool. It adds nothing about cost, timeouts, scan size limits, or how findings are ordered — that last point is only covered incidentally by the schema.

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, zero padding, and the core purpose leads before the usage advice and the safety guarantee. Every sentence carries distinct information.

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?

An output schema exists, so return-shape explanation is unnecessary, and annotations plus the description together cover scope, safety and defaults. What remains unaddressed is behavioral edge cases — very large directories, remote/URL paths, or how this differs from scanning installed items — which slightly limits completeness.

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 path resolution rules, the deep flag, min_severity enum and max_findings cap are all documented in structured fields; baseline 3 applies. The description only adds meaning for path by listing the artifact types it accepts, not for the three filter/tuning parameters.

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?

Names a specific verb (scans) and resource (one file or directory) and enumerates the scannable artifact types — skill folder, plugin, hook script, MCP server source or config — plus the threat classes detected (prompt injection, hidden text, credential theft, exfiltration). It stops short of distinguishing itself from siblings like scan_text or scan_installed, so an agent must infer that pasted content goes elsewhere.

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?

Gives a clear usage trigger: 'before a skill, plugin or server is installed, enabled or run'. That is real decision context, but there are no exclusions or named alternatives, so the routing versus scan_text/scan_installed is left implicit.

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