Skip to main content
Glama

List service files

list_service_files
Read-onlyIdempotent

List files and directories inside a running VPS server path, paging with offset and nextOffset; use entry versions when writing or uploading files.

Instructions

List one directory page inside a running server (lstat: a symlink is described itself), directories first. Page with offset=nextOffset while nextOffset is non-null; above 100,000 entries the listing is truncated (total null). Each entry's version is the compare-and-swap token for write_service_file and upload_service_file. A slow guest answers 202 with an operation: this tool polls it itself and returns the final answer, or, after waitSeconds, the operationId to continue with get_service_file_operation (never repeat the call). Requires files:read on the API key as an explicit grant (a key whose permission list was left empty does not hold it), read or full access; the hosted connector needs vm:files:read. Availability: Firecracker servers need the updated guest agent (filesUnavailable reason agent_update_required; node_update_required while the host node is not updated yet) and Cloud VPS (KVM) servers need the VDS file-manager switch (reason feature_disabled while it is off); relay any unavailable reason verbatim and never work around it. A server whose 2FA lock is on answers 423.

Input Schema

NameRequiredDescriptionDefault
pathNoAbsolute directory path; default /
sortNo
limitNo
orderNo
filterNoCase-insensitive name substring
offsetNo
orderNoYesTenant-owned service order number, e.g. VP12345
waitSecondsNoHow long this tool waits for a slow guest's operation before returning its operationId (default 30, recursive delete and extract 60)

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv2.3.17

TDQS

A4.3/5.0
Behavior5/5

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

Annotations already declare read-only, idempotent, and non-destructive behavior, but the description adds substantial context beyond them: symlink lstat semantics, truncation above 100,000 entries, version as a compare-and-swap token, 202 polling behavior, required permissions, availability constraints, and the 423 2FA response. It does not contradict any annotation.

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?

The purpose is front-loaded in the first clause, and the dense paragraph packs relevant operational details without obvious filler. It is long, but most of the length is justified by the tool's complexity; structure could still be improved for readability.

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?

With no output schema, the description explains return-relevant details such as nextOffset, total null on truncation, and entry version tokens. It also covers permissions, availability, async operations, and 2FA behavior, though it omits semantics for several parameters.

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 50%, so four parameters lack schema descriptions. The description adds meaning for offset paging, waitSeconds behavior, and version tokens, but leaves sort, limit, and order unexplained in both the schema and the description.

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?

States a specific verb and resource: 'List one directory page inside a running server', with scoping details like lstat handling and directories-first ordering. This is distinguishable from sibling tools such as search_service_files, stat_service_file, and read_service_file.

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?

Provides clear operational context: page with offset=nextOffset while nextOffset is non-null, and continue slow-guest operations with get_service_file_operation rather than repeating the call. It does not explicitly name when to use this versus alternatives like search_service_files, so it stops short of full when/when-not guidance.

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